
- •1.Классификация программного обеспечения эвм
- •2)Второе свойство по – переносимость. Если спо можно ставить на вычислительные системы различной архитектуры то оно переносимо. 3) Третье свойство по – Вариабельность.
- •Транслятор – переводит исходный модуль, написанный на языке высокого уровня в объектный код.
- •3.Структура ос и основные понятия ос
- •4.Управление процессами
- •Procedure dispach:
- •5.Управляет процессами (нитями) – диспетчер процессов.
- •Procedure dispach:
- •If esbFlag Procedure Wait (esb);
- •If esbFlag
- •6.Обслуживание ввода-вывода
- •1990–1994: Windows 3.0–Windows nt — поддержка графики
- •7.Файловая система (фс)
- •Интерфейс Windows 7
- •8.Управление памятью
- •9.Управление ресурсами в ос
- •If Allocator(k,pd) then
- •1) Компьютеры выполняют 2 функции:
- •4) Файлы и файловые системы
- •11.Основные понятия и концепции виртуальной памяти
- •12.Мультипроцессорные системы
- •13.Механизм управления и средства взаимодействия параллельных процессов
- •1)Задача взаимного исключения.
- •2)Задача производитель-потребитель.
- •3)Задача читатели-писатели.
- •4)Задача «Обедающие философы».
- •14.Семафорная техника синхронизации и упорядочивания процессов
- •1.Файловая система hpfs (High Performance File System)
- •15.Тупики
- •16. Графы распределения ресурсов
- •17.Восстановление после тупиков
- •18.Логическая организация файла
- •19.Файловая система (фс)
- •20.Файловая система hpfs (High Performance File System)
- •21.Физическая организация и адресация файла
- •22.Ntfs – New Technology File System
- •23.Логическая организация файла
- •24.Классификация прерываний.
- •25.Тупики и редукция графов
5.Управляет процессами (нитями) – диспетчер процессов.
Алгоритм работы диспетчера:
Procedure dispach:
<обновить PSW активного процесса, если он есть>;
<выбрать следующий готовый процесс для передачи ему управления>.
Выбор процесса осуществляется в соответствии с некоторой стратегией LIFO, FIFO.
if <готовый процесс найден>
then
begin
<пометить выбранный процесс как активный>;
<выделить квант времени, установив привилегированной командой таймер>;
<передать управление выбранному процессу>
end
else
<перевести центральный процессор привилегиванной командой в состояние простоя>;
Как выбирается процесс для активизации:
круговая стратегия (в мультипрограммных системах) – в этом случае все процессы считаются равноценными, и диспетчер циклически просматривает PSW всех процессов и выделяет им по очереди квант времени.
Выбор процессов по приоритету – приоритеты могут назначаться пользователем, либо их устанавливает ОС в целях повышения производительности всей системы. Приоритеты делятся на классы, внутри класса может быть градация, и они могут быть статическими, либо динамическими в зависимости от загрузки системы. Любой процесс обменивается с диспетчером процессов запросами о наступлении некоторого события. Для этого используют специальные внутри системные запросы.
Событие, которое ожидалось, или о наступлении которого было сообщено, определяется посредством задания соответствующего адреса блока состояния события (Event Status Block-ESB)
Процессы могут порождать родственные процессы, которые наследуют все ресурсы родительского процесса.
Обработка запроса
Wait:
Procedure Wait (ESB);
If esbFlag Procedure Wait (esb);
If esbFlag
=1 {событие уже наступило}
then <возвратить управление запрашивающего процесса специальной командой>
else
begin
<пометить запрашивающий процесс как blocked>;
< поместить запрашивающий процесс в очередь: ESBQUEUE>;
<передать управление диспетчеру>;
end;
В этой процедуре скрыта обработка сигналов.
Процедура SIGNAL обработки сигнала:
Procedure SIGNAL (ESB);
ESBFlag=1; {отметить, что событие наступило}
for <каждый процесс в ESBQUEUE> do
begin
<пометить процесс как готовый>;
<убрать процесс из очереди>
end;
<возвратить управление запрашивающему процессу>.
Если метод диспетчеризации основан на приоритетах, то для обработки сигнала используется другой алгоритм:
вместо прямой передачи управления активному процессу процедура SIGNAL должна сначала вызвать диспетчер, который передаёт управление процессу с наивысшим приоритетом, находящийся в данный момент в состоянии готовности.
Это означает, что в зависимости от приоритета процессы могут перехватывать управление у процессов с меньшим приоритетом.
Singularity
супер мега проект от Microsoft - новая операционная система Singularity. Microsoft решила с нуля попробовать написать ОСь используя "безопасное программирование", которое на корню будет пресекать баги различного рода. Для этого решили использовать "безопасные" языки программирования C#, Sing#, ну и кое-где си и ассемблер.
Главной особенностью операционки является модель SIP (Software-Isolated Process). Каждый процесс изолирован друг от друга, но сообщения между ними могут передаваться посредством двунаправленных, строго типизированных высокоуровневых каналов. Теперь что касается ПО. Сами исходники Singularity . Интересной особенностью является то, что есть возможность отладки ядра операционной системы, поэтому будет не лишне проинсталлировать комплект утилит для этого дела. Т.к. ОСь завязана на Framework'e, то и его необходимо будет поставить, если конечно же он у вас уже не стоит. Работать всё будет на виртуальной машине, поэтому ставим ещё систему виртуализации Microsoft Virtual PC 2007. Тем, кто уже сталкивался с виртуальными ОС, наверняка знаком такой продукт как VMware - это тоже самое, только от Microsoft. Если ещё будет желание попробовать написать первые программы или вири и тем самым прославиться, то ещё нужно поставить Microsoft Visual Studio 2005 или Microsoft Visual Studio 2008. На этом всё, больше ничего не понадобится.