Спонсор: Microsoft
Опубликован: 13.11.2010 | Уровень: для всех | Доступ: платный | ВУЗ: Санкт-Петербургский государственный университет
Лекция 6:

Обзор функций ОС: управление памятью, файлами, процессами, сетями, командными интерпретаторами, сервисы ОС, системные вызовы. Уровни абстракции ОС. Архитектура UNIX и MS-DOS

< Лекция 5 || Лекция 6: 12345 || Лекция 7 >

Краткие итоги

Основная память – большой массив слов или байтов. Байты в слове могут нумероваться двумя способами, по которому различают big endian- и little endian – архитектуры. Задачи ОС по управлению памятью – отслеживание, какие области памяти используются какими процессами, стратегия загрузки процессов в основную память, выделение и освобождение памяти.

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

Вторичная память (например, на диске) используется как расширение основной памяти. ОС управляет свободной дисковой памятью, выделяет дисковую память и выполняет диспетчеризацию дисков.

ОС поддерживает работу в распределенной системе (сети) – сетевые протоколы, взаимодействие с общими сетевыми ресурсами, удаленный запуск программ.

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

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

Основные сервисы ОС – исполнение программ, поддержка ввода-вывода, работа с файловой системой, коммуникация, обнаружение ошибок.

Дополнительные функции ОС – распределение ресурсов, ведение статистики, защита.

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

MS DOS – однозадачная операционная система. Одновременно система обрабатывает только одну задачу, размер памяти которой не может превышать 640 килобайт.

UNIX, в отличие от MS DOS, поддерживает мультипрограммирование, т.е. может одновременно обрабатывать несколько задач и хранить их в памяти.

Коммуникация между процессами может осуществляться с помощью передачи сообщений или через общую область памяти.

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

В архитектуре MS DOS нет явного разделения на модули. Различаются уровень прикладной программы, резидентной системной программы, драйверы устройств MS DOS, драйверы устройств ROM BIOS.

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

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

Набор для практики

Вопросы

  1. Что такое основная (оперативная) память?
  2. Что такое архитектуры памяти big endian и little endian ми в чем различие между ними?
  3. Сохраняется ли состояние основной памяти после завершения программы или при отключении питания?
  4. Какие действия по управлению основной памятью выполняет ОС?
  5. Что такое файл?
  6. Что такое набор данных?
  7. Какие действия по управлению файлами и директориями выполняет ОС?
  8. Что такое директория?
  9. Что такое путь к файлу?
  10. Какие действия по управлению вторичной памятью выполняет ОС?
  11. Что такое распределенная система?
  12. Что такое сетевой протокол?
  13. Какие действия по управлению распределенной системой выполняет ОС?
  14. Каковы преимущества доступа к общим ресурсам в сети?
  15. Что такое защита и какие действия по защите данных, программ и ресурсов выполняет ОС?
  16. Что такое авторизация?
  17. Что такое командный интерпретатор?
  18. Какие виды команд имеются в командном языке ОС?
  19. Какие виды сервисов предоставляет ОС?
  20. Какие дополнительные функции выполняет ОС?
  21. Что такое системный вызов?
  22. Какими способами могут передаваться параметры системному вызову?
  23. Какие виды системных вызовов Вы знаете?
  24. Как организовано распределение памяти в MS DOS?
  25. Как организовано распределение памяти для нескольких задач в UNIX?
  26. Каковы способы реализации коммуникационных моделей взаимодействия между процессами?
  27. Что такое системные программы и какие функции они выполняют?
  28. Какова архитектура MS DOS?
  29. Какова архитектура UNIX?
  30. Что такое уровни абстракции и каким образом облегчается разработка ОС на основе уровней абстракции?

Упражнения

  1. Пусть список свободной основной памяти в системе содержит 100 элементов по 1000 слов каждый. От процесса поступило 100 запросов на области памяти по 995 слов. Каково в результате будет состояние памяти? Каким термином обозначается подобная ситуация?
  2. Пусть в директории имеется ссылка на файл под именем "F". Пользователь записал под этим же именем в директорию ссылку на другой файл. Что произойдет с первым файлом?
  3. Могут ли в одной директории быть две ссылки под одним и тем же именем (например, "A")?
  4. Имеется локальная сеть из трех компьютеров. Спланируйте распределение "обязанностей" между ними в сети: хранение файлов, запуск программ, предоставление принтера, обслуживание электронной почты, Web-сервер.
  5. Предложите систему защиты от нежелательных обращений через сеть: она должна распознавать враждебные IP-адреса и не допускать обращений с этих адресов к Вашей локальной сети.
  6. Какой командой UNIX можно защитить Ваш файл f.txt в текущей директории от нежелательного чтения или изменения другими пользователями?
  7. Какая команда служит в системе Solaris для удаленного входа на машину aphrodite в Вашей локальной сети?
  8. Назовите системные программы, используемые Вами постоянно при работе в Вашей любимой операционной системе на Вашем персональном компьютере.
  9. Объясните, почему при использовании уровней абстракции не рекомендуется обращение из модулей уровня N к модулям уровня ниже N-1.

Темы для курсовых работ, рефератов, эссе

  1. Обзор архитектур основной памяти и способов адресации в компьютерных системах (реферат).
  2. Обзор файловых систем и методов управления файлами в операционных системах (реферат).
  3. Реализуйте с помощью обычных файлов иерархию директорий и операции над директориями. Ссылки на файлы в элементах реализуемых Вами директорий храните в символьном виде. Особое внимание уделите эффективной реализации поиска файла по символьному пути к нему (курсовая работа).
  4. Обзор систем защиты в операционных системах (реферат).
  5. Обзор методов организации системных вызовов и передачи им параметров в операционных системах (реферат).
  6. Обзор и сравнение командных языков и командных интерпретаторов в системе UNIX (реферат).
  7. Архитектура и возможности операционной системы MS DOS (реферат).
  8. Архитектура и возможности операционной системы UNIX (реферат).
  9. Обзор коммуникационных моделей процессов в операционных системах (реферат).
  10. Обзор видов и возможностей системных программ в операционных системах (реферат).
< Лекция 5 || Лекция 6: 12345 || Лекция 7 >
Василий Четвертаков
Василий Четвертаков
Владислав Нагорный
Владислав Нагорный

Подскажите, пожалуйста, планируете ли вы возобновление программ высшего образования? Если да, есть ли какие-то примерные сроки?

Спасибо!

Константин Леденев
Константин Леденев
Россия
Олег Равков
Олег Равков
Россия