Некоторые другие классификационные признаки ОС
2.3.1 Поддержка многозадачности.
Многозадачные ОС — допускают выполнение более чем одной программы (процесса, задачи) одновременно (или "почти одновременно").
Однозадачные ОС — соответственно, те, которые этого не допускают.
Несмотря на вроде бы четкий критерий различия, деление не вполне однозначно, т.к. по-разному можно трактовать "одновременность". Очевидно, что строго одновременно процессы могут выполняться только многопроцессорной (или многомашинной) вычислительной системой, однако ОС с псевдопараллельным выполнением программ в однопроцессорных конфигурациях также относят к многозадачными. С другой стороны, если считать "одновременностью" возможность нахождения в памяти ЭВМ нескольких готовых к выполнению программ, в т.ч. обращающихся друг к другу либо активизируемых по прерываниям, то MS-DOS также следовало бы относить к многозадачным, чего, однако, не делают. Вероятно, в качестве критерия можно принять …
В свою очередь, многозадачность может быть реализована различными способами:
– пакетная обработка — …
– псевдопараллелизм на основе разделения времени — …
– истинно параллельное выполнение задач на аппаратной платформе с параллельной архитектурой, когда каждой задаче предоставляется отдельное операционное устройство (процессор) многопроцессорной ЭВМ или, реже — отдельная ЭВМ многомашинного комплекса, что возможно, очевидно, лишь при ограниченном количестве "параллельных" задач;
– сетевые и распределенные системы — …
– системы реального времени (Real-Time Systems — RTS) — главным требованием является гарантированное, не более, чем за установленное время, реагирование системы на события, поэтому все обработчики должны находиться в памяти, и активизируются они в моменты, определяемые вне системы, следовательно, можно говорить о специфическом типе "событийной многозадачности".
Как правило, "настоящая" многозадачность подразумевает также и взаимную изоляцию выполняющихся программ для исключения нежелательного воздействия их друг на друга.
Помимо параллельно (псевдопараллельно) выполняемых процессов …
Подробнее о многозадачности в ОС семейства Win 32 см. … , Unix — в курсе ОСиС.
2.3.2. Поддержка многопользовательского режима
2.3.3. Поддержка многопроцессорной обработки
Примеры организации ОС
2.4.1 Однозадачная ОС MS-DOS
2.4.2. Многозадачная ОС с модифицированным микроядром MS Windows NT
2.4.3. Многозадачная ОС с монолитным ядром Unix
О Unix правильнее говорить как о семействе операционных систем, обладающих схожей архитектурой (не все), общностью некоторых концепций и характерных особенностей, подчиняющихся некоторым единым спецификациям (в первую очередь – относительно API).
В силу сложившейся на кафедре структуры курсов, Unix-системы рассматриваются в рамках отдельной дисциплины "Операционные системы и среды".
3. Общие сведения об ОС MS DOS
ОС MS DOS (Microsoft Disk Operational System) и ее аналоги представляют собой типичные однозадачные однопользовательские ОС, предназначенные для микроЭВМ. Как следствие, характеристики этих ОС оптимизированы под соответствующий класс техники и не соответствуют более поздним поколениям аппаратных средств и решаемых ими задач.
Непосредственным предком MS DOS является ОС CP/M-80, разработанная для компьютеров на базе ЦП Intel 8080 (отечественный аналог – КР580ИК80) — 8-разрядного (16-разрядное слово обрабатывалось последовательно) с адресным пространством 64 Кбайт и типичной частоту тактирования 1 МГц (помимо настольных компьютеров, применялся также в составе контроллеров и специализированных управляющих микроЭВМ).
Собственно DOS разрабатывалась для машин IBM PC (Personal Computer), построенных на следующих, уже 16-разрядных ЦП Intel 8086 и 8088 (отечественные аналоги – К1810ВМ86 и К1810ВМ88). Помимо увеличения разрядности внутреннего представления данных, была повышена тактовая частота (первоначально до 4,77 МГц, впоследствии до как минимум 10, возможно, до 16 МГц) и расширено адресное пространство (до 1 Мбайта для процессора, но в архитектуре PC ОЗУ ограничивалось 640 Кбайтами, см. управление памятью). Программно совместимый с ним i8088 представлял собой удешевленный вариант с уменьшенной до 8 разрядностью шины (передача 16-разрядных слов в 2 приема), укороченной очередью команд и т.п. "доработками", позволявшими снизить стоимость системы; первые IBM PC были построены именно на i8088, снижение производительность при этом было признано менее существенным.
По большинству отдельно взятых показателей процессоры i8086/88 не были лучшими среди конкурирующих 16-разрядных ЦП, однако они позволяли построить готовую систему быстрее и дешевле, пусть и в ущерб рабочим характеристикам и перспективности архитектуры. Кроме того, они сохраняли частичную совместимость с получившим распространение i8080 (аналогично MS DOS наследовала ряд архитектурных решений CP/M-80). Особенности аппаратуры, вопросы совместимости и существовавшая концепция персональной ЭВМ и ее применения обусловили "родовые черты" MS DOS, проявляющиеся до сих пор, несмотря на то, что и аппаратура ПЭВМ, и ОС неоднократно модернизировались. Можно сказать, что и техника, и задачи систематически "вырастали" из-под и DOS, и ее потомка Windows, постоянно требуя от ОС "догонять" их. При этом архитектурные решения как ПЭВМ, так и ПО для них оказались в целом очень консервативными.
Примечание. В этом смысле обратное явление наблюдается в истории ОС Unix: стремление перенести концепции "тяжелых" ЭВМ на более простые и массовые.
Обзор по версиям…
Достаточно распространенным аналогом MS DOS является PC DOS (IBM, PC – Personal Computer), отличающаяся от нее отдельными деталями реализации и практически полностью совместимая программно. Нумерация версий первоначально соблюдалась аналогичной, но впоследствии выходили версии более поздние, чем "чистой" MS DOS. В местных условиях была популярна PC DOS 3.30.
Гораздо реже встречались аналоги других фирм, имеющие уже заметные отличия от прототипа, например, DR DOS (Digital Research). Существовали и русскоязычные переработки.
Структура MS DOS.
Рис. – структура программных средств (DOS, BIOS, прочее) в архитектуре IBM PC.
Основную часть программного интерфейса (Application Program Interface – API) DOS составляют т.н. функции DOS, доступные посредством т.н. системного прерывания int 21h. Номер функции передается в AH. Прочие аргументы передаются в регистрах, в т.ч. в виде указателей на буфера или структуры данных. Результат выполнения функций возвращается аналогично. В приложении хх приведен перечень функций, детальная информация в более подробных справочниках.