Автор работы: Пользователь скрыл имя, 27 Октября 2010 в 08:08, Не определен
Цель реферата – отразить процесс планирования, организации, проведения и оформления внутреннего аудита системы качества машиностроительного предприятия
Каждая собственная прикладная программа Windows 95 видит неструктурированное 4 Gb-ное адресное пространство, в котором размещается она сама плюс системный код и драйверы Windows 95. Каждая 32-разрядная прикладная программа выполняется так, как будто она монопольно использует весь ПК. Код прикладной программы загружается в это адресное пространство между отметками 2 и 4 Gb. Хотя 32-разрядные прикладные программы "не видят" друг друга, они могут обмениваться данными через буфер обмена (Clipboard), механизмы DDE и OLE. Все 32-разрядные прикладные программы выполняются в соответствии с моделью вытесняющей многозадачности, основанной на управлении отдельными потоками. Планировщик потоков, представляющий собой составную часть системы управления виртуальной памятью (VMM), распределяет системное время среди группы одновременно выполняемых потоков на основе оценки текущего приоритета каждого потока и его готовности к выполнению. Вытесняющее планирование позволяет реализовать намного более плавный и надежный механизм многозадачности, чем кооперативный метод, используемый в Windows 3.1x.
Системный код Windows 95 размещается выше границы 2 Gb. В пространстве между отметками 2 и 3 Gb находятся системные библиотеки DLL кольца 3 и любые DLL, используемые несколькими программами. (32-разрядные процессоры фирмы Intel предоставляют четыре уровня аппаратной защиты, поименованные, начина с кольца 0 до кольца 3. Кольцо 0 наиболее привилегированно.) Компоненты кольца 0 в системе Windows 95 отображаются в пространство между 3 и 4 Gb. Эти важные участки кода с максимальным уровнем привилегий содержат подсистему управления виртуальными машинами (VMM), файловую систему и драйверы VxD.
Область памяти между 2 и 4 Gb отображается в адресное пространство каждой 32-разрядной прикладной программы, т. е. оно совместно используется всеми 32-разрядными прикладными программами в вашем ПК. Такая организация позволяет обслуживать вызовы API непосредственно в адресном пространстве прикладной программы и ограничивает размер рабочего множества. Однако за это приходится расплачиваться снижением надежности. Ничто не может помешать программе, содержащей ошибку, произвести запись в адреса, принадлежащие системным DLL, и вызвать крах всей системы.
В области между 2 и 3 Gb также находятся все запускаемые вами 16-разрядные прикладные программы Windows. С целью обеспечения совместимости эти программы выполняются в совместно используемом адресном пространстве, где они могут испортить друг друга так же, как и в Windows 3.1x.
Адреса памяти ниже 4 Mb также отображаются в адресное пространство каждой прикладной программы и совместно используются всеми процессами. Благодаря этому становится возможной совместимость с существующими драйверами реального режима, которым необходим доступ к этим адресам. Это делает еще одну область памяти незащищенной от случайной записи. К самым нижним 64 К этого адресного пространства 32-разрядные прикладные программы обращаться не могут, что дает возможность перехватывать неверные указатели, но 16-разрядные программы, которые, возможно, содержат ошибки, могут записывать туда данные.
Windows NT
Windows NT по существу
представляет собой
Схема распределения памяти Windows NT разительно отличается от распределения памяти систем Windows 95 и OS/2 Warp. Собственные прикладным программам выделяется 2 Gb особого адресного пространства, от границы 64 К до 2 Gb (первые 64 К полностью недоступны). Прикладные программы изолированы друг от друга, хотя могут общаться через буфер обмена Clipboard, механизмы DDE и OLE.
В верхней части
каждого 2 Gb блока прикладной программы
размещен код, воспринимаемый прикладной
программой как системные библиотеки
DLL кольца 3. На самом деле это просто заглушки,
выполняющие перенаправление вызовов,
называемые DLL клиентской стороны (client-side
DLLs). При вызове большинства функций API
из прикладной программы библиотеки DLL
клиентской стороны обращаются к локальным
процедурам (Local Process Communication - LPC), которые
передают вызов и связанные с ним параметры
в совершенно изолированное адресное
пространство, где содержитс собственно
системный код. Этот сервер-процесс (server
process) проверяет значения параметров, исполняет
запрошенную функцию и пересылает результаты
назад в адресное пространство прикладной
программы. Хотя сервер-процесс сам по
себе остается процессом прикладного
уровня, он полностью защищен от вызывающей
его прикладной программы и изолирован
от нее.
Между отметками 2 и 4 Gb расположены низкоуровневые системные компоненты Windows NT кольца 0, в том числе ядро, планировщик потоков и диспетчер виртуальной памяти. Системные страницы в этой области наделены привилегиями супервизора, которые задаются физическими схемами кольцевой защиты процессора. Это делает низкоуровневый системный код невидимым и недоступным по записи для программ прикладного уровня но приводит к падению производительности во врем переходов между кольцами.
Для 16-разрядных прикладных Windows-программ Windows NT реализует сеансы Windows on Windows (WOW). Как и OS/2 Warp, Windows NT дает возможность выполнять 16-разрядные программы Windows индивидуально в собственных пространствах памяти или совместно в разделяемом адресном пространстве. Почти во всех случаях 16- и 32-разрядные прикладные программы Windows могут свободно взаимодействовать, используя OLE (при необходимости через особые процедуры thunk) независимо от того, выполняются они в отдельной или общей памяти. Собственные прикладные программы и сеансы WOW выполняются в режиме вытесняющей многозадачности, основанной на управлении отдельными потоками. Множественные 16-разрядные прикладные программы Windows в одном сеансе WOW выполняются в соответствии с кооперативной моделью многозадачности. Windows NT может также выполнять в многозадачном режиме несколько сеансов DOS. Поскольку Windows NT имеет полностью 32-разрядную архитектуру, не существует теоретических ограничений на ресурсы GDI и USER.
OS/2 Warp
В апреле 1987 г. компании IBM и Microsoft объявили о совместных планах по созданию новой операционной системы: OS/2. Прошло несколько лет, и мир стал свидетелем "бракоразводного процесса", в результате чего у OS/2 остался один родитель - компания IBM, а фирма Microsoft отдала все симпатии любимому детищу, имя которому Windows. Важно помнить, что OS/2 - это новая операционная система с графическим интерфейсам пользователя (ГИП), в то время как Windows представляет собой ГИП, работающий "поверх" DOS.
OS/2 является
полностью защищенной
Система OS/2 поддерживает многопроцессные прикладные программы, рассчитанные на одновременное выполнение нескольких внутренних функций. Примерами могут служить текстовый редактор, в котором печать документа и проверка правописания осуществляются параллельно; электронная таблица с возможностью одновременного выполнения функций пересчета и просмотра или база данных, в которой можно совмещать функции обновления и поиска записей.
Архитектура OS/2 Warp Connect 3.0 во многом похожа на архитектуру Windows 95, но в ее концепции заложено меньше компромиссов, связанных с использованием старого 16-разрядного кода. В результате появилась ОС с лучшими, чем у Windows 95, средствами защиты, в которой можно выполнять программы OS/2, Win16 и DOS, однако несовместимая с 16-разрядными драйверами устройств. 32-разрядные прикладные программы Windows не могут выполняться в среде OS/2 Warp.
Собственным 32-разрядным прикладным программам OS/2 доступно 4 Gb-ное отдельное адресное пространство. Код прикладных программ отображается в диапазон адресов от 0 до 512 Mb, системный код OS/2 отображается в пространство от 512 Mb до 4 Gb. Эта область системного кода используется совместно всеми процессами. Исполняемые 32-разрядные прикладные программы изолированы друг от друга, хотя они могут общаться между собой с помощью средств вырезания и вставки (cut-and-paste) или механизма DDE OS/2. В системе OS/2 Warp применяется модель вытесняющей многозадачности собственных прикладных программ, основанная на управлении отдельными потоками.
Такая организация обладает во многом теми же достоинствами и недостатками, что свойственны Windows 95. Выделение системных ресурсов происходит гладко, а вызовы, направляемые в системные API, могут обслуживаться без существенных накладных расходов, так как системные DLL расположены в тех же адресных пространствах, что и вызывающая прикладная программа. Размер рабочего множества тоже удерживается в разумных пределах, так как не нужно создавать множественные экземпляры системных DLL. Но защита не гарантируется, поскольку плохо работающие прикладные программы все же могут испортить важные системные области.
Однако в некоторых важных аспектах OS/2 Warp превосходит систему Windows 95. Проблемы ограниченности системных ресурсов не существует, так как в OS/2 Warp не используются 64 К хипы для хранения структур данных системных DLL. Эта ОС также предоставляет несколько служебных средств, отсутствующих в Windows, в том числе модель системных объектов (SOM) и REXX, мощный командный язык, используемый на многих платформах фирмы IBM.
В дополнение к собственным 32-разрядным прикладным программам, OS/2 Warp может выполнять 16-разрядные прикладные программы Windows. В зависимости от того, какую версию вы приобрели, OS/2 Warp использует для этой цели либо копию Microsoft Windows 3.1, либо собственные библиотеки Win-OS/2. В любом случае вы можете по своему выбору запустить сеанс Windows для каждой Windows-программы или выполнять все Windows-программы в совместно используемом адресном пространстве. Последний подход может обеспечить лучшую совместимость, но грозит обернуться потерей устойчивости, так как в этом случае ОС работает в сущности подобно Windows 3.1x. OS/2 Warp позволяет также запускать прикладные программы DOS на легко конфигурируемых виртуальных машинах DOS, работающих в режиме вытесняющей многозадачности.
Архитектура OS/2 не предназначена для запуска в ней драйверов устройств реального режима, поэтому ваши аппаратные средства должны поставляться с собственными драйверами OS/2. Преимущество такого подхода в том, что OS/2 может полностью защитить первые 4 Mb памяти прикладной программы, т. е. область, которая по-прежнему остается незащищенной от аварийных сбоев в среде Windows 95.
4. Ограничения DOS
Без сомнения, главная
отличительная черта
Единственный надежный способ преодолеть эти барьеры раз и навсегда - заставить процессор работать в защищенном режиме. Но ни DOS, ни ее прикладные программы не способны работать в этом режиме, поэтому огромные пространства расширенной памяти остаются недоступными для большинства программ.
Скелетная природа DOS привлекает разработчиков программного обеспечения. Большинство основных прикладных программ общаются с экраном, клавиатурой и принтером в обход DOS, так как предоставляемые ею услуги по организации интерфейса с этими и другими устройствами совершенно недостаточны. DOS, например, не поддерживает ввод-вывод через последовательный порт по прерываниям. Программисты тратят довольно много времени на написание драйверов для сотен различных принтеров и видеоадаптеров. Конфигурации оборудования бывают настолько разнообразными, что трудно написать программу, которая работала бы на любом IBM-совместимом компьютере. Кроме общей файловой системы DOS здесь мало чем может помочь.
В ОС Windows гораздо лучше, по сравнению с другими ОС, налажено
взаимодействие между пользователем и компьютером. Большинство повседневных задач выполняется с меньшими, чем когда-либо затратами времени. Решено также большинство проблем с распределением памяти. Встроенная сетевая поддержка делает тривиальной задачей надежный обмен информацией по сети. В Windows предусмотрена возможность давать файлам длинные имена, что значительно облегчает работу пользователя. Поддержка в Windows стандарта "plug-and-play" упрощает модернизацию оборудования. Ярлыки помогают быстро обращаться к часто используемым файлам, программам и папкам. Большая часть всего этого достигнута без ущерба для производительности. А многие процессы, например печать, идут теперь гораздо быстрее благодаря 32-битному режиму и другим усовершенствованиям.