Автор работы: Пользователь скрыл имя, 24 Декабря 2012 в 16:47, реферат
Операционная система предоставляет интерфейсы и для выполняющих приложений, и для пользователей. Программы пользователей, да и многие служебные программы запрашивают у операционной системы выполнение тех операций, которые достаточно часто встречаются практически в любой программе. К таким операциям, прежде всего, относятся операции ввода-вывода, запуск или остановка какой-нибудь программы, получение дополнительного блока памяти или его освобождение и многие другие. Подобные операции невыгодно каждый раз программировать заново и непосредственно размещать в виде двоичного кода в теле программы, их удобнее собрать вместе и предоставлять для выполнения по запросу из программ. Это и есть одна из важнейших функций операционных систем.
Ядро в привилегированном режиме
Для надежного управления
ходом выполнения приложений операционная
система должна иметь по отношению
к приложениям определенные привилегии.
Иначе некорректно работающее приложение
может вмешаться в работу ОС и,
например, разрушить часть ее кодов.
Все усилия разработчиков операционной
системы окажутся напрасными, если
их решения воплощены в
Обеспечить привилегии операционной системе невозможно без специальных средств аппаратной поддержки. Аппаратура компьютера должна поддерживать как минимум два режима работы — пользовательский режим (user mode) и привилегированный режим, который также называют режимом ядра (kernel mode), или режимом супервизора (supervisor mode). Подразумевается, что операционная система или некоторые ее части работают в привилегированном режиме, а приложения — в пользовательском режиме.
Так как ядро выполняет все основные функции ОС, то чаще всего именно ядро становится той частью ОС, которая работает в привилегированном режиме . Иногда это свойство — работа в привилегированном режиме — служит основным определением понятия «ядро».
Многослойная структура ОС
Вычислительную систему, работающую под управлением ОС на основе ядра, можно рассматривать как систему, состоящую из трех иерархически расположенных слоев: нижний слой образует аппаратура, промежуточный — ядро, а утилиты, обрабатывающие программы и приложения, составляют верхний слой системы. Слоистую структуру вычислительной системы принято изображать в виде системы концентрических окружностей, иллюстрируя тот факт, что каждый слой может взаимодействовать только со смежными слоями. Действительно, при такой организации ОС приложения не могут непосредственно взаимодействовать с аппаратурой, а только через слой ядра.
Многослойный подход является универсальным и эффективным способом декомпозиции сложных систем любого типа, в том числе и программных. В соответствии с этим подходом система состоит из иерархии слоев. Каждый слой обслуживает вышележащий слой, выполняя для него некоторый набор функций, которые образуют межслойный интерфейс . На основе функций нижележащего слоя следующий (вверх по иерархии) слой строит свои функции — более сложные и более мощные, которые, в свою очередь, оказываются примитивами для создания еще более мощных функций вышележащего слоя. Строгие правила касаются только взаимодействия между слоями системы, а между модулями внутри слоя связи могут быть произвольными. Отдельный модуль может выполнить свою работу либо самостоятельно, либо обратиться к другому модулю своего слоя, либо обратиться за помощью к нижележащему слою через межслойный интерфейс.
Ядро может состоять из следующих слоев:
Микроядерная архитектура
Микроядерная архитектура является альтернативой классическому способу построения операционной системы. Под классической архитектурой в данном случае понимается рассмотренная выше структурная организация ОС, в соответствии с которой все основные функции операционной системы, составляющие многослойное ядро, выполняются в привилегированном режиме. При этом некоторые вспомогательные функции ОС оформляются в виде приложений и выполняются в пользовательском режиме наряду с обычными пользовательскими программами (становясь системными утилитами или обрабатывающими программами).
Суть микроядерной архитектуры состоит в следующем. В привилегированном режиме остается работать только очень небольшая часть ОС, называемая микроядром . Микроядро защищено от остальных частей ОС и приложений. В состав микроядра обычно входят машинно-зависимые модули, а также модули, выполняющие базовые функции ядра по управлению процессами, обработке прерываний, управлению виртуальной памятью, пересылке сообщений и управлению устройствами ввода-вывода, связанные с загрузкой или чтением регистров устройств. Набор функций микроядра обычно соответствует функциям слоя базовых механизмов обычного ядра. Такие функции операционной системы трудно, если не невозможно, выполнить в пространстве пользователя.
Все остальные более высокоуровневые функции ядра оформляются в виде приложений, работающих в пользовательском режиме. Однозначного решения о том, какие из системных функций нужно оставить в привилегированном режиме, а какие перенести в пользовательский, не существует. В общем случае многие менеджеры ресурсов, являющиеся неотъемлемыми частями обычного ядра — файловая система, подсистемы управления виртуальной памятью и процессами, менеджер безопасности и т. п., — становятся «периферийными» модулями, работающими в пользовательском режиме.
Работающие в пользовательском режиме менеджеры ресурсов имеют принципиальные отличия от традиционных утилит и обрабатывающих программ операционной системы, хотя при микроядерной архитектуре все эти программные компоненты также оформлены в виде приложений. Утилиты и обрабатывающие программы вызываются в основном пользователями. Ситуации, когда одному приложению требуется выполнение функции (процедуры) другого приложения, возникают крайне редко. Поэтому в операционных системах с классической архитектурой отсутствует механизм, с помощью которого одно приложение могло бы вызвать функции другого.
Операционные системы,
основанные на концепции микроядра,
в высокой степени
Файловые системы
Система управления файлами является основной в абсолютном большинстве современных операционных систем. Например, операционные системы Unix никак не могут функционировать без файловой системы, ибо понятие файла для них является одним из самых фундаментальных. Все современные операционные системы используют файлы и соответствующее программное обеспечение для работы с ними. Дело в том что, во-первых, через файловую систему связываются по данным многие системные обрабатывающие программы. Во-вторых, с помощью этой системы решаются проблемы централизованного распределения дискового пространства и управления данными. Наконец, пользователи получают более простые способы доступа к своим данным, которые они размещают на устройствах внешней памяти.
Файловая система (ФС) является важной
частью любой операционной системы,
которая отвечает за организацию
хранения и доступа к информации
на каких-либо носителях. Рассмотрим в
качестве примера файловые системы
для наиболее распространенных в
наше время носителей информации
– магнитных дисков. Как известно,
информация на жестком диске хранится
в секторах (обычно 512 байт) и само
устройство может выполнять лишь
команды считать/записать информацию
в определенный сектор на диске. В
отличие от этого файловая система
позволяет пользователю оперировать
с более удобным для него понятием
- файл. Файловая система берет на
себя организацию взаимодействия программ
с файлами, расположенными на дисках.
Для идентификации файлов используются
имена. Современные файловые системы
предоставляют пользователям
Рассмотрим более подробно структуру жесткого диска. Базовой единицей жесткого диска является раздел, создаваемый во время разметки жесткого диска. Каждый раздел содержит один том, обслуживаемый какой-либо файловой системой и имеющий таблицу оглавления файлов - корневой каталог. Некоторые операционные системы поддерживают создание томов, охватывающих несколько разделов. Жесткий диск может содержать до четырех основных разделов. Это ограничение связано с характером организации данных на жестких дисках IBM-совместимых компьютеров. Многие операционные системы позволяют создавать, так называемый, расширенный (extended) раздел, который по аналогии с разделами может разбиваться на несколько логических дисков.
В первом физическом секторе жесткого диска располагается головная запись загрузки и таблица разделов (табл. 1). Головная запись загрузки (master boot record, MBR) - первая часть данных на жестком диске. Она зарезервирована для программы начальной загрузки BIOS (ROM Bootstrap routine), которая при загрузке с жесткого диска считывает и загружает в память первый физический сектор на активном разделе диска, называемый загрузочным сектором (Boot Sector). Каждая запись в таблице разделов (partition table) содержит начальную позицию и размер раздела на жестком диске, а также информацию о том, первый сектор какого раздела содержит загрузочный сектор.
1) Файловая система FAT (File Allocation Table) была разработана Биллом Гейтсом и Марком МакДональдом в 1977 году и первоначально использовалась в операционной системе 86-DOS. Чтобы добиться переносимости программ из операционной системы CP/M в 86-DOS, в ней были сохранены ранее принятые ограничения на имена файлов. В дальнейшем 86-DOS была приобретена Microsoft и стала основой для ОС MS-DOS 1.0, выпущенной в августе 1981 года. FAT была предназначена для работы с гибкими дисками размером менее 1 Мбайта, и вначале не предусматривала поддержки жестких дисков. В настоящее время FAT поддерживает файлы и разделы размеров до 2 Гбайт.
2) Высокопроизводительная
HPFS распределяет пространство на
диске не кластерами как в
FAT, а физическими секторами по
512 байт, что не позволяет ее
использовать на жестких
3) В настоящее время появляются
новые поколения жестких
FAT32 - усовершенствованная версия файловой системы VFAT, поддерживающая жесткие диски объемом до 2 терабайт. Впервые файловая система FAT32 была включена в состав ОС Windows 95 OSR 2. В FAT32 были расширены атрибуты файлов, позволяющие теперь хранить время и дату создания, модификации и последнего доступа к файлу или каталогу.
В данный момент FAT32 поддерживается в следующих ОС: Windows 95 OSR2, Windows 98, Windows ME, Windows 2000 и Windows XP.
4) NTFS (New Technology File System) - наиболее предпочтительная файловая система при работе с ОС Windows NT (Windows 2000 и XP также являются NT системами), поскольку она была специально разработана для данной системы. В состав Windows NT входит утилита convert, осуществляющая конвертирование томов с FAT и HPFS в тома NTFS. В NTFS значительно расширены возможности по управлению доступом к отдельным файлам и каталогам, введено большое число атрибутов, реализована отказоустойчивость, средства динамического сжатия файлов, поддержка требований стандарта POSIX. NTFS позволяет использовать имена файлов длиной до 255 символов, при этом она использует тот же алгоритм для генерации короткого имени, что и VFAT. NTFS обладает возможностью самостоятельного восстановления в случае сбоя ОС или оборудования, так что дисковый том остается доступным, а структура каталогов не нарушается.
МНОГООБРАЗИЕ СОВРЕМЕННЫХ ОПЕРАЦИОННЫХ СИСТЕМ
MS Windows
История развития операционных
систем для персональных компьютеров
началась в далеком 1981 году. И первой
ОС стала MS-DOS (Microsoft Disk Operation System). «ДОС»
поставлялась тогда с новыми компьютерами
от IBM. Несмотря на то, что «ДОС» была выпущена
Microsoft, это не оригинальная разработка
этой компании: до нее существовала ОС
под названием QDOS, созданная компанией
Seattle Computer Products, и Билл Гейтс со товарищи
просто взял и переделал ее. К слову сказать,
другие версии DOS появлялись и позже. Так,
в свое время на Руси была популярна DR-DOS
производства компании Digital Research, называвшаяся
в России «Дурдосом».
Главные недостатки «ДОСа», которые потом
и потребовали разработки новых ОС, —
невозможность работы с графикой, «объемными»
программами и однозадачность. Под DOS было
написано великое множество программ,
но быстрорастущие потребности, а также
конкуренция потребовали новых решений.
Поэтому в конце 80-х годов и появились
Windows.
Первые версии знаменитых «окон» не
произвели большого фурора, несмотря
на то, что в них уже появилась
и многозадачность (хотя и условная:
больше, чем три программы, она
не позволяла запускать
Windows 3.11, несмотря на все его преимущества,
еще не мог называться «продуктом года»,
а вот Windows 95… Девяносто пятый год прошлого
века стал поворотным: «окна» увидели
свет такими, какими мы привыкли их видеть
сейчас. Очевидцы даже утверждают, что
в день выхода новой ОС люди праздновали
свою победу над ПК. С этого момента он
должен был стать «волшебной палочкой»
в руках пользователей. Windows 95 открыл для
пользователя мир игр с шикарной графикой,
мир звуков, мир простоты установки на
ОС новых программ и удобство работы с
новым «железом». Мир, от которого сейчас
уже сложно отказаться (каким бы он ни
был «шатким»).
Через три года этот мир модернизировался
и стал еще проще, удобнее и приятнее: появилась
Windows 98, которая практически ничем не отличалась
от предшественницы. Все то, что предлагала
пользователям Windows 98, они могли получить
и в Windows 95, просто доустановив кучу программ.
Фактически Windows 98 в наше время звалась
бы Service Pack’ом для Win95.