Интернет магазин китайских планшетных компьютеров |
|
Компьютеры - Многозадачность - Трудности реализации многозадачной среды22 января 2011Оглавление: 1. Многозадачность 2. Трудности реализации многозадачной среды 3. Типы псевдопараллельной многозадачности 4. Проблемные ситуации в многозадачных системах Основной трудностью реализации многозадачной среды является её надёжность, выраженная в защите памяти, обработке сбоев и прерываний, предохранении от зависаний и тупиковых ситуаций. Кроме надёжности, многозадачная среда должна быть эффективной. Затраты ресурсов на её поддержание не должны: мешать процессам проходить, замедлять их работу, резко ограничивать память. История многозадачных операционных системПоначалу реализация многозадачных операционных систем представляла собой серьёзную техническую трудность, отчего внедрение многозадачных систем затягивалось, а пользователи долгое время после внедрения предпочитали однозадачные. В дальнейшем, после появления нескольких удачных решений, многозадачные среды стали совершенствоваться, и в настоящее время употребляются повсеместно. Впервые многозадачность операционной системы была реализована в ходе разработки операционной системы Multics. Одной из первых многозадачных систем была OS/360, используемая для компьютеров фирмы IBM и их советских аналогов ЕС ЭВМ. Разработки системы были сильно затянуты, и на начальное время фирма IBM выдвинула однозадачный DOS, чтобы удовлетворить заказчиков до полной сдачи OS/360 в эксплуатацию. Система подвергалась критике по причине малой надёжности и трудности эксплуатации. В 1969 году на основе Multics была разработана система UNIX с достаточно аккуратным алгоритмическим решением проблемы многозадачности. В настоящее время на базе UNIX созданы десятки операционных систем. На компьютерах PDP-11 и их советских аналогах СМ-4 использовалась многозадачная система RSX-11, и система распределения времени TSX-PLUS, обеспечивающая ограниченные возможности многозадачности и многопользовательский режим разделения времени, эмулируя для каждого пользователя однозадачную RT-11. Последнее решение было весьма популярно из-за низкой эффективности и надёжности полноценной многозадачной системы. Аккуратным решением оказалась операционная система VMS, разработанная первоначально для компьютеров VAX как развитие RSX-11. Первый в мире мультимедийный персональный компьютер Amiga 1000 изначально проектировался с расчётом на полную аппаратную поддержку вытесняющей многозадачности реального времени в ОС AmigaOS. В данном случае разработка аппаратной и программной части велась параллельно, это привело к тому, что по показателю квантования планировщика многозадачности AmigaOS долгое время оставалась непревзойдённой на персональных компьютерах. Многозадачность обеспечивала также фирма Microsoft в операционных системах Windows. При этом Microsoft выбрала две линии разработок на базе приобретённой ею Windows 0.9, которая после долгой доработки системы, изначально обладавшей кооперативной многозадачностью, аналогичной Mac OS, вылилась в линейку Windows 3.x, и на основе идей, заложенных в VMS, которые привели к созданию операционных систем Windows NT. Использование опыта VMS обеспечило системам существенно более высокую производительность и надёжность. По времени переключения контекста многозадачности только эти операционные системы могут быть сравнимы с AmigaOS и UNIX. Интересно, что многозадачность может быть реализована не только в операционной, но и языковой среде. Например, спецификации языков программирования Modula-2 и Ada требуют поддержки многозадачности вне привязки к какой-либо операционной системе. В результате, популярная в первой половине 1990-х годов реализация языка программирования TopSpeed Модула-2 от JPI/Clarion позволяляла организовывать различные типы многозадачности для потоков одной программы в рамках такой принципиально однозадачной операционной системы, как MS-DOS. Это осуществлялось путём включения в модуль программы компактного планировщика задач, содержащего обработчик таймерных прерываний . Языки программирования, обладающие таким свойством, иногда называют языками реального времени. Просмотров: 5832
|