
- •Содержание Оглавление
- •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. Идеология структуры и базовый состав ядра ос юникс.
32. Генеалогия ос юникс и основные этапы разработки
В настоящий момент имеется достаточно большое количество версий ОС UNIX и между ними имеются вполне определённые различия. В каждой из версий ОС UNIX имеются усовершенствования, но в основном она остаётся совместимой с предыдущей версией (совместимость снизу вверх). В своё время фирма BELL продавала лицензии на исходную архитектуру ОС UNIX фирмам – разработчикам программных средств. Фирмы – разработчики сами писали программное обеспечение и продавали ОС UNIX для работы на ПЭВМ других типов. При этом фирмы – разработчики платили по обязательствам и получали набор составляющих ОС UNIX программ на исходном символическом языке и право на её использование.
Оставалось только перевести эти программы на машинный язык используемой ПЭВМ, и получалась ОС UNIX специально для данной ПЭВМ. Но имелась сложность, состоящая в том, что набор машинных команд используемой ПЭВМ должен был позволять реализовать функции системы UNIX.
Фирме – разработчику программных средств разрешалось изменять архитектуру системы при условии совместимости с базовой системой, ориентированной на ПЭВМ фирмы DEC.
Прикладные программные средства, которые можно использовать на различных ПЭВМ должны быть переносимыми. Это качество позволяет переходить к другому типу ПЭВМ без переделки переносимых программ. Реально переносимых программ не так уж много поскольку в некоторых случаях это свойство оказывает влияние на систему в целом.
Система UNIX основанная на исходных программах, поставляемых фирмой BELL LABS иногда называются UNIX BASED (основанные на UNIX). Ни одна версия UNIX BASED не может называться UNIX, так как это название принадлежит BELL LABS. Существуют частичные лицензии, мало использующие или совсем не использующие программные продукты фирмы BELL LABS, или реализующие ОС, частично выполняющие функции UNIX, или имеющие только синтаксис UNIX и обладающие совсем другими характеристиками. В этом случае BELL LABS не гарантирует совместимости.
Переносимость программ разработанных в среде всех разновидностей UNIX не одинакова. Такие версии называются UNIX-Like. Такие ОС могут быть очень хороши, но не совместимы с UNIX и не обладать свойством переносимости.
33. Интерфейсы ос юникс
ОС UNIX можно представить в виде многоуровневой системы. На нижнем уровне аппаратное обеспечение, состоящее из ЦП, памяти, дисков, терминалов и других устройств. На этом железе работает сама ОС UNIX. Её функции заключаются в управлении аппаратным обеспечением и предоставлении всем программам интерфейсов системных вызовов.
Программы обращаются к системным вызовам помещая аргументы в регистры центрального процессора ( иногда в стек) и выполняя команду эмулированного прерывания для переключения из пользовательского режима в режим ядра и передачи управления в ОС UNIX.
Так как язык Си не позволяет написать команду эмулированного прерывания, это делают библиотечные функции. Эти процедуры написаны на ассемблере, но они могут вызываться из программ, написанных на Си.
ОС UNIX подчиняется стандарту соглашений, написанному специально для неё: POSIX – Portable Operating System – переносимая ОС. IX – юниксобразная.
POSIX 1003.1 определяет набор библиотечных процедур, которые должна предоставлять соответствующая данному стандарту система UNIX. Большая часть этих процедур обращается к системному вызову, но некоторые могут быть реализованы вне ядра. Идея стандарта POSIX заключается в том, что производитель программного обеспечения использует только процедуры, описанные в стандарте 1003.1, чем гарантирует работоспособность программы на любой версии UNIX, поддерживающей этот стандарт.
Что бы обратиться к системному вызову программа на Си должна вызвать соответствующую библиотечную процедуру. В стандарте POSIXопределён именно интерфейс библиотечных функций, а не интерфейс системных вызовов. То есть стандарт POSIX определяет библиотечные процедуры, соответствующие системным вызовам: параметры этих процедур, действия и результат, возвращаемый системе.
Все версии UNIX содержат большое количество стандартных программ, которые могут различаться в разных версиях. К таким программам относятся: компиляторы, редакторы, программы обработки текста и утилиты для работы с файлами.
Таким образом, подводя итог можно говорить о трёх интерфейсах в ОС UNIX:
Интерфейс системных вызовов.
Интерфейс библиотечных функций.
Интерфейс, создаваемый набором стандартных обслуживающих программ.
Именно третий интерфейс считается пользователями самой системой UNIX, на деле же этот интерфейс практически не имеет никакого отношения и легко может быть заменён. Например, введение графического интерфейса, ориентированного на использование мыши не потребовало никаких изменений в самой системе.