- •Состав по Вычислительной Системы
- •Определение понятия ос
- •Структура и организация системы программирования
- •Однозадачные и пакетные мониторы
- •Мультипрограммные пакетные ос
- •Диалоговые многопользовательские ос
- •Ос реального времени
- •Принцип модульности и его использование при построении ос. Соглашение о связях между модулями
- •Принцип функциональной избирательности
- •Виртуализация в ос. Виртуализация процессов и системная виртуализация.
- •Командный интерфейс ос
- •Принципы параметрической настраиваемости и функциональной избыточности ос
- •14. Преобразование адресов в вс
- •15. Построение загрузочного модуля простой структуры
- •16. Загрузочный модуль оверлейной структуры.
- •17. Загрузочный модуль динамической структуры
- •18. Однократно используемые, повторно используемые и повторно входимые программные модули
- •19. Сопрограммы
- •20. Структура и организация управляющей программы ос
- •21. Монолитная и микроядерная архитектуры ос.
- •22. Оценка времени простоя цп в мультипрограммном режиме
- •23. Управление памятью, распределенной статическими разделами.
- •24. Управление памятью, распределенной динамическими разделами.
- •25. Способы уменьшения фрагментации оп.
- •Распределение памяти перемещаемыми разделами.
- •Страничное распределение.
- •Сегментное распределение памяти.
- •26. Управление страничной памятью по запросам.
- •27. Методы замещения страниц fifo, lru.
- •28. Явление пробуксовки в страничных системах и стратегия рабочего множества.
- •29. Управление памятью с сегментным распределением.
- •30. Управление памятью с сегментно-страничным распределением.
- •31. Понятие процесса. Представление процессов в ос.
- •32. Понятие ресурса. Виды ресурсов.
- •33. Алгоритмы диспетчеризации процессов: fifo, равномерное циклическое квантование.
- •34. Алгоритмы диспетчеризации процессов с обратной связью.
- •34. Алгоритмы диспетчеризации процессов, применяемые в ос реального времени.
- •36. Взаимодействие и синхронизация процессов. Проблема "критической секции".
- •Естественный параллелизм.
- •Логический параллелизм.
- •37. Взаимодействие и синхронизация процессов. Проблема "поставщик-потребитель".
- •38. Взаимодействие и синхронизация процессов. Проблема "читатели-писатели".
- •40. Механизмы синхронизации: post/wait
- •41. Синхронизация посредством обмена сообщениями.
- •42. Тупики в ос. Модель Холта.
- •43. Методы обнаружения, восстановления и предотвращения тупиков.
- •44. Прямой и косвенный ввод-вывод.
- •45. Монопольно используемые, разделяемые и виртуальные устройства.
- •3. Виртуальные устройства
- •2. Разделяемые устройства.
- •46. Планирование запросов для последовательно-разделяемых устройств
- •47. Физическая система вв-в
- •49. Организация ввода-вывода в диалоговой системе (прямой вв-в)
- •50. Логическая система вв-в
- •51. Буферизация
- •52. Простая и обменная буферизация
- •53. Функции системы управления данными
- •54. Организация доступа к информационному ресурсу
- •55. Разграничение полномочий пользователя в ос.
- •56. Управление оп в unix
- •57. Управление процессами в unix
- •60. Управление вводом/выводом в unix
Структура и организация системы программирования
Текст программы ->текстовый редактор - >запись исходного модуля на диск
- >компилятор - >диагностическая распечатка и объектный модуль *.obj
Библиотека объектных модулей -> Компоновшик LINK- >map (карта модуля) и загрузочный модуль (*.exe, *.com).
-
Таблица внешних символов
Машинный код
Таблица внешних символов содержит таблицу внешних имен и таблицу внешних ссылок. Таблица внешних имен – имена и адреса всех функций, которые видны из других модулей (public). Таблица внешних ссылок содержит имя переменной и адрес поля команды (extern), где происходит обращение к этой переменной.
Пример: extern name
Mov AX, name
(записали адрес!)
Работа линковщика:
Obj1 Obj2
|
|
|
|
Записывает таблицу внешних символов obj1
Пересчитывает адрес для obj2 (не 0, а n+1)
Объединяет таблицу внешних имен obj1 и obj2
Анализирует таблицу внешних ссылок: каждое имя из таблицы внешних ссылок ищем в таблице внешних имен, если нашли, то там есть адрес имени (уже измененный линковщиком), и этот адрес сохраняем в то поле, адрес которого есть в таблице внешних ссылок.
0 |
Код obj1 |
Int name |
n+1 |
Код obj2 |
Extern name Mov ax,name |
Отладчик берет загрузочный модуль. Существует 2 режима: release и debug. Debug работает на уровне имен – строит свои таблицы. Загрузочный модуль начинается с нулевого адреса, в нем могут быть такие переменные, которые неизвестны, пока его не загрузят в основную память
Пример: mov AX, seg DATA
mov DS, AX
Адрес сегмента данных неизвестен, пока не загрузится в основную память. Загрузчик должен изменить адреса. Строится таблица, где указываются адресно-зависимые константы.
ОП |
Системная таблица PSP |
Код |
Однозадачные и пакетные мониторы
Структура однопрограммной ОС
Состав однопрограммной системы:
Процессор командного языка, который выполняет команды и командные файлы
Система управления внешними устройствами
Файловая система
Характерные свойства однопрограммной ОС:
В системе выполняется одна задача, поэтому все ресурсы отдаются этой задаче и когда она заканчивается, ресурсы освобождаются
Переключение между задачами осуществляет пользователь
Для работы с этой системой программист должен был составить задание на языке управления заданиями JCL.
Структура пакетного монитора
Состав однопрограммной системы:
Управление потоком заданий
Система управления внешними устройствами
Файловая система
Характерные свойства однопрограммной ОС:
В системе выполняется одна задача, поэтому все ресурсы отдаются этой задаче и когда она заканчивается, ресурсы освобождаются
Переключение между задачами осуществляет программа
