Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Ответы на экзамен по ОС - файл Шпора.doc


Ответы на экзамен по ОС
скачать (275.9 kb.)

Доступные файлы (7):

Шпора.doc361kb.19.03.2010 00:29скачать
22.html15kb.19.03.2010 00:29скачать
3.html22kb.19.03.2010 00:29скачать
OS.log
OS.wcp
Thumbs.db
wclogo.gif3kb.19.03.2010 00:29скачать

Шпора.doc

1   2   3   4

^ 15. Методы выделения дискового пространства

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

Для каждой из методов записи директории соответствия символьного имени файла содержит указатель, следуя которому можно найти все блоки заданного файла. Простейший способ: хранить заданный файл как непрерывную последовательность блоков дисков. При непрерывном расположении файлы характеризуются адресом и длиной (блок). Файл, начинающийся с блока В, занимает потом блоки В+1, В+2 и т.д. Схема имеет два преимущества:

1) Ее легко реализовать, так как выяснение местонахождения файла сводится к вопросу, где находится первый блок.

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

Когда содержимое диска постоянно изменяется, данный метод нерационален. Поэтому этот способ распространен мало, в процессе эксплуатации диск представляет собой некоторую совокупность свободных и занятых фрагментов. Не всегда имеется подходящий по размеру свободный фрагмент для нового файла. Для стандартных файловых систем (compact disk) он вполне пригоден. Внешняя фрагментация может быть устранена за счет представления фалов в виде связного списка блоков дисков. Запись в директории содержит указатель на первый и последний блоки памяти. Каждый блок содержит указатель на следующий блок.




Эта диаграмма – хранение файла в виде связного списка списковых блоков. Внешняя фрагментация для данного метода отсутствует. Любой свободный блок может быть использован для удовлетворения запроса. Нет необходимости заранее знать размер файла. Он может расти неограниченно.

Связное выделение имеет существенные недостатки:

1) При прямом доступе к файлу для поиска i-го блока нужно осуществить несколько обращений к диску, последовательно считывая блоки от первого до i-1, что может потребовать много времени.

2) Этот способ не очень надежный. Наличие дефектного блока в списке приводит к потере инфы в оставшейся части файла и потенциальной потере дискового пространства, отведенного под этот файла.

3) Для указателя на следующий блок, внутри блока нужно выделить место, что не всегда удобно.

Ёмкость блока традиционно являющееся степенью 2 перестаёт быть степенью 2,т.к. указатель отбирает несколько байтов. Поэтому метод связного списка в чистом виде не используется.

Одним из вариантов предлагаемого способа является хранение указателей не в дисковых блоках, а в индексной таблице памяти, которая называется FAT (file allocation table). Главное достоинство данного подхода – по таблице размещения файлов можно судить о физическом соседстве блоков, располагающихся на диске. И при выделении нового блока легко найти свободный блок, находящийся поблизости от других блоков данного файла.

Минусом является необходимость хранения в памяти этой, довольно большой, таблицы. Наиболее распространенный метод выделения файла, блоков, диска – это связать с каждым файлом небольшую таблицу, называемую индексом дискриптера или индексным узлом, который перечисляет атрибуты и индексные адреса блоков, файла.

^ 16. Многоразовые операции.

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

Действия при выполнении многоразовых операций:

  1. Запуск процесса: из числа процессов, находящихся в состоянии «готовность», ОС выбирает один процесс для последующего исполнения. Для этого процесса ОС обеспечивает наличие оперативной памяти и информации, необходимой для его выполнения. Далее состояние процесса изменяется на «выполнение», восстанавливается состояние регистра и управление передается команде, на которую указывает программный счетчик. Все данные, необходимые для восстановления контекста, извлекаются из РСВ процесса, над которым совершается операция.

  2. Приостановка процесса: работа процесса, находящегося в состоянии исполнения, останавливается в результате прерывания; процессор автоматически сохраняет программный счетчик и нужные регистры, стеки этого процесса, а затем передает управление по его специальному адресу обработки данного прерывания. По этому адресу обычно располагается одна из частей ОС; она сохраняет динамическую часть системного и регистрового контекста процесса в его РСВ, переводит процесс в состояние «готовность» и приступает к обработке прерывания, т.е к выполнению действий, связанных с возникновением прерывания.

  3. Блокирование процесса: процесс блокируется, когда он не может продолжить работу, не дождавшись какого-либо события в вычислительной системе. Для этого он обращается к ОС с помощью определенного системного вызова. ОС обрабатывает системный вызов (инициализирует операцию ввода-вывода, вв/выв добавляет в очередь процессов и т.д.) и при необходимости, сохранив нужную часть контекста процесса, переводит ее в состояние ожидания.

  4. Разблокирования процесса: после возникновения в системе какого-либо события ОС нужно определить какое точно событие произошло. Затем ОС проверит, находится ли некоторый процесс в состоянии ожидания для данного события. Для находящегося переводит его в состояние «готовность», выполняя необходимые действия.

  5. Переключение контекста: Деятельность мультипрограммной ОС состоит из цепочек, выполняемых над различными процессами и сопровождающихся переключением процессора с одного процесса на другой. Для корректного переключения процессов с одного на другой необходимо сохранить контекст исполнявшихся процессов и восст., процесса, который будет переключен. Такая процедура сохранения и восстановления работоспособности процесса называется переключением контекста. Время, затраченное ПК, представляет собой накладные расходы, снижающие производительность системы и колеблется от 1 до 1000 мкс. Соответственно, сократить эти накладные расходы в современных ОС позволяет расширенная модель процесса, включающая в себя понятие thread of execution(Нити исполнения).

^ 17. Многоуровневые ОС.

В этом случае ОС составляют набор модулей, образующих иерархию между интерфейсом пользователя и аппаратным обеспечением.

5 интерфейс пользователя

4 управление вводом выводом

3 управление памятью

2 планирование задач

1 hardware3

Слоёные системы хорошо реализуются, тестир-ся, модифицируются. При необходимости м. заменить один слой, не трогая другой, но трудно правильно определить порядок слоёв и что к какому слою относится. Слоёные системы менее эфф-ны, чем монолитные, т.к. д/выполнения операций вв/выв необходимо послед-но проходить все слои от верхнего к нижнему.
^ 18. Многоуровневые очереди. Multilevel Queue.

Для сист., в кот. проц-сы м.б. отсортированы по разн. группам, был разработан др. класс алг-ов планир-ия. Для кажд. группы проц-ов созд-ся своя очередь проц-ов, находящ-ся в сост. «готовность»

К этим очередям приписыв-ся фиксир-ые приоритеты. Внутри этих очередей для планир-ия м. примен-ся самые разн. алг-мы. Напр, для больш. счётных проц-ов, не требующих взаимод-ия с юзером м. использ-ся алг-м FCFS. Для интерактивных проц-ов – алг-м RR. Подобный подход, получивший назв-ие многоуровневых очередей, повышает гибкость планир-ия: для проц-ов с разл. Хар-ми примен-ся наиболее подходящий алг-м.

^ Многоур-ые очереди с обратной свзью. Multilevel Feedback Queue.

Дальнейшим развитием алг-ма многоур-ых очередей явл-ся добавл-ие к нему механизма обратной связи. Здесь проц-с не постоянно приписан к опред. очереди, а м. мигрировать из одной очереди в др. в зависимости от своего поведения. Пусть проц-сы в сост. «готовность» организованы в 4 очереди. Планир-ие проц-са между очередями осуществл-ся на основе вытесняющего приоритетного механизма. Чем выше располаг-ся очередь, тем выше её приоритет. Проц-сы в очереди 1 не м. исполн-ся, если в очереди 0 есть хотя бы один проц-с. Проц-сы в очереди 2 не будут выбраны для исполн-ия, пока есть хоть один проц-с в очередях 0 и 1. Если при работе проц-са появл-ся др. проц-с к-л. более приоритетной очереди, исполняющийся проц-с вытесн-ся новым. Родившийся проц-с поступает в очередь 0. При выборе на исполн-ие он получает в своё распоряжение квант вр. размером 8 единиц.

Если продолжительность его времени непрерывного выполнения меньше этого кванта времени, процесс остаётся в очереди 0, в противном случае он переходит в очередь 1.

Для процессов из очереди 1 квант времени имеет величину 16, если он в процессе не укладывается в это время, то он переходит в очередь 2, если укладывается, то остаётся в очереди 1. В очереди 2 величина кванта времени = 32 ед. Если для непрерывной работы процесса и этого времени мало процесс посылается в очередь 3, для которой квантование времени не применяется. Чем больше значение продолжительности времени непрерывной работы, тем в менее приоритетную очередь он попадёт, но тем на большее процессорное время он может рассчитывать. Т.о. ч/з некоторое время все процессы, требующие малого времени работы процессора, окажутся в высоко приоритетных очередях, а все процессы, требующие большого расчёта – низкого приоритета.

Миграция процессов в обратном направлении может осуществляться по разным принципам. Например, после завершения ожидания ввода с клавиатуры процессы из очередей 1-2 и 3 могут перемещаться в очередь 0. После завершения дисковых операций, процессы могут перемещаться в очередь 1, а после завершения ожидания всех других событий из очереди 3 в очередь 2.

Перемещение процессов из очереди с низким приоритетом позволяет более полно учитывать изменение поведения процессов с течением времени.

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

  1. Количество очередей для процессов находящихся в состоянии готовности;

  2. Алгоритм планирования, действующий между очередями;

  3. Алгоритм планирования, действующий внутри очередей;

  4. Правило помещения родив-ся процесса в одну из очередей.

  5. Правило перевода процесса из одной очереди в другую.

^ 19. Модели передачи данных по каналам связи.

Существует 2 модели передачи данных по каналам связи:

1) поток вв/выв

2) сообщения

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

Информацией о расположении каналов в ОС обладает только процесс, создавший его. Этой информацией он может поделиться только со своими наследниками – процессами-потомками. Поэтому использовать канал для связи могут только процессы, имеющие общего предка. Однако, если разрешить процессу, создавшему канал, сообщать о его местоположении в системе другим процессам, например зарегистрировать его в ОС под определенным именем, то полученный объект принято называть именованным каналом – FIFO(named pipe). Именованный канал может использоваться для организации связи между любыми процессами в ОС.

В модели сообщений процессы налагают на передаваемые данные некоторую структуру. Весь поток информации они разделяют на отдельные сообщения, вводя между данными границы сообщений. Кроме того, к передаваемой информации могут быть присоединены адреса получателей и отправителей. Все сообщения могут быть одинакового фиксированного размера или переменной длины. В ВС используются разнообразные средства для передачи сообщений: очереди сообщений, гнезда. И потоковые линии связи и каналы сообщений всегда имеют буфер конечной длины. Емкость буфера для потоков данных измеряется в байтах, емкость буфера для сообщений измеряется в сообщениях.
^ 20. Мультипрограммирование в ОС.

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

При мультипрограммном режиме ОС отвечает за следующие операции:

1) Организация интерфейса между прикладными программами и ОС при помощи системных вызовов

2) Обеспечение средствами коммуникаций для обмена данными между заданиями

3) Планирование использования процессора заключается в организации очереди из заданий в памяти и выделения процессора одному из заданий

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

5) Реализация стратегии управления памятью, замещения и выборку информатии из памяти по-скольку память это ограниченные ресурсы

6) Организация хранения информации на внешних носителях в виде файлов и их защита от несанкционированного доступа

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

Мультипрограммная система обеспечивает возможность более эффективного использования системных ресурсов, но они ещё долго оставались пакетами. Появление электронных дисплеев решило эту проблему. Логическим расширением мультипрограммной системы стали системы разделения времени. В них ЦП переключались между заданиями не только во время операции ввода/вывода но и по происшествии определенного времени. эти переключения происходили достаточно часто, чтобы пользователи могли взаимодействовать со своими заданиями во время их выполнения, т.е интерактивно. Появлялась возможность работы нескольких пользователей на одной компьютерной системе. Чтобы уменьшить ограничение на количество пользователей, была использована идея неполного нахождения выполняемой программы в памяти. Основная часть программы находится на диске, а фрагмент, который необходим в данный момент, может быть загружен в ОП, а ненужный выкачан обратно на диск. Это реализуется с помощью механизма виртуальной памяти.

^ 21. Общая структура файловой системы:



Логическая подсистема:

- поддержка иерархической древовидной структуры

- системные вызовы, работающие с полным именем файла

- защита файлов.

^ Базисная подсистема:

- алгоритмы выделения блоков диска и соответствующие структуры данных

- менеджер свободного пространства

- системные вызовы, работающие с дескриптором файла

- таблицы открытых файлов

- монтирование файловых систем

- реализация разделяемых файлов

^ Нижний уровень – оборудование. В первую очередь, магнитные диски с подвижными головками, основные устройства внешней памяти, представляющие собой пакеты магнитных пластин, между которыми на одном рычаге передвигается пакет магнитных головок. Шагу движения пакета головок соответствует цилиндр магнитного диска. Цилиндры делятся на дорожки, а каждая дорожка размещается на одно и то же количество блоков т.о., что в каждый блок можно записать максимально одно и то же число байт. Т.о., для отдельных магнитных дисков нужно узнать № цилиндра, № поверхности, № блока на соответствующей дорожке и число байт, которые нужно записать/прочитать от начала этого блока. Т.о., диски м.б. разбиты на блоки фиксированного размера и можно непосредственно получить доступ к любому блоку.

Непосредственно с дисками взаимодействует часть ОС – система вв/выв, которая представляет в распоряжение файловой системы используемое дисковое пространство в виде непрерывной последовательности блоков фиксированного размера. Система вв/выв имеет дело с физическими блоками диска, которые характеризуются адресом, например, диск 2, цилиндр 75, сектор 11.

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

Логическая подсистема, используя структуру директорий, проверяет права доступа и вызывает базисную подсистему для получения доступа к блокам файла, после этого файл считается открытым, он содержится в таблице открытых файлов и прикладная программа получает в свое распоряжение дескриптор этого файла. В MS Windows он называется “handle”. Дескриптор файла является ссылкой на файл в таблице открытых файлов и используется в запросе прикладной программы на чтение/запись этого файла.

Запись в таблице открытых файлов указывает через систему выделения блоков диска на блоки данного файла. Если к моменту открытия файл используется другим процессом, т.е. содержится в таблице открытых файлов, то после проверки прав доступа, файл м.б. организован в совместный доступ, при этом новому процессу также возвращается дескриптор – ссылка на этот файл в таблице открытых файлов.
^ 22. Оверлейная структура (Overlay)

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

Организация структуры с перекрытием:

Program A Subroutine C

…… ……

Call B Call D

…… ……

Call C Call E



Можно поочередно загружать в память ветви АВ, АСD, ACE в программу. Коды ветвей Overlay структуры находятся на диске как абсолютные образы памяти и считываются драйвером Overlay при необходимости.

Для описания Overlay структуры используются специальный язык. (Overlay Description Language (ODL)) (.odl) Совокупность файлов исполняемой программы добавляются к файлу с расширением .odl., описывающих дерево вызовов внутри программы A – (B,C) C – (D,Е). В современных 32-х разрядных системах, где виртуальное адресное пространство измеряется гигабайтами, проблемы с нехваткой памяти решаются другими способами.

^ 23. Одноразовые операции.

Жизненный путь процесса в ПК начинается с его рождения. Любая ОС, поддерживающая концепцию процесса, должна обладать средствами для их создания. В очень простой системе все процессы могут быть порождены на этапе старта системы. Более сложные ОС создают процессы динамически по мере их необходимости. Инициатором могут выступать либо процесс пользователя, совершивший специальный системный вызов, либо сама ОС, т.е. тоже некоторый процесс. Процесс, инициировавший создание нового процесса, называется процессом родительским, а вновь созданный потомком. Процессы потомки могут в свою очередь порождать потомков. Все пользовательские процессы вместе с некоторыми процессами ОС принадлежат одному и тому же дереву этого процесса. Система заводит новый РСВ при рождении и начинает его заполнять. Новый процесс получает свой идентификационный номер. Число одновременно существующих процессов в ОС ограничено. Обычно, для выполнения своих функций, процесс-потомок требует ресурсов (памяти, файлов). Два подхода к их выделению: Новый процесс может получить свое распоряжение, некоторую часть родительских ресурсов, разделяя с процессом-родителем и другими процессами-потомками права на них. Или может получить свои ресурсы независимо от ОС. Информация у выделенных ресурсов заносится в РСВ. После наделения их ресурсами необходимо занести в его адресное пространство программный код, значение данных, установить программный счетчик.

^ 24. Операции над процессами.

Процесс не может перейти из одного сост. в др. самостоятельно. Изменением сост-й процессов занимается ОС, совершая операции над ними. Кол-во таких операций совпадает с кол-вом стрелок на диаграмме состояний. Удобно соединить их в 3 пары:

1)создание процесса - завершение процесса;

2)приостановка (перевод из сост. «исполнение» в сост. «готовность») - запуск (из сост. «готовность» в сост. «исполнение»);

3)блокир-ие процесса (перевод из сост. «исполнение» в сост. «ожидание») - разблокирование;

Сущ-ет ещё 1 операция, не имеющая пару: изменение приоритета процесса. Операции создания и завершения процесса явл-ся одноразовыми, т. к. применяются к процессу не более 1 раза. Все остальные операции, связанные с изменением сост. процесса (запуск или блокировка), как правило, явл-ся многоразовыми. ОС выполняет операции над процессами след. образом.

Чтобы ОС могла выполнять операции над процессам, каждый процесс представляется в ней некоторой структурой данных, содержащей информацию специф-ую д/данного процесса:

1) состояние, в котором нах-ся процесс;

2) программный счётчик процесса, т.е. адрес команды, кот. д.б. выполнена следующей;

3) содержимое регистров в процессорах;

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

5) учетные данные (id номер процесса, какой юзер инициировал процесс, общее время исполнения процесса данным процессором)

6) сведения об устройствах вв/выв, связанных с процессом; состав этой структуры, ее строение зависят от конкретной ОС.

^ 25. ОС с монолитным ядром.

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

^ 26. Основные понятия, концепции ОС.

В процессе эволюции возникло несколько важных понятий, концепций, которые стали неотъемлемой частью теории и практики ОС.

^ Системные вызовы. В любой ОС существует механизм для обращения пользовательских программ у услугам ядра ОС.

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

Прерывания. Прерывание – (событие) сигнал, генерируемый внешним устройством для немедленной реакции ЦП на событие(нажатие клавиши), либо для извещения о завершении асинхронной операции ввода/вывода. (конец чтения данных с магнитного диска в ОЗУ).

Каждый тип аппаратных прерываний имеет номер однозначно определяющий источник прерываний. Аппаратное прерывание – асинхронное событие, т.е. оно возникает вне зависимости от кода программы.

^ Исключительные ситуации. Исключительная ситуация – exception – это событие, возникающее при выполнении программной команды, которая по каким-то причинам не может быть выполнена до конца. Исключительная ситуация – синхронное событие. Исключительные ситуации бывают исправимые и неисправимые. Возникновение первых является нормальным явлением. Неисправимые исключительные ситуации возникают в результате ошибок в программе. В этих случаях ОС завершает выполнение такой программы.

Файлы. Файлы предназначены для хранения информации на внешних носителях, т.е. принято, что информация должна находится внутри файла. Под файлом понимают именованную часть пространства на носителе информации. Главная задача файловой системы скрыть особенности ввода/вывода и дать абстрактную модель файлов независимо от устройства.

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

Для манипулирования этими объектами в ОС имеются системные вызовы.

^ Процессы. Нити. Под процессом понимается экземпляр выполняющийся в ОС задачи со всеми ее данными. Понятие процессов как основных динамических объектов, над которыми системы выполняют опер-е действия явл-ся фундаментальными понятиями д/изучения работы ОС. Термины «прога» и «задание » предназначены д/описания статически неактивных объектов. Прога динамически активна. Д/выполнения проги ОС должна выделить определённое кол-во опер. памяти. Вместо терминов «прога» и «задание » используется термин «процесс». Понятие процесса хар-ет нелин-ую сов-ть набора исполняющих команд, связанных с ним ресурсов (выделенная д/исполнения память или адресное прост-во в стеке , использ-е файлы, устр. вв/выв и т.д.) и текущего момента его выполнения (значение регистра программного счётчика, сост-е стека и значение переменных),находящихся под управлением ОС. Не сущ-ет взаимнооднозначного соответствия м/у процессами и прогами, выполняемыми вычислительной системой.

В некот. ОС д/опред-я прог можно организовываться один, более одного процесса или один и тот же процесс м. послед-но исполнять неск. прог. Более того, процесс нах-ся под управлением ОС, поэтому в нём и выпол-ся часть кода её ядра (не нах-ся в исполнительном файле). Это происходит в случае специально запланированных прог-ми (напр., при исполнении сист-х вызовов), так и в непредусмотренных ситуациях(напр., при обраб-ке внеш. прерываний)

Была введена такая абстракция внутри понятия процесса – нить исполнения. Нити процесса разделяют его программный код, глобальные переменные и системные ресурсы, но каждая нить имеет свой собственный программный счетчик, свое содержимое регистров и свой стек.

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

^ 27. Основные функции классических ОС.

Можно выделить 6 основных функций, которые выполнили классические ОС:

  1. Планирование заданий и использование процессора

  2. Обеспечение программ средствами коммуникации и синхронизации

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

  4. Управление файловой системой

  5. Управление вводом выводом

  6. Обеспечение безопасности



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

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

1) занимаемая процессом память разбивается на несколько частей, например страниц.

2) логический адрес, т. е. логическая страница динамически транслируется в физический адрес

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

1) программа не ограничена объемом физической памяти.

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

3) объём ввода/вывода для выгрузки части программы на диск может быть меньше, чем в варианте классического Swapping.

В итоге каждая программа будет работать быстрее. Введение виртуальной памяти позволило решить другую важную задачу: обеспечения контроля доступа к отдельным сегментам памяти в частности: защиту пользовательских программ друг от друга и защиту ОС от пользовательских программ. Каждый процесс работает со своими виртуальными адресами, трансляцию которых физически выполняет аппаратура. Термин виртуальная память означает, что программист имеет дело с памятью отличной от реальной, размер которой значительно больше, чем размер оперативной памяти. Адреса, которые генерирует программа, называются виртуальными, и они формируют виртуальное адресное пространство. Известны чисто программные реализации виртуальной памяти, но широкое развитие получили схемы виртуальной памяти с аппаратной поддержкой. Каждая из 3-х схем управления памятью: страничная, сегментная, сегментно-страничная; пригодны для организации виртуальной памяти. Чаще всего используется сегментно-страничная модель, которая является синтезом страничной модели и идеи сегментации. Сегментная организация в чистом виде встречается редко. Передача информации между памятью и диском всегда осуществляется целыми страницами, а система поддержки страничной организации памяти называется paging.
^ 29. Понятие ОС.

ОС – программа, которая обеспечивает возможность рационального использования оборудования компьютера удобным для пользователя способом. ОС состоит:

  1. техническое обеспечение (Hardware): память, процессор, монитор, диски и др, объединённые магистральным соединением – шиной.

  2. вычислительная система, состоящая из ПО, которое делится на прикладное и системное

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

^ Слои ПО в компьютерной среде:

Под УТИЛИТАМИ понимают специальные системные программы с помощью которых можно обслуживать ОС, выполнять обработку данных, выполнять оптимизацию данных на носителе и т.д.

К утилитам относятся программа разбиения магнитных дисков на носители, программа форматирования, программа переноса основных системных данных. Утилиты могут работать только в соответствующей ОС. существует много точек зрения на то что такое ОС. Невозможно дать ей адекватное строгое определение. Проще сказать не что есть ОС, а для чего она нужна и что она делает.
1   2   3   4



Скачать файл (275.9 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации