Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Full_OS (1).doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
6.1 Mб
Скачать

3.Задача

В компьютере есть кэш, основная память и диск, который используется для организации виртуальной памяти. Если слово, к которому производится обращение находится в кэше, для доступа к нему требуется 2 ns. Если это слово находится в основной памяти, но отсутствует в кэше, то оно сначала загружается в кэш за 10 ns, а затем к нему производится обращение. Если нужного слова нет в памяти, то чтобы найти его на диске и загрузить в основную память требуется 12 ms; еще 10 ns нужны, чтобы скопировать его в кэш, и только затем к этому слову производится обращение. Результативность обращений к кэшу равна 0,9, а результативность обращений к основной памяти – 0,6.

Т ребуется определить среднее время, которое требуется для доступа системы к нужному ей слову.

Среднее время = Время обращения к КЭШу*результативность обращения к КЭШу + (1- результативность обращения к КЭШу)*((время обращения к КЭШу+время обращения к памяти)*результативность обращения к памяти+(1- результативность обращения к памяти)*(время загрузки слова в память + время для копирования в КЭШ + время для доступа к КЭШу)

При вычисления не забудьте перевести ms в ns:

1 ms = 1000 ns  12 ms=12000 ns

Посчитаем: 2*0,9+0,1*((10+2)*0,6+0,4*(12000+10+2) = 1,8+481, 26=483,06

Ответ: Среднее время, которое требуется для доступа системы к нужному ей слову составляет 483,06 ns

Билет 3

1.Концепция процессов и потоков. Задания, процессы, потоки (нити), волокна и их характеристика. Взаимосвязь между заданиями, процессами, потоками и волокнами.

2. Свопинг и виртуальная память. Методы реализации виртуальной памяти. Сравнительная оценка методов и их применимость в современных компьютерах.

1.Концепция процессов и потоков. Задания, процессы, потоки (нити), волокна и их характеристика. Взаимосвязь между заданиями, процессами, потоками и волокнами.

Р1

Р2

Р3

Р4

Р5

Название

Описание

Задание

Набор процессов с общими квотами и лимитами

Процесс

Контейнер для ресурсов и потоков

Поток

Исполнение кода в процессе

Волокно

Облегченный поток, полностью управляемый в пространстве пользователя

2. Свопинг и виртуальная память. Методы реализации виртуальной памяти. Сравнительная оценка методов и их применимость в современных компьютерах.

Виртуализация оперативной памяти осуществляется совокупностью аппаратных и программных (ОС) средств вычислительной системы автоматически без участия программиста и не сказывается на работе приложения. Методы виртуализации памяти: свопинг (swapping), виртуальная память (virtual memory).

Достоинства свопинга: малые затраты времени на преобразование адресов в кодах программ. Недостатки: избыточность перемещаемых данных, замедление работы системы, неэффективное использование памяти, невозможность загрузить процесс, адресное пространство которого превышает объем свободной оперативной памяти.

Недостатки виртуальной памяти: необходимость преобразования виртуальных адресов в физические, сложность аппаратной и программной (ОС) поддержки.

Методы реализации виртуальной памяти:

-Страничная виртуальная память – организует перемещение данных между ОП и диском страницами – частями виртуального адресного пространства фиксированного и сравнительно небольшого размера.

-Сегментная виртуальная память предусматривает перемещение данных сегментами – частями виртуального адресного пространства произвольного размера, полученными с учетом смыслового значения данных.

-Сегментно-страничная виртуальная память использует двухуровневое деление: виртуальное адресное пространство делится на сегменты, а затем сегменты делятся на страницы. Единицей перемещения данных является страница.

-Для временного хранения сегментов и страниц на диске отводится специальная область – страничный файл или файл подкачки (paging file).

Вопрос

Страничная

Сегментация

Нужно ли программисту знать о том, что используется эта техника?

нет

да

Сколько в системе линейных адресных пространств?

1

много

Может ли суммарное адресное пространство превышать размеры физической памяти?

Да

да

Возможно ли разделение процедур и данных, а также раздельная защита для них?

нет

да

Легко ли размещаются таблицы с непостоянными размерами?

нет

да

Облегчен ли совместный доступ пользователей к процедурам?

нет

да


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

R1

R2

R3

R4

2

1

0

0

3.Задача

Вектор доступных ресурсов

R1

R2

R3

R4

R1

R2

R3

R4

R1

R2

R3

R4

0

0

1

2

0

0

1

2

0-0=0

0-0=0

1-1=0

2-2=0

2

0

0

0

2

7

5

0

2-2=0

7-0=7

5-0=5

0-0=0

0

0

3

4

6

6

5

6

6-0=6

6-0=6

5-3=2

6-4=2

2

3

5

4

4

3

5

6

4-2=2

3-3=0

5-5=0

6-4=2

0

5

3

2

0

6

5

2

0-0=0

6-5=1

5-3=2

2-2=0


R1

R2

R3

R4

R1

R2

R3

R4

R1

R2

R3

R4

0

0

0

0

0

0

0

0

0

0

0

0

2

0

0

0

2

7

5

0

0

7

5

0

0

0

3

4

6

6

5

6

6

6

2

2

2

3

5

4

4

3

5

6

2

0

0

2

0

5

3

2

0

6

5

2

0

1

2

0

2.Определяем процесс, который при данном количестве свободных ресурсов может завершиться. Это процесс № 1.

Т.к. ему вообще не обходимо ресурсов. Теперь вектор доступных ресурсов имеет вид

R1

R2

R3

R4

4

9

9

8

6

9

9

8


R1

R2

R3

R4

2

1

1

2


Следующим может быть выполнен процесс 4 (требует две единицы ресурса 1 и две единицы ресурса 4 , которые система может предоставить).

Вектор доступных ресурсов

R1

R2

R3

R4

4

4

6

6

И т.д. затем сможет завершиться 5, 2 и 3 процессы. Векторы доступных ресурсов для них. Существует порядок планирования, при котором может завершиться каждый процесс. Вывод: система находится в безопасном состоянии.

3. Для возникновения ситуации взаимоблокировки должны выполняться 4 условия:

  1. условие взаимного исключения (каждый ресурс либо принадлежит дному процессу, либо свободен)

  2. условие удержания и ожидания (процессы, удерживающие полученные ранее ресурсы, могут запрашивать новые ресурсы)

  3. условие отсутствия принудительной выгрузки ресурса (процесс сам должен освободить ресурс)

  4. условие циклического ожидания (должна существовать круговая последовательность из двух и более процессов, каждый из которых ждет доступа к ресурсу, удерживаемому другим процессом)

Мы полагаем, что первые 3 условия в системе выполняются. Остается определить находится ли система в тупиковой ситуации. Отвечая на предыдущий вопрос, мы показали, что существует стратегия распределения ресурсов, при которой каждый процесс может быть завершен за конечное время. Следовательно, при данном распределении и требованиях ресурсов система не находится в состоянии взаимоблокировки.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]