- •1. Ос как виртуальная машина
- •2. Ос как система управления ресурсами
- •4. Определение распределенной ос
- •3. Определение сетевой ос
- •5. Функциональные компоненты сетевой ос
- •6. Сетевые службы и сетевые сервисы
- •7. Способы реализации сетевых служб и оболочек
- •8. Характеристика одноранговых ос
- •10. Требования к современным сетевым ос
- •12. Привилегированный и пользовательский режим
- •14. Переносимость ос
- •13. Многослойная структура ядра ос
- •15. Монолитное ядро
- •16. Модульное ядро
- •17. Особенности микроядерной архитектуры
- •18. Преимущества и недостатки микроядерной архитектуры
- •19. Выполнение системного вызова при классической организации ядра ос
- •20. Выполнение системного вызова при микроядерной организации ядра
- •21. Наноядро
- •22. Гибридное ядро
- •23. Гипервизор. Виртуальные машины
- •25. Реализация множественных прикладных программных сред
- •43. Планирование в системах реального времени
- •26. Мультипрограммирование в системах пакетной обработки
- •27. Мультипрограммирование в системах разделения времени
- •24. Двоичная совместимость и совместимость исходных текстов
- •31. Понятие «процесс»
- •32. Понятие «поток»
- •28. Мультипрограммирование в системах реального времени
- •30. Симметричная организация вычислительного процесса
- •29. Асимметричная организация вычислительного процесса
- •33. Информационные структуры для управления процессами и потоками
- •34. Статическое планирование потоков
- •35. Динамическое планирование потоков
- •36. Диспетчеризация потоков
- •37. Состояния потока
- •38. Преимущества и недостатки вытесняющих алгоритмов планирования
- •39. Преимущества и недостатки невытесняющих алгоритмов планирования
- •40. Алгоритмы планирования основанные на квантовании
- •41. Приоритетные алгоритмы планирования
- •42. Смешанные алгоритмы планирования
27. Мультипрограммирование в системах разделения времени
Повышение удобства и эффективности работы пользователя – цель систем разделения времени. В системах разделения времени пользователь может интерактивно работы сразу с несколькими приложениями и каждое приложение получает возможность общаться с пользователем.
ОС принудительно периодически приостанавливает приложения, не дожидаясь, когда они добровольно освободят процессор. Всем приложениям попеременно выделяется квант процессорного времени, и пользователи получают возможность поддерживать с ними диалог.
Системы разделения времени исправляют основной недостаток систем пакетной обработки — изоляцию пользователя-программиста от процесса выполнения его задач. Каждому пользователю в этом случае предоставляется терминал, с которого он может вести диалог со своей программой. Ни одна задача не занимает процессор надолго и время ответа оказывается приемлемым. Если квант небольшой, то у всех пользователей складывается впечатление, что каждый единолично использует машину.
Системы разделения времени обладают меньшей пропускной способностью, чем системы пакетной обработки. Также, производительность системы снижается из-за возросших накладных расходов вычислительной мощности на более частое переключение процессора с задачи на задачу. Критерием эффективности систем разделения времени является удобство и эффективность работы пользователя.
24. Двоичная совместимость и совместимость исходных текстов
Концепция множественных прикладных сред связана с нуждами конечных пользователей - возможностью операционной системы выполнять приложения других операционных систем. Такое свойство операционной системы называется совместимостью.
Двоичная совместимость и совместимость исходных текстов
Различают совместимость на двоичном уровне и совместимость на уровне исходных текстов. Приложения обычно хранятся в ОС в виде исполняемых файлов, содержащих двоичные образы кодов и данных. Двоичная совместимость достигается в том случае, когда можно взять исполняемую программу и запустить ее на выполнение в среде другой ОС.
Совместимость на уровне исходных текстов важна в основном для разработчиков приложений, в распоряжении которых эти исходные тексты имеются. Для конечных пользователей практическое значение имеет только двоичная совместимость, так как только в этом случае они могут использовать один и тот же коммерческий продукт в виде двоичного исполняемого кода в различных операционных средах.
Обладает ли операционные системы двоичной совместимостью или совместимостью исходных текстов, зависит от многих факторов. Главный из них - архитектура процессора, на котором работает новая ОС. Если процессор использует тот же набор команд (возможно, с некоторыми добавлениями) и тот же диапазон адресов, тогда двоичная совместимость может быть достигнута довольно просто. Для этого достаточно соблюдения следующих условий:
- вызовы функций API, которые содержит приложение, должны поддерживаться ОС;
- внутренняя структура исполняемого файла приложения должна соответствовать структуре исполняемых файлов ОС.
Сложнее достичь двоичной совместимости операционным системам, предназначенным для выполнения на процессорах разной архитектуры. Кроме соблюдения приведенных выше условий необходимо организовать эмуляцию двоичного кода, что приведет к довольно медленному выполнению программы.