Эволюция ОС
Первый период (1945 -1955)
Компьютер был изобретен английским математиком Чарльзом Бэбиджем в конце XVIII в.. Его "аналитическая машина" так и не смогла по-настоящему заработать. В середине 40-х были созданы первые ламповые вычислительные устройства. Программирование осуществлялось исключительно на машинном языке. Все задачи организации вычислительного процесса решались вручную с пульта управления. Не было никакого другого системного программного обеспечения, кроме библиотек математических и служебных подпрограмм.
Второй период (1955 - 1965)
Появлением полупроводниковых элементов. Компьютеры второго поколения стали более надежными. Произошло разделение персонала на программистов и операторов. Появились первые алгоритмические языки, компиляторы. Появились первые системы пакетной обработки, которые просто автоматизировали запуск одной программ за другой. Был разработан формализованный язык управления заданиями, с помощью которого программист сообщал системе и оператору, какую работу он хочет выполнить на вычислительной машине.
Третий период (1965 - 1980)
Произошел переход от отдельных полупроводниковых элементов типа транзисторов к интегральным микросхемам. Создание семейств программно-совместимых машин. Важнейшим достижением ОС данного поколения явилась реализация мультипрограммирования - это способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются несколько программ. Пока одна программа выполняет операцию ввода-вывода, процессор не простаивает, а выполняет другую программу. При этом каждая программа загружается в свой участок оперативной памяти. Появился новый тип ОС - системы разделения времени.
|
Четвертый период (1980 - настоящее время)
Появлением больших интегральных схем (БИС). Компьютер стал доступен отдельному человеку, и наступила эра ПК. Использование компьютеров неспециалистами потребовало разработки "дружественного" программного обеспечения. Также в этот период стали бурно развиваться сети персональных компьютеров, работающие под управлением сетевых или распределенных ОС.
ОС для автономного компьютера
ОС компьютера представляет собой комплекс взаимосвязанных программ, который действует как интерфейс между приложениями и пользователями с одной стороны, и аппаратурой с другой. В соответствии с этим определением ОС выполняет две группы функций:
§ Ф-ция расширенной виртуальной машины, с которой удобней работать и которую легче программировать. В результате реальная машина, способная выполнять только небольшой набор элементарных действий, определяемых ее системой команд, превращается в виртуальную машину, выполняющую широкий набор гораздо более мощных функций.
§ Ф-ция механизма, предназначенная для рационального управления ресурсами машины.
К числу основных ресурсов современных выч. систем можно отнести: процессоры, память, наборы данных, диски, принтеры, сетевые устройства и т.д. Управление ресурсами выч. системы с целью наиболее эффективного их использования является назначением ОС. Оно включает в себя мультипрограммирование-распределение ресурсов двумя способами: во времени и в пространстве. Когда ресурс распределяется по времени, различные пользователи и программы используют его по очереди. При пространственном мультипрограммирование каждый клиент получает часть ресурса. Обычно оперативная память распределяется между несколькими рабочими программами так, что они одновременно могут находиться в памяти.
|
Управление процессами
В мультипрограммной ОС одновременно может существовать несколько процессов. Часть процессов порождается по инициативе пользователей и их приложений, такие процессы обычно называют пользовательскими. Другие процессы, называемые системными, инициализируются самой ОС для выполнения своих функций. На протяжении периода существования процесса его выполнение может быть многократно прервано и продолжено. Для того чтобы возобновить выполнение процесса, необходимо восстановить состояние его операционной среды. Состояние операционной среды идентифицируется состоянием регистров и программного счетчика, режимом работы процессора, указателями на открытые файлы, информацией о незавершенных операциях ввода-вывода и т. д. Эта информация называется контекстом прогресса. При смене процесса происходит переключение контекстов. ОС берет на себя также функции синхронизации процессов. Таким образом, подсистема управления процессами планирует выполнение процессов, то есть распределяет процессорное время между несколькими одновременно существующими в системе процессами, занимается созданием и уничтожением процессов, обеспечивает процессы необходимыми системными ресурсами, поддерживает синхронизацию процессов, а также обеспечивает взаимодействие между процессами.
|
Управление памятью
Часть ОС, отвечающая за управление памятью называется менеджером памяти.
Управление памятью включает распределение имеющейся физической памяти между всеми существующими в системе в данный момент процессами, загрузку кодов и данных процессов в отведенные им области памяти, загрузку кодов и данных процессоров в отведенные им области памяти, а также защиту областей памяти каждого процесса. Одним из наиболее популярных способов управления памятью в современных ОС является так называемая виртуальная память. Наличие в ОС механизма виртуальной памяти позволяет программисту писать программу так, как будто в его распоряжении имеется однородная оперативная память большого объема, часто существенно превышающего объем имеющейся физической памяти. В действительности все данные, используемые программой, хранятся на диске и при необходимости частями отображаются в физическую память. Защита памяти — это избиpaтeльнaя способность предохранять выполняемую задачу от записи или чтения памяти, назначенной другой задаче. Функциями ОС по управлению памятью являются отслеживание свободной и занятой памяти; освобождение памяти при завершении процессов; защита памяти; вытеснение процессов из оперативной памяти на диск, когда размеры основной памяти недостаточны для размещения в ней всех процессов, и возвращение их в оперативную память, когда в ней освобождается место, выделение памяти процесса.
5. Управление файлами и внешними устройствами
Все действия, выполняемые пользователем над файлами и каталогами осущ. с помощью ОС. Файловая система ОС выполняет преобразование символьных имен файлов, с которыми работает пользователь в физические адреса данных на диске, организует совместный доступ к файлам, защищает их от несанкционированного доступа. При выполнении своих функций файловая система тесно взаимодействует с подсистемой управления внешними устройствами, которая по запросам файловой системы осуществляет передачу данных между дисками и оперативной памятью. Подсистема управления внешними устройствами, называемая также подсистемой ввода-вывода, исполняет роль интерфейса ко всем устройствам, подключенным к компьютеру. Спектр этих устройств очень обширен.
Защита данных и администрирование
Безопасность данных выч. системы обеспечивается средствами отказоустойчивости ОС, а также средствами защиты от несанкционированного доступа. Процедура логического входа - ОС должна убедиться, что в систему пытается войти пользователь, вход которого разрешен администратором. Функции защиты ОС тесно связаны с функциями администрирования, так как именно администратор определяет права пользователей при их обращении к разным ресурсам системы. Важным средством защиты данных являются функции аудита ОС, заключающиеся в фиксации всех событий, от которых зависит безопасность системы. Поддержка отказоустойчивости реализуется ОС на основе резервирования. Особым случаем обеспечения отказоустойчивости является использование нескольких процессоров, когда система продолжает работу при отказе одного из процессоров, хотя и с меньшей производительностью. Поддержка отказоустойчивости также входит в обязанности системного администратора. В состав ОС обычно входят утилиты, позволяющие администратору выполнять регулярные операции резервного копирования для обеспечения быстрого восстановления важных данных.