или с помощью соц. сетей

Структура и организация windows 95

Оставить/читать комментарии (просмотров: 4829; комментариев: 0; опубликовано: 28.07.2006)

Сравнение DOS и Windows 95

Система Windows 95 во многом основана на тех же самых концепциях, что и Dos. Тех же два системных файла io.sys и msdos.sys, только теперь весь системный код находится в первом из них, а второй содержит ASCII - текст с установками, управляющими поведением системы при загрузке.

Эквиваленты программ himem.sys, ifshlp.sys автоматически загружаются программой io.sys при старте системы. Как и прежде, для загрузки в память драйверов и резидентных программ можно использовать файлы config.sys и autoexec.bat. Но за загрузку тех 32-разрядных драйверов устройств, которые разработаны специально для Windows 95, теперь отвечают записи в системном реестре (Registry). Когда вся предварительная работа сделана, стартует файл win.com.

Registry - это база данных, в которой Windows 95 хранит информацию о всех настройках, конфигурационных установках и параметрах, которые нужны для работы ее собственных модулей и отдельных приложений. Системный реестр как бы выполняет функции файлов config.sys, autoexec.bat и ini - файлов Windows 3.1 вместе взятых.

На диске компьютера реестр хранится в виде двух отдельных файлов: system.dat и user.dat. В первом из них содержатся всевозмож-ные аппаратные установки. А во втором - данные о работающих с системой пользователях и их программных конфигурациях.

По способу хранения данных Windows 95 использует ту же файловую систему, что и Dos, и те же дисковые структуры, главную загрузочную запись (MBR), загрузочную запись Dos (DBR), таблицы размещения файлов (FAT) и каталоги. Но имена файлов могут теперь иметь длину до 255 символов и при этом сохраняется односторонняя совместимость с файловыми системами, созданными под Dos. Такая совместимость достигается, так как Windows 95 хранит для каждого файла и каталоги по два имени - полное и короткое.

Функции операционной системы

Встроенные функции ОС находятся в dll - динамически загружаемых модулях (dynamic - link library). Модули dll - это разделяемые библиотеки процедур, к которым по мере необходимости обращаются исполняемые программы.

Основой кода Windows 95 служат модули Kernel, User и Gdi. Каждый из них состоит из двух частей: 32 - разрядной и 16 - разрядной. Windows 95 использует 16 - разрядный код, когда он необходим для обеспечения совместимости. 16 - разрядные функции Windows 95 написаны преимущественно на ассемблере.

32 - разрядная часть модуля Kernel за базовые услуги - файловый ввод - вывод, управление памятью, загрузку и выполнение программ, поддержку сетевой и файловой систем. Имя файла 32 - разрядного модуля Kernel - Kernel32.dll. 16 - разрядная часть Kernel, Ker-nel386.exe, задействуется только на момент загрузки Windows 95 и используется только для инициализации 32 - разрядной части Kernel.

GDI управляет графическими операциями Windows 95 и печатью. 32 - разрядный модуль Gdi32.dll отвечает за подсистему буффизации входных и выходных потоков, подсистему печати, растеризатор шрифтов (TrueType) и основные операции рисования то есть за все операции, где особенно важна скорость выполнения или требуется особая точность вычислений с плавающей запятой. Операции управления окнами, для которых более важна совместимость со старыми приложениями, описывает 16 - разрядный Gdi.exe.

Модуль User управляет пользовательским вводом - выводом, включая операции с клавиатурой, мышью, звуковым драйвером, системными часами и портами ввода - вывода. User поддерживает отображение и перемещение окон, меню и значков. User фактически остался в Windows 95 16 - разрядным (User.exe), его 32 - разрядная часть (User32.dll) используется для трансформации вызовов 32 - раз-рядных приложений и переадресации 16 - разрядному блоку. Трансформации 32 - разрядных вызовов в 16 - разрядные и наоборот очень часто применяются в Windows 95.

Непосредственно в ОС Windows 95 реализованы и некоторые другие функции. Среди модулей, поддерживающих их можно назвать WinNet, обеспечивающий аппаратно - независимый уровень поддержки сетевых функций; Multimedia, содержащий интерфейс для мульти-медиа - драйверов и функций ввода - вывода.

Виртуальная адресация памяти

Windows 95 позволяет использовать больший объем памяти, чем установленный на компьютере объем оперативной памяти. Если потребности программ превышают возможности компьютера, то те участки (страницы) памяти, которые требуются реже всего, "откладываются" на жесткий диск. Для этого используется специальный файл обмена, он же файл подкачки или файл виртуальной памяти. Особен-ностью виртуальной памяти Windows 95 является способность файла подкачки динамически изменять свой размер в зависимости от по-требностей системы в отличии от файла подкачки Windows 3.1, который не мог превышать утроенный объем оперативной памяти и дол-жен быть постоянным.

Процессор делит доступное адресное пространство на 4 - килобитные страницы общим числом около миллиона, что дает 4 Гбайт адресуемой памяти для 32 - разрядных приложений. Диспетчер виртуальной памяти процессора устанавливает соответствие между виртуальными адресами страниц памяти и их физическим местоположе-нием. Диспетчер виртуальной памяти контролирует 4 Гбайт адресов памяти (причем не обязательно наличие 4 Гбайт физической памяти). Эти адреса распределены следующим образом:

0 - 1 Мбайт. Не используются программы Windows, доступны только для программ Ms-Dos. То есть приложение Ms-Dos считают себя загруженным ниже адреса 1 Мбайт.

1 - 4 Мбайт. Используется только программами Win 16. Про-граммы Win 32 не занимают эти адреса.

4 Мбайт - 2 Гбайт. Используются программами Win 32 и некоторыми программами Win 16.

2 - 3 Гбайт. Используется разделяемыми объектами, такими, как динамически загружаемые модули.

3 - 4 Гбайт. Используется только ОС для ее внутренних нужд.

Когда виртуальный адрес, по которому обращается приложение, не соответствует странице, расположенной в физической памяти, то процессор сообщает об ошибке, и диспетчер виртуальной памяти подкачивает требуемую страницу из файла обмена. При этом предва-рительно обычно приходиться освобождать соответствующий объем физической памяти и сбрасывать какую-нибудь другую страницу из памяти в файл обмена. Для того чтобы оптимизировать процесс обмена между физической и виртуальной памятью, Windows 95 применяет классический алгоритм "удаление стариков" - то есть сбрасывает в файл обмена наиболее редко используемые страницы памяти.

Многозадачность

Windows 95 - многозадачная и многопоточная система. Это зна-чит, что в ОС может "одновременно" выполняться несколько процессов, а в пределах одного процесса могут одновременно существовать несколько более простых процессов - потоков. Каждое работающее приложение Windows или Ms-Dos является процессом, причем каж-дый процесс состоит хотя бы из одного потока. Приложения Dos и Win 16 всегда состоят из одного потока. Поток может использовать память и системные ресурсы, выделяемые ему материнским процессом, но не может сам обращаться в ОС с требованием выделить новые ресурсы. В каждый момент времени выполняется один поток.

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

При кооперативной многозначности каждое приложение получает фактически столько процессорного времени, сколько оно считает нужным. Все приложения делят процессорное время, периодически ограничивая друг друга. Поэтому хорошо заметно, когда одно программа "тормозит" другую, а при длительных операциях с диском замирает практически вся другая деятельность. Все 16 - разрядные при-ложения выполняются под Windows 95 примерно так же, как и под Windows 3.х - в режиме кооперативной многозначности. Таким образом, достигается совместимость со старыми приложениями Windows, написанными для выполнения в среде кооперативной многозначности.

Виртуальные машины

Прикладные программы для Windows 95 выполняются в виртуальных машинах, которые создает ОС. Виртуальная машина представляет собой среду, имитирующую отдельный (виртуальный) компьютер со всеми его системными и периферийными устройствами. Благодаря системе виртуальных машин работникам ПО не приходится беспокоиться о том, чтобы их программы отслеживали использование ресурсов компьютера другими программами, так как память и наборы ресурсов каждой виртуальной машины изолированы от памяти и ресурсов других виртуальных машин. Когда загружается Windows 95, всегда создается системная виртуальная машина, в пределах которой выделяется отдельное адресное пространство для ядра системы. Каждому запущенному 32 - разрядному приложению Windows 95 (Win 32) также выделяется отдельное адресное пространство адресов в пределах системной виртуальной машины. Для всех 16 - разрядных приложений Windows система Windows 95 использует общее адресное пространство в пределах системной виртуальной машины. Каждое приложение Dos выполняется в собственной виртуальной машине.

Процессы и сообщения

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

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

Приложения Win 16 выполняются под Windows 95 в режиме кооперативной многозначности в общем пространстве адресов в пределах системной виртуальной машины и имеют общую очередь сообщений. Ситуация с "зависанием" программы Win 16 потенциально более опасна: остальные программы Win16 перестанут получать сообщения и тоже "зависнут". Кроме того, заблокированное приложение Win 16 способно повлиять на приложение Win 32, несмотря на то, что они используют независимые очереди сообщений. Это объясняется тем, что если "зависание" происходит в момент обращения, например, к gdi.exe, то уже ни одно приложение не сможет обратиться к этому мо-дулю. В этом случае система оказывается полностью заблокированной.

Кроме того, прерванное приложение Win 16 может не вернуть системе используемые им системные ресурсы. Все системные ресурсы освободятся после того, как будут выгружены все текущие программы Win 16.

Планирование приоритетов

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

    Диспетчер задач руководствуется следующими правилами:
  • Повышается приоритет потоков, находящихся в ожидании пользовательского ввода (Необходимо для оперативного реагирова-ния на действия пользователя).
  • Если поток обладает низшим приоритетом, то он начинает повышаться.
  • Периодически повышается приоритет каждого потока, чтобы приложения с низшим приоритетом не "зависали".
  • Если приоритет потока наивысший, он начинает понижаться.
  • Реализован метод наследования приоритета, который позволяет приложению с низшим приоритетом быстро повышать приоритет, чтобы освободить ресурсы, необходимые приложению с более высо-ким приоритетом.

Файловая система Windows 95

Максимальная длина имени файла в Windows 95 может достигать 256 символов. Ограничением длины имени файла служит путь к файлу, длина которого не может превышать 260 символов. При создании файла ему присваивается сразу два имени - длинное и короткое, в стиле Ms-Dos.

Файловая система Windows 95 VFAT (Virtual FAT) полностью поддерживает файловую систему FAT. FAT 32 - альтернативная файловая система, которую Windows 95 OSR 2 может использовать наряду с обычной FAT. Главное преимущество FAT 32 состоит в том, что эта файловая система позволяет создавать дисковые тома объемом до 2 Тбайт, в отличие от системы FAT, которая поддерживает диски до 2 Гбайт. FAT 32 более устойчива к отказам, чем стандартная FAT, к тому же она использует меньший размер дисковых кластеров, за счет чего достигается существенная экономия дискового пространства. На дисках объемом более 1 Гбайт размер кластера в системе FAT составляет 32 Кбайт. При использовании FAT 32 для раздела до 8 Гбайт размер кластера равен всего 4 Кбайт (экономия дискового пространства составляет в среднем 128 Мбайт на 1 Гбайт дискового пространства).

Корневой каталог разделов FAT 32 может теперь иметь любой размер, это снижает ограничение на число записей в корневом каталоге. Предусмотрено резервирование структур данных загрузочных записей. Кроме того, в FAT 32 уже заложена возможность "подмены" одной таблицы FAT другой.


Всего голосов: 18; средний бал: 4.94 Голосовать:

Другие статьи

Как выбрать нетбук

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

Lumix TZ7 — фотоаппарат мечты

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

Принтер на кофейной гуще и электросвинка

Глобальный энергетический кризис – действительная угроза или пугало, придуманное доморощенными защитниками природы? Похоже, что битва «за

Две тач-панели в нетбуке от Apple?

Как мы уже писали в ленте новостей, Apple спешно оформляет заказы на десятидюймовые тачскрин-панели у поставщиков в Тайване. Доставка интригующего груза

Комментарии

написать комментарий
Еще нет комментариев

Добавление комментария

Имя
Код
Комментарий oсталось символов: 5000
Показать все смайлики