First-Come, First-Served (FCFS)




Вопросы и задания

1. Понятие и функции ОС. Типы ОС.

Под операционной системой обычно понимают комплекс управляющих и обрабатывающих программ, который, с одной стороны, выступает как интерфейс между аппаратурой компьютера и пользователем, а другое предназначение для более эффективного пользования ресурсов вычислительной системы и организации надёжных вычислений.

Любой из компонентов прикладного программного обеспечения обязательно работает под управлением операционных систем. На схеме отображена обобщённая процедура программного обеспечения.

Прикладные Программы  
  Утилиты  
Операционная система  
Аппаратное обеспечение компьютера
       

Видно, что не один из компонентов программного обеспечения, за исключением самой операционной системы, не имеет непосредственного доступа к аппаратуре компьютера. Даже пользователь взаимодействует со своими программами через интерфейс. Любые их команды, прежде чем попасть в прикладные программы, проходят через операционные системы, основными функциями, которые выполняются операционной системой, являются:

1) приём от пользователя заданий или команд, формулированных на соответствующем языке и их обработка;

2) приём и исполнение программы запроса на запуск/приостановку других программ;

3) загрузка в оперативную память, подлежащие исполнению, программы;

4) инициализация программ (передача ей управления), в результате чего процессор использует программу;

5) идентификация программ;

6) обеспечение работы системы управления файлами базы данных, что позволяет резко увеличить эффективность программного обеспечения;

7) обеспечение режима мультипрограммирования, т.е. выполнение двух или более программ на одном процессоре, создающая видимость их одновременного исполнения;

8) обеспечение функции по организации и управления всеми операциями ввода и вывода;

9) удовлетворение жёстким ограничениям на время в режиме реального времени;

10) распределение памяти:

а) организация виртуальной памяти;

б) в большинстве современных систем.

11) планирование и диспетчеризация в соответствии с заданием;

12) организация м-ма обмена сообщениями и данными между выполняющимися программами;

13) защита одной программы от влияния других программ, обеспечение сохранение данных;

14) предоставление услуг на случай частичного сбоя системы;

15) обеспечение работы системы программ, с помощью которых пользователи готовят свои программы.

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

Есть простейшие операционные системы, которые могут работать и без файловых систем или только с одной стороны из файловых систем. Любая система управления файлами разработана для работы конкретной операционной системы и конкретной файловой системы.

Например, известная файловая система FAT.

File Allocation Table

Имеет множество реализации как система управления файлами, например, FAT 16 под систему MS-DOS или Super FAT для OS/2 или FAT для Windows.

Для работы с файлами, организованные в соответствии с некоторыми файловыми системами для каждой операционной системы должна быть организована соответствующая система управления файлами. Она будет работать только в той операционной системе, для которой она разработана. Для удобства пользования с операционной системой может использоваться дополнительные интерфейсные оболочки. Их основное назначение, либо расширить возможность операционной системы, либо изменить встроенные в систему возможности. Классическим примером интерфейсных оболочек можно назвать:

1) X Windows в системах семейства Unix;

2) KDE – K Desktop Environment;

3) PM Shell;

4) Object Desktop.

Существуют различные варианты интерфейса для семейства операционной системы Windows, которые заменяют Explover, в файле system.ini.

В операционной системе заменяемой является только интерфейсная оболочка. Операционная среда определяется программными интерфейсами.

Application Program Interface

API – интерфейс прикладного программирования, включает в себя управление процессами, памятью и вводом/выводом.

Ряд операционных систем может выполнять ряд программ, созданных для выполнения в других операционных системах. Соответствующая среда организуется в рамках данной машины. Аналогично, в Linux можно создать условия для выполнения программ, написанных для Windows.

Под утилитами понимают специальные системы программирования, с помощью которых можно обслужить операционную систему, выполнять обработку данных, осуществляющих оптимизацию данных на носителе и производить работы по обслуживанию операционной системы.

К утилитам относится программа разбиения накопителя на магнитных дисках на разделы и программу форматирования, программу переноса основных системных файлов самой операционной системой. Утилиты могут работать только в соответствующей операционной системе.

 

ПОНЯТИЕ ОПЕРАЦИОННОЙ СРЕДЫ.

Операционная система выполняет функции управления вычислительными процессами в вычислительной системе, распределяет ресурсы вычислительной системы между различными вычислительными процессами и образует программную среду, в которой выполняются прикладные программы пользователя. Такая среда называется операционной.

Любая программа имеет дело с некоторыми исходными данными, которые она обрабатывает и порождает некоторые выходные данные, т.е. результаты вычислений. В абсолютном большинстве случаев исходные данные попадают в оперативную память внешних (периферийных) устройств.

Результаты вычислений также выводятся на внешние устройства. Программирование операций ввода/вывода является наиболее сложной задачей. Именно поэтому развитие операционной системы пошло по пути выделения наиболее часто встречающихся операций и создании для них соответствующих модулей, которые можно в дальнейшем использовать во вновь создаваемых программах. //В конечном итоге возникла ситуация, когда при создании двоичных машинных программ …//

Программисты могут вообще не знать многих деталей управления ресурсами вычислительной системы, а должны обращаться к некоторой программной подсистеме с соответствующими выводами и получить необходимые функции сервиса. Эта программная подсистема и есть операционная система, а набор её функций сервиса и привело обращение к ней и образует базовое понятие, которое называется операционной средой, т.е. термин операционная среда означает необходимые интерфейсные программы пользователя для обращения к операционной системе с целью получить определённый сервис. Параллельное существование терминов “операционная система” и “операционная среда” вызвано тем, что операционная система может поддержать несколько операционных сред. Например, операционная система OS/2 Warp может выполнять следующие программы:

1)так называемые нативные (Native) программы, созданные с учётом 32-разрядного операционного интерфейса;

2)16-битные программы, созданные для OS/2 первого поколения;

3)16-битные программы, разработанные для MS-DOS PS и DOS.

4)16-битовые программы для операционной среды Windows.

5)Сама операционная оболочка Windows 3.X и уже в ней, созданные для неё, программы.

 

ПРЕДНАЗНАЧЕНИЕ И ФУНКЦИИ ОПЕРАЦИОННОЙ СИСТЕМЫ.

Операционная система – это программа, контролирующая работу пользовательской программы и систем приложений и исполняемая роль интерфейса между приложениями и аппаратным обеспечением компьютера. Её предназначения можно разделить на три основные составляющие:

1) удобство: операционная система делает исполнение компьютера простым и удобным;

2) эффективность: операционная система позволяет эффективно использовать ресурсы компьютерной системы;

3) возможность развития: операционная система должна допускать разработку тестирования новых приложений и системных функций без нарушения нормального функционирования вычислительной системы.

 

ОПЕРАЦИОННАЯ СИСТЕМА КАК ИНТЕРФЕЙС МЕЖДУ ПОЛЬЗОВАТЕЛЕМ И КОМПЬЮТЕРОМ.

Пользователь, как правило, не интересуется деталями устройства аппаратного обеспечения компьютера, он видится ему как набор приложений. Приложение можно написать на каком-то из языков программирования. Чтобы упростить эту задачу имеется набор системных программ, некоторые из которых называют утилитами, с их помощью реализуется часто исполнение Функции, которые помогают при создании пользовательских программ в работе с файлами и управление устройствами ввода/вывода. Программист использует эти средства при разработке этих программ, а приложения во время выполнения обращаются к утилитам для выполнения определённых функций. Наиболее важной из системных программ являются операционные системы, которые скрывает от программиста детали аппаратного обеспечения и предоставляет удобный интерфейс для исполнения системы операционной среды. Может включать несколько интерфейсов:

1) пользовательский;

2) программный

 

ИНТЕРФЕЙС ТИПА Midnight Commander.

Так и графические интерфейсы (X Windows). В нём могут быть различные менеджеры окон (KDE Grome).

Что касается программных интерфейсов, то операционная система Windows программы может обращаться как операционная система за соответствующими сервисами и функциями, так и к графической подсистеме. С точки зрения архитектуры процессора, вторая программа, созданная для работы в Linux использует те же команды и форматы данных, что и программа, созданная для работы в среде Windows. Однако в первом случае имеет место обращение к операционной среде, во втором – к другой. Таким образом, операционная среда – это то системное программное обеспечение, в котором могут выполняться программы, созданные по правилам работы этой среды.

Типичные операционные системы предоставляют следующие сервисы:

1) разработка программ. Операционная система предоставляет программисту разнообразные инструменты и сервисы, например, редакторы и отладчики. Эти сервисы, реализованные в виде программных утилит, которые поддерживают операционные системы, хотя и не входят в его ядро, такие программы называют инструментами разработки приложений;

2) исполнение программ. Для запуска программы требуется выполнить ряд действий. Следует загрузить в основную память команды и данные, инициализировать устройства. Операционная система выполняет рутинную работу;

3) доступ к устройствам ввода/вывода. Для управления работой каждым устройством ввода/вывода нужен свой набор команд или контролируемый сигнал. Операционная система предоставляет пользователю единообразный интерфейс, который вскрывает все эти детали и обеспечивает программисту доступ к устройствам ввода/вывода с помощью простых команд чтения и записи;

4) контролируем доступ к файлам. При работе с файлами, управление его стороны операционной системы предназначено не только понимание природы устройств ввода/вывода и знание структур данных записанные в файлах. Многопользовательские операционные системы, кроме того, обеспечивают работу механизмов защиты при обращении к файлам;

5) системы доступа. Операционная система управляет доступом к общедоступной вычислительной системе в целом, а также к отдельным системным ресурсам. Она должна обеспечить защиту ресурсов и данных от несанкционированного использования, также разрешать конфликтные ситуации;

6) обнаружение ошибок и их обработка. При работе компьютерной системы происходят различные сбои, к их числу относятся внутренние и внешние ошибки, возникшие в аппаратном обеспечении, например, ошибки памяти, отказ или сбой устройств, возможны и программные ошибки: арифметическое переполнение, попытка обратиться к ячейке памяти, доступ к которым запущен и невозможность выполнения запроса приложения. В каждом из этих случаев операционная система должна выполнить действие, минимизирующее влияние ошибки на работу приложения. Реакция операционной системы на ошибку может быть различной: от простого сообщения об ошибке, до аварийной остановки программы;

7) учёт использования ресурсов. Хорошая операционная система должна иметь средства учёта использования различных ресурсов и отображение параметров производителя. Эта информация крайне важна для дальнейшего улучшения и настройки система, для повышения производительности.

 

ОПЕРАЦИОННАЯ СИСТЕМА КАК ДИСПЕТЧЕР РЕСУРСОВ.

Компьютер представляет собой набор ресурсов, поддерживающих выполнение задач, накопление, хранение, перемещение и обработки данных, также контролирует работу этих и других функций. Именно операционная система управляет ресурсами компьютера и контролирует его основные функции. Однако это управление имеет следующие особенности:

1) функции операционной системе работают так же, как и всё остальное программное обеспечение, т.е. они реализуются в виде отдельных программ или набора программ, исполняющихся процессов;

2) операционная система должна передавать управление другими процессами и ожидать, когда процессор снова позволит ей выполнить свои обязанности.

Операционная система – это, по сущности, набор компьютерных программ, как и любая другая программа, она отдаёт процессору команды. Ключевым отличием является назначение этой программы.

Операционная система //способна//: как использовать другие системные ресурсы, и как распределять время при использовании других программ, но для этого процессор должен приостановить работу с ней и перейти к выполнению других программ.

Таким образом, операционная система уступает управление процессору, чтобы он смог выполнить некоторую полезную работу, а затем возобновляет контроль ровно на столько, чтобы подготовить процессор к следующей части работы.

Часть операционной системы находится в оперативной памяти (основная, базовая). В эту часть входят ядро (Kernel), содержащее основную часть наиболее часто используемых функций, там же находятся и некоторые другие компоненты операционной системы, использующиеся в данный момент времени.

Остальная часть содержит другие программы и данные пользователя. Размещение этих данных в оперативной памяти управляется совместно операционной системой и аппаратной частью процессора, предназначенной для управления памятью. Операционная система принимает решение, когда исполняющая программа может испортить нужные ей устройства ввода/вывода и управляет доступом к файлам.

Процессор также является ресурсом, которому операционная система должна определить, сколько времени он должен уделить исполнению той или иной пользовательской программы. Многопроцессорные системы: решение должно быть принято по каждому процессу.

 

ВОЗМОЖНОСТИ РАЗВИТИЯ ОПЕРАЦИОННОЙ СИСТЕМЫ.

Большинство операционных систем постоянно развиваются. Происходит это в силу следующих причин:

а ) обновление и возникновение новых видов аппаратного обеспечения;

б) новые сервисы. В операционной системе могут быть добавлены новые инструменты для контроля и оценки производительности, чтобы поддержать высокую эффективность работы, с имеющимся инструментарием пользователя;

в) исправление. В каждой операционной системе есть ошибки. Время от времени они обнаруживаются и исправляются. Необходимость регулярного изменения операционных систем, накладываются определённые ограничения на устройство. Очевидно, что эти системы должны иметь модульную конструкцию, чётко определённую взаимодействием модулей. Для больших программ важную роль играет хорошее и полное документирование.

2. Классификация ОС.

Классификация ОС

Развитие компьютеров привело к развитию ОС. Сейчас насчитывается более 100 ОС.

По назначению ОС принято делить на семь уровней.

1. Мэйнфреймы (mainframe)

У них отличаются от ПК возможности I/O. Обычно мэйнфреймы содержат тысячи дисков и терабайты ОЗУ. Они используются в виде мощных web-серверов, серверов для крупномасштабных коммерческих сайтов и серверов для транзакций в бизнесе. ОС для мэйнфреймов ориентированы на обработку множества одновременных заданий, большинству из которых требуется огромное количество операций I/O. Обычно они предполагают три вида обслуживания:

1) пакетную обработку. Система выполняет стандартные задания без присутствия пользователей. В пакетном режиме обрабатываются иски страховых компаний и составляются отчеты о продаже в магазине;

2) обработку транзакций (групповые операции: обработка и запись данных). Система обработки транзакций управляет очень большим количеством маленьких запросов (например, контролирует процесс работы в банке, бронирует авиабилеты). Каждый отдельный запрос невелик, но система должна отвечать на тысячи запросов в секунду;

3) разделение времени. Системы, работающие в режиме разделения времени, позволяют множеству удаленных пользователей выполнять свои задания на одной машине, например, работать с большой БД. Все эти функции тесно связаны между собой и часто ОС мэйнфрейма выполняет их все. Примером ОС для мэйнфрейма является OS/390 (от IBM).

2. Серверные (сетевые) ОС

Работают на серверах, которые представляют собой или очень большие ПК, или рабочие станции, или даже мэйнфреймы. Они одновременно обслуживают множество пользователей и позволяют им делить программные и аппаратные ресурсы. Серверы представляют возможность работать с печатающими устройствами, файлами и Internet. Internet-провайдеры обычно запускают в работу несколько серверов, чтобы поддерживать одновременный доступ к сети множества клиентов. На серверах хранятся страницы web-сайтов и обрабатываются входные запросы. Типичные серверные ОС: Windows 2000 и Unix. В этих целях в настоящее время стала использоваться и ОС Linux.

3. Многопроцессорные ОС (кластеры)

Наиболее часто применяемый способ увеличения мощности компьютера заключается в соединении ЦП в одну систему. В зависимости от вида соединения ЦП и разделения работы такие системы называются параллельными компьютерами, мультикомпьютерами или многопроцессорными системами. Для них требуются специальные ОС, но, как правило, такие ОС представляют собой варианты серверных ОС со специальными возможностями связи.

4. ОС для ПК

Работа этих ОС заключается в представлении удобного интерфейса для одного пользователя. Такие ОС широко используются для работы с текстом, электронными таблицами и доступа к Internet. Яркие примеры: Windows 98, 2000, MacOS, Linux.

5. ОС РВ

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

6. Встроенные ОС

Карманный компьютер, или PDA (Personal Digital Assistant), - маленький компьютер, помещающийся в кармане брюк и выполняющий некоторые функции (записная книжка, блокнот). Примеры ОС: PalmOS, Windows CE (Consumer Electronics - бытовая техника).

7. ОС для Smart-карт (smart-cards - разумные карты)

Самые маленькие ОС работают на Smart-картах, представляющих собой устройство с ЦП. На такие ОС накладываются крайне жесткие ограничения по мощности ЦП и памяти. Некоторые из них могут управлять только одной операцией, но другие ОС на тех же самых Smart-картах выполняют сложные функции. Некоторые ОС являются Java-ориентированными, т.е. ПЗУ содержит интерпретатор виртуальной машины Java (ROM - Read Only Memory). Апплеты Java загружаются на карту и выполняются интерпретатором JVM (Java Virtual Machine). Некоторые из этих карт могут одновременно управлять несколькими Java-апплетами, что приведет к многозадачности и необходимости планирования. Также возникает необходимость в защите. Эти задачи обычно выполняет крайне примитивная ОС.

ОС могут различаться особенностями реализаций внутренних алгоритмов управления основными ресурсами компьютера (процессорами, устройствами, памятью), особенностями использованных методов проектирования, типами аппаратных платформ, областями использования и многими другими свойствами.

По назначению

1) Системы общего назначения.

Подразумевает ОС, предназначенные для решения широкого круга задач, включая запуск различных приложений, разработку и отладку программ, работу с сетью и мультимедиа.

2) Системы реального времени.

Предназначены для работы в контуре управления объектами. Этот важный класс систем предназначен для работы в контуре управления объектами (такими, как летательные аппараты, технологические установки, автомобили, сложная бытовая техника и т.п.). Из такого назначения вытекают жесткие требования к надежности и эффективности системы. Должно быть обеспечено точное планирование действий системы во времени (управляющие сигналы должны выдаваться в заданные моменты времени, а не просто «по возможности быстро»). Особый подкласс составляют системы, встроенные в оборудование. Такие системы годами могут выполнять фиксированный набор программ, не требуя вмешательства человека-оператора на более глубоком уровне, чем нажатие кнопки «Вкл.».

3) Прочие специализированные системы.

Это различные ОС, ориентированные, прежде всего на эффективное решение определенного класса, с большим или меньшим ущербом для прочих задач

По характеру взаимодействия с пользователем

1) Пакетные ОС, обрабатывающие заранее подготовленные задания

От программиста требовалось собрать пакет перфокарт, содержащий его программу, данные к ней, а также управляющие перфокарты. Эти карты на специально разработанном языке управления заданиями (JCL, Job Control Language) объясняли операционной системе, чье это задание, что нужно сделать с программой, что предпринять в случае успешной трансляции, что – при наличии ошибок (например, перейти к другой программе), откуда взять исходные данные (например, с такого-то цилиндра магнитного диска). Кроме того, там могли быть даже указания на то, сколько метров бумаги можно выделить на распечатку и какое максимальное время может занять работа программы.

Обойтись без столь подробных инструкций было нельзя, потому что программист не присутствовал при запуске задания и не мог вмешаться лично.

Подготовленный пакет передавался, вместе с другими подобными пакетами, оператору ЭВМ, перед которым стояли две основные задачи: чтобы в устройстве ввода не переводились пакеты заданий и чтобы в принтере не кончилась бумага. Когда процессор заканчивал обработку задания и печать его результатов, он вводил следующий пакет и приступал к его обработке. Так достигалась основная цель пакетного режима – исключить простои процессора из-за нерасторопности людей.

Такая организация работы, когда в памяти находятся несколько программ и система в определенные моменты переключает выполнение с одной программы на другую, была названа мультипрограммированием.

(Наиболее развитая пакетная ОС с мультипрограммированием - ОС/360)

2) Диалоговые ОС, выполняющие задания пользователя в интерактивном режиме. Данные операционные системы получили широкое распространение в персональных ЭВМ. Эти системы обеспечивают удобную форму диалога с пользователем через дисплей при вводе и выполнении команд. Для выполнения часто используемых последовательностей команд, т. е. заданий, диалоговая операционная система предоставляет возможность пакетной обработки. Под управлением диалоговой ОС ЭВМ обычно функционирует в однопрограммном режиме.

- ОС с графическим интерфейсом

- Встроенные ОС, не взаимодействующие с пользователем. Встроенная операционная система - простая операционная система, устанавливаемая в принтерах, в кассовых аппаратах и других внешних устройствах. Встроенная ОС состоит из микроядра и функциональных блоков, обеспечивающих подключение в сеть внешнего устройства.

По числу одновременного выполнения задач

1) Однозадачные ОС.

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

Наиболее популярной ОС для ранних восьмиразрядных ПК была система CP/M известной тогда фирмы Digital Research, однако с появлением в начале 80-х знаменитой машины IBM PC лидерство было прочно перехвачено системой MS-DOS фирмы Microsoft.

2) Многозадачные ОС.

Они обеспечивают параллельное выполнение некоторых пользовательских процессов. Реализация многозадачности требует значительного усложнения алгоритмов и структур данных, используемых в системе. Быстрое развитие технологии привело к тому, что к концу 80-х годов ПК оказались в состоянии решать значительно более сложные и трудоемкие задачи, чем раньше. Стала реальной такая вещь, как многозадачная ОС для ПК. На смену ОС, которые выполняли текстовые команды, вводимые пользователем с клавиатуры, пришли системы, в которых взаимодействие с пользователем основано на использовании GUI (Graphical User Interface, графический интерфейс пользователя).

Значительная часть ПК работает в составе локальных вычислительных сетей. Это привело к тому, что вопросы защиты данных пользователя вновь приобрели первостепенное значение.

По числу одновременных пользователей

1) Однопользовательские ОС. Однопользовательские ОС бывают двух видов:

a Однопользовательские однозадачные – системы предназначены для управления компьютером таким образом, чтобы в любой заданный момент времени один пользователь мог эффективно выполнять одну задачу либо действие. Хорошим примером однопользовательской однозадачной ОС является Palm OS для карманных компьютеров Palm.

b Однопользовательские многозадачные – такие ОС большинство пользователей в настоящее время применяют в своих настольных компьютерах и ноутбуках. Windows от Microsoft и Mac OS от Apple – примеры операционных систем, позволяющих одному пользователю одновременно выполнять несколько программ.

2) Многопользовательские ОС. Главным отличием многопользовательских систем от однопользовательских является наличие средств защиты информации каждого пользователя от несанкционированного доступа других пользователей. Следует заметить, что не всякая многозадачная система является многопользовательской, и не всякая однопользовательская ОС является однозадачной. Многопользовательская система позволяет многим разным людям одновременно пользоваться ресурсами одного компьютера. Операционная система должна сбалансировать требования различных пользователей, а также обеспечить использование каждой задействованной ими программой достаточных и разделенных ресурсов, чтобы проблема, возникшая у одного пользователя, не распространилась на все сообщество пользователей.

По аппаратурной основе

1) Однопроцессорные ОС. Операционные системы традиционно строились для управления компьютерами с одним процессором. Основной задачей этих систем была организация легкого доступа пользователей и приложений к разделяемым устройствам, таким как процессор, память, диски и периферийные устройства. Говоря о разделении ресурсов, мы имеем в виду возможность использования одного и того же аппаратного обеспечения различными приложениями изолированно друг от друга. Для приложения это выглядит так, словно эти ресурсы находятся в его полном распоряжении, при этом в одной системе может выполняться одновременно несколько приложений, каждое со своим собственным набором ресурсов. В этом смысле говорят, что операционная система реализует виртуальную машину (virtual machine), предоставляя приложениям средства мультизадачности.

Важным аспектом совместного использования ресурсов в такой виртуальной машине является то, что приложения отделены друг от друга. Так, невозможна ситуация, когда при одновременном исполнении двух приложений, А и В, приложение А может изменить данные приложения В, просто работая с той частью общей памяти, где эти данные хранятся. Также требуется гарантировать, что приложения смогут использовать предоставленные им средства только так, как предписано операционной системой. Например, приложениям обычно запрещено копировать сообщения прямо в сетевой интерфейс. Взамен операционная система предоставляет первичные операции связи, которые можно использовать для пересылки сообщений между приложениями на различных машинах.

2) Многопроцессорные ОС.

В задачи такой системы входит эффективное распределение выполняемых заданий по процессорам и организация согласованной работы всех процессоров. Многопроцессорные операционные системы нацелены на поддержание высокой производительности конфигураций с несколькими процессорами. Основная их задача — обеспечить прозрачность числа процессоров для приложения. Сделать это достаточно легко, поскольку сообщение между различными приложениями или их частями требует тех же примитивов, что и в многозадачных однопроцессорных операционных системах. Идея состоит в том, что все сообщение происходит путем работы с данными в специальной совместно используемой области данных, и все что нам нужно — это защитить данные от одновременного доступа к ним. Защита осуществляется посредством примитивов синхронизации.

3) Сетевые ОС.

Они включают возможность доступа к другим компьютерам локальной сети, работы с файловыми и другими серверами. Сетевая операционная система составляет основу любой вычислительной сети. Каждый компьютер в сети в значительной степени автономен, поэтому под сетевой операционной системой в широком смысле понимается совокупность операционных систем отдельных компьютеров, взаимодействующих с целью обмена сообщениями и разделения ресурсов по единым правилам - протоколам. В узком смысле сетевая ОС - это операционная система отдельного компьютера, обеспечивающая ему возможность работать в сети.

4)Распределенные ОС.

Распределенная система, используя ресурсы локальной сети, представляет их пользователю как единую систему, не разделенную на отдельные машины.

Классификация операционных систем по семействам

ОС семейства OS/2

OS/2 - семейство многозадачных ОС с графическим интерфейсом, есть версии для многопроцессорных машин. OS/2 создавалась для собственных нужд и задач фирмы IMB. OS/2 использовалась IMB в качестве основы некоторого числа программных решений, таких как комментаторские системы олимпийских игр, программное обеспечение для банков. Под нее практически не существует программного обеспечения.

ОС семейства UNIX

Первая система UNIX была разработана в 1969 г. в подразделении Bell Labs компании AT&T. С тех пор было создано большое количество различных UNIX-систем. Все ОС, относящиеся к этому семейству, являются многозадачными, многопользовательскими, с графическим интерфейсом, обеспечивают достаточную надежность и защиту данных. Эти ОС ставятся на различные аппаратные платформы (как на ПК, так и на большие машины такие как мэйнфреймы и суперЭВМ).

ОС семейства Linux

Linux является одной из распространенных систем версий UNIX. Она может организовать работу как рабочих станций, так и сервера. Поддерживает технологию Plug & Play (стандарт аппаратной и программной архитектуры, который делает возможным распознавание устройств).

Linux - это многозадачная и многопользовательская ОС для бизнеса, образования и индивидуального программирования. Как и все UNIX-системы, она ориентирована на работу в сети.

Одним из достоинств Linux можно считать высокую скорость работы. Эта ОС может работать на машинах не очень большой мощности. Второе достоинство -она может применяться как для различных типов серверов, так и для настольных компьютеров.

ОС семейства Windows

Платформы операционных систем Windows NT и Windows 2000 представляют собой ОС-мы для использования на самых разнообразных компьютерах. Все ОС семейства Windows являются многозадачными системами с графическим интерфейсом. Они работают на платформах x86, x86-64, IA-64, ARM. Существовали также версии для DEC Alpha, MIPS, PowerPC и SPARC.

Одним из достоинств ОС семейства Windows является поддержка технологии Plug & Play. Эта технология упрощает для пользователя подключение разных внешних устройств.

Еще одним достоинством этих ОС является их переносимость: за счет специальных модулей существляется связь ОС с разным аппаратным обеспечением.

ОС семейства Windows реализует метод многозадачности с вытеснением. Это позволяет снять приложение в случае его зависания. Также эти ОС поддерживают технологию OLE.OLE - стандарт, позволяющий создавать различные составные документы: в документ, созданный одним приложением, можно внедрять объекты или ссылаться на те из них, которые созданы другими приложениями.

В интерфейсе ОС семейства Windows реализована объектная модель. Также они поддерживают работу ПК в сети.В настоящее время Microsoft Windows установлена примерно на 92 % персональных компьютеров и рабочих станций. По данным компании Net Applications, в август 2015 года рыночная доля Windows составляла 91%. 7 Apple, 2 Linux.


 

3. Понятие процесса. Создание и завершение процесса. Состояние процесса.

Процессы.

Понятие процесса относятся к одному из основополагающих в ОС. Существует много определений термина процесс в том числе:

1. Выполняющаяся прикладная программа пользователя

2. Экземпляр программы, выполняющийся на компьютере

3. Объект, который можно идентифицировать и выполнять на процессоре

4. Единица активности, которую можно охарактеризовать единой цепочкой последовательных действий, текущим состоянием и связанных с ней набором системных ресурсов.

Как понятие процесс является определенным типом абстракции, и обычно следует придерживаться следующего неформального определения.

Последовательный процесс (задача) – выполнение отдельной программы и ее данные на последовательном процессоре.

В качестве примера можно назвать следующие процессы:

1. Выполняющаяся прикладная программа пользователя

2. Утилит

3. Трансляция программ

4. Компоновка, выполнение

Определение понятия процесс ставит цель выработать механизм распределения и управления ресурсами. Понятие ресурс, как и понятие процесса является основным при рассмотрении ОС. Термин ресурс применяется к повторно используемым, относительно стабильным и часто недостающем объектом, которые запрашиваются, используются и освобождаются процессами в период их активности, т.е. ресурсом называется всякий объект, который может распределяться внутри системы.

Мысленно процесс можно разделить на 3 компонента:

1. Выполняющаяся программа

2. Данные нужные для работы

Контекст выполняющейся программы (execution context) или состояние процес



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-04-11 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: