Файл: Функции операционных систем персональных компьютеров(ФУНКЦИИ ОПЕРАЦИОННЫХ СИСТЕМ).pdf
Добавлен: 17.05.2023
Просмотров: 116
Скачиваний: 3
СОДЕРЖАНИЕ
1. ФУНКЦИИ ОПЕРАЦИОННЫХ СИСТЕМ
1.1 Особенности алгоритмов управления ресурсами
1.2 Особенности аппаратных платформ
1.3 Особенности областей использования
1.4 Особенности методов построения
1.5 СИСТЕМЫ ПАКЕТНОЙ ОБРАБОТКИ
1.6 СИСТЕМЫ РАЗДЕЛЕНИЯ ВРЕМЕНИ
2 СВОЙСТВА ОПЕРАЦИОННЫХ СИСТЕМ
2.2 Надежность и устойчивость операционных систем
11
платформы, легко переносимые на разные типы компьютеров (UNIX). В этих операционных системах аппаратно-зависимые места локализованы и при переносе системы переписываются. С помощью языка программирования высокого уровня реализуется аппаратно-независимая часть как правило, на языке Си, и перекомпилируется при переходе на другую платформу.
В настоящий время в райне 90% компьютеров используются с операционной системой Windows. Ориентировочно широкий класс операционной системы используется на серверах. К такому классу операционных систем и приходится семейство UNIX, разработки фирмы Microsoft (MS DOS и Windows), корпорация IBM и сетевые продукты Novell.
UNIX — многозадачная операционная система и многопользовательская собирает в себе определённо сильные средства защиты файлов и программ различных пользователей. Машинонезависимой приходится и операционная система UNIX, что делает операционную систему высоко-мобильной и легкой для переносимости прикладных программ на компьютеры разной архитектуры. Особенно важным в операционных системах семействе UNIX являются ее разномодульность и обширность в набор программ сервиса, которые дают возможность создавать приятную на вид операционную обстановку для пользователей-программистов (т. е. система в особенности эффективна для специалистов — прикладных программистов).
Версии общие для UNIX могут быть разные и их характерными чертами являются: многопользовательский режим который защищается данными от несанкционированного доступа; в режиме разделения времени - реализация многозадачной обработки; переносимость системы создаваемая путем написания основной части на языке Си.
Недостаток UNIX — большая и избыточная для небольших однопользовательских систем на базе персональных компьютеров чаще всего - ресурсоемкость.
Вообщем в целом операционные системы семейства UNIX ориентировочно направлены прежде всего на большие локальные (корпоративные) и глобальные сети, где объединяется работа тысячей пользователей. В сети интернет большое распространение получила операционная система UNIX и ее версия LINUX, где важнейшее значение имеет машинонезависимость операционной системы.
операционная система MS DOS широко использовалась для персональных компьютеров, построенных на базе процессоров Intel 8088-80486.
В наше время MS DOS практически не применяется для управления персональными компьютерами. Однако она не потеряла ступень актуальности, так что ее не следует считать полностью исчерпавшей свои возможности. Низкие требования к аппаратным ресурсам дают DOS возможность оставаться перспективной для практического использования. Так, в 1997 г. компания Sashega адаптировалась и начала свои работы по DR DOS (аналог MS DOS) к рынку встроенных операционных систем мелких высокоточных устройств, которые присоединялись к Интернету и интернет-
12
сетям. К этим устройствам относятся: факсы, кассовые аппараты, персональные цифровые ассистенты, электронные записные книжки и др.
Операционные системы Windows — это семейство операционных систем, включающих: Windows 3.1, Windows for Workgroups 3.11, Windows 9X, Windows NT, Windows 2000, Windows ME, Windows ХР, Windows Vista и т.д. (первые две обычно называют операционными оболочками, поскольку операционная система DOS для них устанавливалась отдельно). Windows 95 характеризуется простотой инсталляции, слабыми уровнями защиты данных и малой устойчивостью к сбоям приложений. Windows 95 обладает интуитивно понятным интерфейсом, поддерживает технологию plug-and-play,а также содержит встроенные внутри средства для работы в сети.
Windows 98 является развитым прототипом Windows 95. Эта версия тесно связана и интегрирована с Web-браузером Internet Explorer и имеет в наличие большое количество драйверов к старым и новым устройствам. Для пользователей удобны: упрощенный процесс инсталляции операционной системе, по сравнению NT низкие требования к мощности процессора, минимальные требования к дисковому пространству и оперативной памяти.
Ещё одна из разновидностей Windows это операционная система Windows СЕ. Эта линия операционных систем предназначена для использования только на портативных компьютерах. Windows СЕ представляет собой 32-разрядную объектно-ориентированную многозадачную операционную систему, имеет в наличии встроенные функции энергосбережения. Версия Windows СЕ 3.0 (2000) по своим возможностям уже близко подходит к системам реального времени. В перепрограммируемое ПЗУ портативных компьютеров записана основная часть этой компактной операционной системы.
Windows 2000 или Windows NT 5.0 — полностью 32-разрядная операционная система с многозадачной приоритетностью, улучшена также реализация работы с памятью и изначально эта версия спроектировалась со средствами обеспечения надежности защиты и управления. Windows 2000 выпускается в четырех вариантах: Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server и Windows 2000 DataCenter Server. Эти версии отличаются более высокой степенью поддержки аппаратного обеспечения и болеее высоким количеством входящих в поставку служб и программ.
Операционная система OS/2 (Operatingsystem/2) создана быть однопользовательской многозадачной ОС, односторонне (MS DOS —> OS/2) программно совместимой с MS DOS и для работы предназначена с МП 80386 и выше (ПК IBM PC и PS/2). OS/2 умеет одновременно выполнять до 16 программ (у каждой из которых есть свой сегмент памяти в которой 1/16 программ и находится), среди них также есть программа, подготовленная для MS DOS.
Особенностями OS/2 присутствует наличие многооконного пользовательского интерфейса; наличие программных интерфейсов для работы систем баз данных; наличие эффективных программных
13
интерфейсов, которые нужны для работы в локальных вычислительных сетях. Недостатки OS/2 заключаются в первую очередь в сравнительно малый объем программных приложений, наработавшиеся к настоящему времени.
2.3 Гибкость и расширяемость
Расширяемость. За несколько лет, аппаратная часть компьютера довольно таки быстро устаревает, но полезная жизнь операционных систем может измеряться десятилетиями. Таким примером может служить операционная система UNIX. Потому со временем операционные системы постоянно эволюционно изменяются, и эти изменения более значимы, чем те изменения которые находятся в аппаратных средств. Они в операционной системе представляют собой приобретение ею новых свойств. Например, поддержка новых устройств, таких как CD-ROM, возможность связи с сетями нового типа, поддержка многообещающих технологий, таких как графический интерфейс пользователя или объектно ориентированное программное окружение, использование более чем одного процессора. Главной целью разработки является - сохранение целостности (без повреждений) кода, какие бы изменения ни вносились в операционной системе.
За счет модульной структуры операционной системы может расширяться достигаемость модуля, где все программы выстраиваются из набора специальных отдельных модулей, которые могут взаимодействовать исключительно через функциональный интерфейс. В операционной системе модульным путем могут быть добавлены новые компоненты, и таким образом ими выполняется работа, используя интерфейсы, которые поддерживаются существующими компонентами.
Улучшаемость расширяемости системы используется объектами для представления ресурсов системы. Объекты — это такие типы данных абстрактности, которые могут производиться только теми действиями, которые установлены и предусмотрены специальным набором объектных функций. Объекты умеют управлять системными ресурсами единообразно. Целостность существующих объектов и оставление существующего кода без изменений приводится добавлением новых объектов.
Множество прекрасных возможностей для расширения предоставляет подход к структурированию операционных систем по типу «клиент—сервер» с учётом использования микроядерной технологии. И из-за этого операционная система строится как программа управляемая привилегированной совокупностью и набора непривилегированных услуг-серверов. В операционной системе основная часть может оставаться без изменений, в то время как могут быть добавлены улучшены старые или новые серверы.
Средства вызова удаленных процедур (RPC) тоже дают возможность
14
увеличить расширяемость функциональных возможностей операционных систем. Новые программные процедуры имеют возможность добавляться в любую машину сети и незамедлительно перейти в распоряжение прикладных программ на других машинах сети.
Некоторые операционные системы поддерживают загружаемые драйверы, которые могут быть добавлены в систему во время ее работы. Устройства и сети, а также новые файловые системы, поддерживаются путем написания драйвера устройства, транспортный драйвер или драйвера файловой системы и загрузки его в систему.
Переносимость.
Расширяемостью, как и переносимость тесно связано с требованием переносимости кода. Расширяемость позволяет улучшать операционную систему, тогда когда возможность переносимости дает перемещать всю систему на машину, базирующуюся на аппаратной платформе или другом процессоре, делая при этом по возможности небольшие изменения в коде. Операционные системы часто существуют или как переносимые, или как непереносимые, переносимость — это не бинарное состояние. И тут встаёт вопрос о том, не в том, что система может быть перенесена, а в том, насколько и как легко можно это сделать. Написание переносимой операционной системы аналогично написанию любого переносимого кода — поэтому здесь надо следовать некоторым правилам.
Во-первых, существенная часть кода всегда должна быть написана на языке, на котором написаны все машинах, куда мы захотим перенести систему. Следовательно это значит, что код написанный на языках высокого уровня, обязательно должен быть предпочтительно стандартизованным, например на языке С. Программа, которую написали на языке ассемблере, не может быть переносимой, в случае только когда мы не собираемся переносить ее на машину, которая обладает командной совместимостью с вашей.
Во-вторых, нужно подчеркнуть, в какое физическое окружение должна быть перенесена программа. Всякая разная аппаратура требует различных решений при создании операционной системы. Например, операционная система, которая построенная на 32-битовых адресах, никак не будет перенесена на машину с 16-битовыми адресами (разве что с большими затруднениями).
В-третьих, нужно минимизировать или, если есть вариант, исключить такие части кода, которые напрямую взаимодействуют с аппаратными средствами. Аппаратурная зависимость может содержать в себе много форм. Некоторые очевидные формы зависимости включают в себя прямое манипулирование регистрами и другими аппаратными средствами.
В-четвертых, если в аппаратно-зависимом коде не может быть полностью исключения, то код будет изолирован в парочке хорошо локализуемых модулях. Аппаратно зависимый код не распределяется по всей системе, то-есть, можно спрятать часть аппаратно зависимой структуры в тип
15
программно задаваемых данных абстрактности. Остальные модули системы будут работать с этими данными, а не с аппаратурой, используя набор некоторых функций. Когда операционная система переносится, то изменяются естественно только эти данные и функции, которые ими манипулируют.
Для легкого переноса операционной системы при ее разработке должны быть соблюдены различные требования.
Переносимый язык высокого уровня. Большинство переносимых операционных систем должны быть написаны на языке С (стандарт ANSI X3.159-1989). Разработчики выбирают С потому, что он стандартизован, и потому, что С-компиляторы очень широко доступны. Ассемблер используется только для тех частей системы, которые непосредственно взаимодействованы с аппаратурой (например, обработчик прерываний), или для частей, которые требуют максимальной скорости (как-бы, целочисленная арифметика повышенной точности). Но обязательно непереносимый код должен быть хорошо изолирован внутри тех компонентов, где он используется.
Изоляция процессора. Некоторые низкоуровневые части операционных систем должны иметь доступ к процессорно зависимым структурам данных и регистрам. Однако код, который делает это, должен содержаться в небольших модулях, которые могут быть заменены аналогичными модулями для других процессоров.
Изоляция платформы. Зависимость от платформы заключается в различиях между рабочими станциями разных производителей, построенными на одном и том же процессоре (например, MIPS R4000). Должен быть введен программный уровень, абстрагирующий аппаратуру (КЭШи, контроллеры прерываний ввода-вывода и т.п.) вместе со слоем низкоуровневых программ таким образом, чтобы высокоуровневый код не нуждался в изменении при переносе с одной платформы на другую.
Расширяемость.
В отличие от аппаратных средств компьютера полезная жизнь операционных систем измеряется десятками лет. Примером может служить ОС операционная система UNIX, да и MS-DOS. Операционные системы изменяются со временем, как правило, за счет приобретения новых свойств, например, поддержки новых типов внешних устройств или новых сетевых технологий. Если программный код модулей операционных систем написан таким образом, что дополнения и изменения могут вноситься без нарушения целостности системы, то такую операционную систему называют расширяемой. Операционная система может быть расширяемой, если при ее создании руководствовались принципами модульности, функциональной избыточности, функциональной избирательности и параметрической универсальности.