Операционная система
Раздел в разработке
Операционная система - это программа. У современной операционной системы, есть масса задач, которые она решает. Попробуем кратко рассказать о них.
Первоначальная идея операционной системы (ОС) - упростить запуск других программ. Первые ОС только этим и занимались: предоставляли интерфейс для запуска других программ в виде командной строки. Пользователь просто вводит название программы, и ОС запускала ее. После завершения программы, управление передавалось обратно ОС, которая снова была готова к запуску следующей команды.
Таким образом любая запущенная программа имела полный доступ к компьютеру. В том числе, она могла изменить память, где хранилась сама ОС. Когда такое происходило, ОС зависала, и это никому не нравилось. Поэтому, в ОС начали внедрять изолированность самой ОС от запускаемых программ. Теперь, запускаемые программы могли работать только с выделенной для них памятью.
Позже, всем вдруг захотелось запускать несколько программ одновременно. И в ОС реализовали многозадачность. При этом нужно понимать, что многозадачность довольно сложная задача: мало того, что эти запущенные программы должны быть изолированны не только по отношению к ОС, но и к друг другу, так еще и к устройствам ввода/вывода, к которым они возможно захотят обращаться одновременно, например к клавиатуре, чтобы считать что ввел пользователь или монитору, чтобы отобразить что-то пользователю. Для разделения доступа в ОС ввели понятие системного вызова, который может разрешать читать или записывать программе на какое-то физическое устройство. Иными словами, запущенная программа, чтобы получить доступ к определенному устройству, должна вызвать определенный системный вызов ОС. И только после того, когда ОС ответит на этот вызов, доступ будет получен.
Надежность - еще одна функции ОС. Ведь если из 10 запущенных программ, в одной закралась ошибка, мы не хотим чтобы весь компьютер из-за этого завис. ОС отлавливает ошибку, обрабатывает ее, и аварийно завершает только проблемную программу.
В добавок к этому, в ОС внедрили многопользовательский режим, чтобы ей могли пользоваться несколько пользователей, у каждого свой набор программ и данных с разными типами доступа.