Разработка операционных систем
Рефераты >> Программирование и компьютеры >> Разработка операционных систем

План работы:

Введение.

1. Управление процессами.

1.1. Понятие Процесс. Состояния процесса.

1.2. Планирование процессов. Понятие очереди.

1.3. Взаимодействие процессов. Пользовательский уровень.

2. Планирование процессора.

2.1. Критерии планирования процессора.

2.2. Стратегии планирования процессора.

2.2.1.Первый пришел - первый обслуживается FIFO. First come - first served (FCFS).

2.2.2. Стратегия - наиболее короткая работа! SJF.

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

2.2.4. “Карусельная” стратегия планирования. RR-Round Robin.

2.2.5. Планирование с использованием многоуровневой очереди.(Multilevel queue scheduling).

2.2.6. Программирование с использованием многоуровневой очереди с обратными связями (multilevel feedback queue sheduling).

3. Управление невиртуальной памятью.

3.1. Своппинг. (swapping).

3.2. Смежное размещение процессов.

3.2.1. Однопрограммный режим.

3.2.2 Мультипрограммный режим с фиксированными границами.

3.2.3. Мультипрограммирование с переменными разделами. (multiprogramming with a variable number of tasks (MVT).

3.2.4. Мультипрограммирование с переменными разделами и уплотнением памяти.

3.2.5. Основные стратегии заполнения свободного раздела.

3.3. Страничная организация памяти.

3.3.1. Базовый метод.

3.3.2. Аппаратная поддержка страничной организации памяти.

3.4. Сегментная организация памяти.

3.4.1. Базовый метод сегментной организации памяти.

3.4.2. Разделение сегмента между несколькими процессами.

3.4.3. Фрагментация.

4. Управление виртуальной памятью.

4.1. Страничирование по запросу (demand paging).

4.2. Замещение страниц.

4.2.1. FIFO.

4.2.2. Оптимальный алгоритм.

4.2.3. LRU — алгоритм (least recently used).

5. Общие сведения.

5.1. Управление памятью.

5.2. Файловая система.

5.3. Управление процессами.

5.4. Межпроцессное взаимодействие.

5.5. Графический интерфейс пользователя.

5.6. Объектно-ориентированное ориентирование и операционные системы.

Заключение.

ВВЕДЕНИЕ.

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

На сегодняшний день на рынке программного обеспечения для IBM PC-совместимых компьютеров сосуществуют несколько семейств операционных систем. Однозадачные однопользовательские ОС MS-DOS и PC-DOS являются самыми распространенными ввиду своей простоты и ’неприхотливости’, большую роль здесь играет и то, что подавляющее большинство программ работает именно под их управлением. MS-DOS и PC-DOS характеризуются минимальным пользовательским и программным интерфейсами, в тоже время, работая со всевозможными программными оболочками, интегрированными средами (такими как Microsoft Windows или DESQview), создают комфортабельную среду для пользователя и программы.

ОС Microsoft Windows NT, ориентированная на работу в разнородных сетях, высоконадежна, однако, это достигнуто за счет частичной потери совместимости с MS-DOS.

Операционная система OS/2 стоит особняком: будучи полноправной многозадачной операционной системой со своим оригинальным графическим пользовательским и программным интерфейсами, она сохраняет совместимость с MS-DOS и PC-DOS (начиная с версии WARP 3.0 и с Microsoft Windows).

ОС UNIX - одна из старейших и наиболее простых операционных систем, изначально была рассчитана на разработку программ (для нее самой и не только) на мини-ЭВМ и позволяла без больших затрат труда программиста переносить программу из одной системы ЭВМ на другую. Неудивительно, что сейчас продается много различных вариантов мобильной операционной системы UNIX, таких как XENIX, UNIXWARE, SUN-OS, LINUX, BSD.

Теоретически все эти ОС работают примерно одинаково. Рассмотрим теорию операционных систем.

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

ОС, выполняя роль посредника, служит двум целям:

1. эффективно использовать компьютерные ресурсы.

2. создавать условия для эффективной работы пользователя

В качестве ресурсов компьютера обычно рассматривают:

1. время работы процессора

2. адресное пространство основной памяти

3. оборудование ввода – вывода

4. файлы, хранящиеся во внешней памяти

На рисунке приведены основные компоненты ОС как системы разделения ресурсов.

Таким образом, основные компоненты ОС:

1. управление процессами (распределяет ресурс - процессорное время);

2. управление памятью (распределяет ресурс - адресное пространство основной памяти);

3. управление устройствами (распределяет ресурсы) - оборудование ввода-вывода;

4. управление данными (распределяет ресурс - данные или файлы).

Функционирование компьютера после включения питания начинается с запуска программы первоначальной загрузки - Boot Track. Программа Boot Track инициализирует основные аппаратные блоки компьютера и регистры процессора (CPU), накопитель памяти, контроллеры периферийного оборудования. Затем загружается ядро ОС, то есть Operating System Kernel. Дальнейшее функционирование ОС осуществляется как реакция на события, происходящие в компьютере. Наступление того или иного события сигнализируется прерываниями - Interrupt. Источниками прерываний могут быть как аппаратура (HardWare), так и программы (SoftWare).

Аппаратура “сообщает” о прерывании асинхронно (в любой момент времени) путем пересылки в CPU через общую шину сигналов прерываний. Программа “сообщает” о прерывании путем выполнения операции System Call. Примеры событий, вызывающих прерывания:

1. попытка деления на 0

2. запрос на системное обслуживание


Страница: