Понятие прикладного программного интерфейса (Application Programming Interface). Назначение операционной системы и её функции. ОС управляет всеми устройствами компьютерной системы (процессорами, оперативной памятью, дисками, клавиатурой, монитором, принтерами, сетевыми устройствами и др.) и обеспечивает пользователя удобным интерфейсом для работы с аппаратурой. Общепринятого определения Операционной системы, вообще говоря, нет. Обычно ОС определяется через ее функции. Под ОС обычно понимают комплекс управляющих и обрабатывающих программ, который, с одной стороны, выступает как интерфейс между аппаратурой компьютера и пользователем с его задачами, а с другой - предназначен для наиболее эффективного использования ресурсов вычислительной системы и организации надежных вычислений. Другими словами, две основные функции (назначение) ОС: 1) предоставлять пользователю некую расширенную виртуальную машину, с которой легче работать (легче программировать), чем непосредственно с аппаратурой реального компьютера или реальной сети; Для пользователя (приложения) работа с различными ресурсами (процессор, память, диски, периферийные устройства) выглядит так, как будто эти ресурсы находятся в его полном распоряжении, при этом в одной системе может выполняться одновременно несколько приложений, каждое со своим собственным набором ресурсов. В этом смысле говорят, что ОС реализует виртуальную машину, предоставляя приложениям средства многозадачности. 2) управлять ресурсами вычислительной системы. Поэтому в специальной литературе ОС представляется всегда двояко: 1) как расширенная виртуальная машина и 2) как система управления ресурсами. Функции ОС · прием от пользователя (оператора) заданий или команд, сформулированных на соответствующих языках, и их обработка; · загрузка в ОП программ и их исполнение; · инициация программы (передача ей управления); · прием и исполнение программных запросов на запуск, приостановку, остановку других программ; организация взаимодействия между задачами; · идентификация всех программ и данных; · обеспечение работы системы управления файлами и/или систем управления БД; · обеспечение режима мультипрограммирования (многозадачности); · планирование и диспетчеризация задач; · обеспечение функций по организации и управлению операциями ввода/вывода; · удовлетворение жестким ограничениям на время ответа в режиме реального времени (для соответствующих ОС); · управление памятью, организация виртуальной памяти; · организация механизмов обмена сообщениями и данными между выполняющимися программами; · защита одной программы от влияния другой; обеспечение сохранности данных; · аутентификация, авторизация и другие средства обеспечения безопасности; · предоставление услуг на случай частичного сбоя системы; · обеспечение работы систем программирования; · параллельное исполнение нескольких задач. Функции ОС автономного компьютера обычно группируются в соответствии с типами локальных ресурсов, которыми управляет ОС. Такие группы называют подсистемами. Наиболее важные - подсистема управления процессами,
- подсистема управления памятью,
- подсистема управления файлами,
- подсистема управления внешними устройствами,
- подсистема пользовательского интерфейса,
- подсистема защиты данных и администрирования.
Замечание. Часто под ОС обычно понимается то ПО, которое запускается в режиме ядра (привилегированном режиме, режиме супервизора). Понятие прикладного программного интерфейса (Application Programming Interface). Прикладной программный интерфейс (application programming interface, API) - это описание способа, который позволяет какому-либо фрагменту ПО обращаться к другой программе за получением сервиса. Прикладной программный интерфейс (англ. Application Programming Interface , API ) - набор определений взаимодействия разнотипных программ. API - это обычно (но не обязательно) метод абстракции между низкоуровневым и высокоуровневым программным обеспечением. Определение прикладного программного интерфейса API Одним из самых распространенных назначений API является предоставление набора широко используемых функций , например для рисования окна или иконок на экране. Программисты используют преимущества API в функциональности, так им не приходится разрабатывать все с нуля. API является абстрактным понятием - программа, которая предлагает некоторое API, часто называют реализацией ( англ. implementation ) данного API. Во многих случаях API является частью набора разработки программного обеспечения , одновременно, набор разработки может включать как API, так и другие инструменты / аппаратное обеспечение , так что эти два термина не являются взаимозаменяемыми. Высокоуровневые API часто проигрывают y гибкости. Выполнение некоторых функций более низкого уровня становится гораздо сложнее, или даже невозможным. Примеры API Windows API OpenGL DirectX GDI MARF |