- •1 Пара. Введение. Классификация, структура, функции и интерфейсы ос. Понятие операционной системы
- •История операционных систем
- •Типы ос:
- •Основные ос:
- •Структура операционной системы
- •Требования к современным операционным системам Расширяемость.
- •Переносимость.
- •Совместимость.
- •Надежность и отказоустойчивость.
- •Безопасность.
- •Производительность.
- •Понятие операционной системы (ос), цели ее работы. Классификация компьютерных систем Компоненты компьютерной системы
- •Классификация компьютерных архитектур
- •Основные компоненты операционной системы
- •Особенности ос для различных классов компьютерных систем. Ос реального времени. Ос для облачных вычислений Особенности ос для персональных компьютеров
- •Параллельные компьютерные системы и особенности их ос.
- •Симметричные и асимметричные мультипроцессорные системы
- •Распределенные компьютерные системы и особенности их ос
- •Кластерные вычислительные системы и их ос
- •Системы и ос реального времени
- •Карманные компьютеры (handhelds) и их ос
- •Функции операционных систем Основные
- •Дополнительные
- •Уровни абстракции ос.
- •Интерфейсы, виды, терминалы. Понятие интерфейса
- •Терминалы
- •Графический интерфейс пользователя.
Карманные компьютеры (handhelds) и их ос
К данному классу устройств, относятся карманные персональные компьютеры (КПК), или Personal Digital Assistants (PDA), и мобильные телефоны. Особенности и проблемы данного класса компьютеров следующие:
ограниченный объем памяти;
относительно медленные процессоры: для мобильного устройства типично ожидание выполнения простейшей команды в течение нескольких секунд, что неудобно;
маленький размер экрана мониторов (дисплеев), отсюда – необходимость в специализированном программном обеспечении для поддержки GUI;
В операционных системах и другом системном программном обеспечении для карманных и мобильных устройств приходится учитывать все эти ограничения, в частности, ограниченный объем памяти. В связи с этим целый ряд удобных повседневных программистских возможностей приходится для мобильных устройств запрещать (например, в JME нет вещественной арифметики).
Функции операционных систем Основные
Выполнение по запросу программ тех достаточно элементарных (низкоуровневых) действий, которые являются общими для большинства программ и часто встречаются почти во всех программах (ввод и вывод данных, запуск и остановка других программ, выделение и освобождение дополнительной памяти и др.).
Загрузка программ в оперативную память и их выполнение.
Стандартизованный доступ к периферийным устройствам (устройства ввода-вывода).
Управление оперативной памятью (распределение между процессами, организация виртуальной памяти).
Управление доступом к данным на энергонезависимых носителях (таких как жёсткий диск, оптические диски и др.), организованным в той или иной файловой системе.
Обеспечение пользовательского интерфейса.
Сетевые операции, поддержка стека сетевых протоколов.
Дополнительные
Параллельное или псевдопараллельное выполнение задач (многозадачность).
Эффективное распределение ресурсов вычислительной системы между процессами.
Разграничение доступа различных процессов к ресурсам.
Организация надёжных вычислений (невозможности одного вычислительного процесса намеренно или по ошибке повлиять на вычисления в другом процессе), основана на разграничении доступа к ресурсам.
Взаимодействие между процессами: обмен данными, взаимная синхронизация.
Защита самой системы, а также пользовательских данных и программ от действий пользователей (злонамеренных или по незнанию) или приложений.
Многопользовательский режим работы и разграничение прав доступа (см. аутентификация, авторизация).
Уровни абстракции ос.
ОС и приложений ядро ассемблер прошивка Оборудование
Каждый новый уровень абстракции определяет новые операции, в реализации которых используются операции предшествующего уровня M-1. Кроме того, уровень M-1 может иметь скрытые операции, используемые только на этом уровне и недоступные другим уровням.
На верхнем уровне абстракции прикладные программы пользователей обращаются к интерфейсу прикладного программирования (application programming interface – API), который представляет собой набор библиотечных функций. API структурирован по подсистемам, причем набор подсистем расширяем. Нижние уровни абстракции реализуют ядро ОС, выполняющее функции управления памятью, диспетчеризации задач и управления устройствами. Наконец, на самом низком уровне абстракции реализованы драйверы устройств.