- •Содержание Оглавление
- •1. Основные действия операционной системы при управлении заданиями – программы функций, характеристика действий, конечный результат.
- •2. Способы реализации управления данными – подпрограммы ввода-вывода.
- •3. Понятие метода доступа (определение, состав).
- •4. Понятие буфера: методы отведения буферов и режимы передачи информации.
- •5. Способы организации данных и типы языков управления.
- •6. Понятие тупика, характеристика отношений, возникающих в системе.
- •7. Основная задача обнаружения тупика, основной способ определения состояния системы (редукция графа).
- •8. Факторы, обуславливающие сложность восстановления системы после тупика.
- •9. Главные стратегические принципы предотвращения тупиков (принципы j.W. Havendera).
- •10. Условия возникновения тупиков и основные направления исследования тупиков.
- •11. Предотвращение тупиков, обход тупиков.
- •12. Методы обнаружения тупиков и восстановления после тупиков.
- •13. Условие «ожидания дополнительных ресурсов » и его разрешение.
- •14. Условие неперераспределяемости ресурсов и его разрешение.
- •15. Условие «кругового ожидания » и его разрешение.
- •16. Понятие критической области и её значение для функционирования системы.
- •17. Описание формальной модели операционной системы.
- •18. Взаимосвязь ресурсов и процессов в многопроцессорной эвм.
- •19. Базовые операции над графом ресурсов и процессов и правила преобразования.
- •20. Схемы работы ос в различных режимах мультипрограммирования.
- •21. Понятие ос юникс. Основные преимущества и недостатки.
- •22. Основные центральные идеи ос юникс и их реализация.
- •23. Организация ввода-вывода в ос юникс, характерные особенности.
- •24. Понятие конвейера, связь с в/в, фильтр.
- •25. Понятие процесса в ос юникс, отличие от предыдущих ос, утилиты.
- •26. Компоненты ос: sccs и make
- •27. Планирование в ос юникс
- •28. Файловая система ос юникс: понятие, возможности, структурные особенности.
- •29. Структура файловой системы (на диске).
- •30. Ядро системы юникс – понятие и основные секции
- •31. Идеология структуры ядра ос юникс.
- •32. Генеалогия ос юникс и основные этапы разработки
- •33. Интерфейсы ос юникс
- •34. Определение и основные сведения об ос linux
- •35. Файловая система linux: организация, система работы и управления доступом к файлу.
- •36. Мультипрограммирование и мультиобработка – общее и особенное.
- •37. Основная цель операционной системы и критерии оптимизации.
- •38. Определение процесса и операции в иерархической операционной системе.
- •39. Отношения предшествования между процессами и развитие процесса в системе.
- •40. Понятие критической области.
- •41. Семафор, механизм синхронизации.
- •42. Компоненты ядра ос юникс и структура программного обеспечения.
- •43. Утилиты ос юникс.
- •44. Идеология структуры и базовый состав ядра ос юникс.
43. Утилиты ос юникс.
Пользовательский интерфейс включает в себя большое число стандартных обслуживающих программ – утилит. Их можно условно разделить на шесть категорий:
Команды управления файлами и каталогами.
Фильтры.
Средства разработки программ (текстовые редакторы, компиляторы и так далее).
Текстовые процессоры.
5. Программы системного администрирования.
6. Прочие утилиты.
Стандарт POSIX определяет синтаксис и семантику менее сотни таких программ, в основном относящихся к первым трём категория. Идея стандартизации этих программных компонентов заключается в возможности создания верхних оболочек. Эти оболочки в соответствии со стандартом должны работать на всех модификациях ОС UNIX.
44. Идеология структуры и базовый состав ядра ос юникс.
Общая идеология структуры ядра системы: 1 и 2-ой нижние уровни.
Системные вызовы |
Аппаратные и эмулированные прерывания |
||||||
Управление терминалом |
Сокеты |
Именование файла |
Отображение адресов |
Страничные прерывания |
Обработка сигналов |
Создание и завершение процессов |
|
Необработанный телетайп |
Обработанный телетайп |
Сетевые протоколы |
Файловые системы |
Виртуальная память |
|||
|
Маршрутизация |
Буферный КЭШ |
Страничный КЭШ |
Планирование процессов |
|||
Символьные устройства |
Драйверы сетевых устройств |
Драйверы дисковых устройств |
Диспетчеризация процессов |
||||
Аппаратура |
|||||||
Нижний уровень ядра состоит из драйверов устройств и диспетчеризации процессов. Все драйверы UNIX делятся на два класса: драйверы символьных устройств и драйверы блочных устройств. Основное различие между этими классами в том, что на блочных устройствах разрешается операция поиска, а на символьных нет. Технически сетевые устройства представляют собой символьные устройства, но обрабатываются иначе и поэтому образуют отдельный класс. Диспетчеризация процессов проводится при возникновении прерывания. В этом случае низкоуровневая программа останавливает выполнение работающего процесса, сохраняет его состояние в таблицах процессов ядра и запускает соответствующий драйвер. Диспетчеризация процессов проводится так же и тогда когда ядро завершает свою работу и следует снова запустить процесс пользователя. Программа диспетчеризации написана на ассемблере и представляет собой отдельную от процедуры планирования программу.
На более высоком уровне программы отличаются как по исполнению, так и по содержанию. Символьные устройства могут использоваться двояко. Некоторым программам , например текстовым редакторам, требуется только нажатие клавиши для ввода. Другое программное обеспечение принимает на входе уже готовую текстовую программу, позволяя пользователю редактировать её пока не будет нажата клавиша ввода. Сетевое программное обеспечение, чаще всего модульное, с поддержкой различных устройств и протоколов. Уровень выше сетевых драйверов выполняет функции маршрутизации при соблюдении обязательного соответствия между обрабатываемыми пакетами программ и устройствами или блоками управления протоколами. Большинство систем UNIX содержит в ядре полноценный маршрутизатор для сети INTERNET. И хотя его производительность ниже, чем у аппаратного маршрутизатора, это программа присутствует, так как появилась раньше. Над уровнем маршрутизации располагается стек с протоколами IP и прочими сетевыми. Над сетевыми протоколами располагается интерфейс сокетов, позволяющий программам создавать сокеты для отдельных сетей и протоколов. Для использования сокетов пользовательские программы получают дескрипторы файлов. Над драйверами дисковых устройств располагаются буферный и страничный КЭШ файловой системы. В некоторых ОС буферный кэш представляет фиксированную область памяти, а остальная используется для страниц пользователя. Однако во многих современных ОС этой фиксированной границы уже не существует и любая страница памяти может быть выделена для того что бы в данный момент удовлетворить систему.Выше расположены файловые системы и виртуальная память. Большинство версий UNIX поддерживает несколько файловых систем. Все они используют общий буферный КЕШ. Выше файловых систем располагается блок именования файлов. Над страничным КЭШем располагается виртуальная память. Здесь вся логика работы со страницами, программа отображения файлов на виртуальную память и высокоуровневая программа управления страничными прерываниями. Над диспетчером располагается планировщик процессов. Если потоками управляет ядро то управление располагается тоже здесь. Иногда управление потоками выносится в пространство пользователя. Над планировщиком расположена программа обработки сигналов и программа создания и завершения процессов. Самый верхний уровень это интерфейс системы. Сюда относятся интерфейс системных вызовов, вход для аппаратных и эмулированных прерываний, страничные прерывания, прерывания ввода/вывода и специфические ситуации процессора.
