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