Файл: Функции операционных систем персональных компьютеров (Основные функции, которые выполняет операционная система).pdf
Добавлен: 30.06.2023
Просмотров: 180
Скачиваний: 2
СОДЕРЖАНИЕ
Глава 1 Характеристика операционных систем
1.1 Функциональные характеристики ОС
1.3 Как проходит работа операционной системы
1.4 Как производится загрузка ОС
Глава 2 Основные функции, которые выполняет операционная система.
2.4 Управление оперативной памятью
Введение
Сразу после создания первых компьютеров процесс взаимодействия с ними был очень сложным. Далеко не каждый человек мог пользоваться компьютером. Почти для каждого конкретного случая его использования приходилось каждый раз создавать алгоритм необходимых действий. При этом, алгоритм надо было еще и формировать в четком и понятном компьютеру виде. Малейшие ошибки или отклонения от установленных норм приводили к неправильной его работе.
Постепенно компьютерная техника и программы для нее развивались. На определенном этапе этого развития возникли своеобразные суперпрограммы, основным назначением которых было максимальное упрощение взаимодействия человека и компьютера. Безошибочно интерпретируя простые действия человека в понятные компьютеру команды, они давали возможность пользователю в очень простой и наглядной форме буквально пальцем указывать компьютеру что ему необходимо делать.
Сегодня такие суперпрограммы называются операционными системами (сокращенно - ОС) и именно благодаря им компьютерная техника получила такое широкое распространение.
Тема работы: Функции операционных систем персональных компьютеров.
Цель работы: Функции операционных систем персональных компьютеров.
Задачи работы: изучить
Состав ОС
Классификацию ОС
Функции ОС
Глава 1 Характеристика операционных систем
1.1 Функциональные характеристики ОС
Операционная система (ОС) является системным программным обеспечением, благодаря которому приводится в действие технические средства компьютера. Это программное обеспечение координирующее работу ЭВМ и производящее управление другими программными модулями посредством скоординированной последовательности операций.
Функциональные характеристики ОС:
- Осуществление работы компьютера, в том числе и персонального и его периферийных устройств по принципу ввода/вывода информации;
- Обеспечивает систему, организовывающую и хранящую файлы;
- Организовывает взаимодействие пользователя и компьютера.
Операционные системы также включают в себя множество программных продуктов, таких как общие системные службы, библиотеки и интерфейсы прикладного программирования (API), которые разработчики могут использовать для написания программ, работающих в операционной системе.
Операционная система находится между приложениями, которые Вы запускаете, и оборудованием, используя аппаратные драйверы в качестве интерфейса между ними. Например, когда приложение хочет что-то напечатать, оно переносит эту задачу в операционную систему. Операционная система отправляет инструкции на принтер, используя драйверы принтера для отправки правильных сигналов. Приложению, которое печатает, не нужно заботиться о том, какой принтер у Вас есть, или понять, как он работает. ОС обрабатывает детали.
ОС также обрабатывает многозадачность, выделяя аппаратные ресурсы среди нескольких запущенных программ. Операционная система контролирует, какие процессы выполняются, и распределяет их между различными ЦП, если у Вас есть компьютер с несколькими процессорами или ядрами, позволяя нескольким процессам работать параллельно. Он также управляет внутренней памятью системы, выделяя память между запущенными приложениями.
Операционная система — это одна большая часть программного обеспечения, которая отвечает за многое. Например, операционная система также контролирует файлы и другие ресурсы, к которым могут обращаться программы.
Большинство программных приложений написано для операционных систем, что позволяет операционной системе делать много работы. Например, при запуске Minecraft Вы запускаете его в операционной системе. Minecraft не должен точно знать, как работает каждый отдельный аппаратный компонент. Minecraft использует различные функции операционной системы, а операционная система переводит их в низкоуровневые аппаратные инструкции.
Читайте также Как узнать, какая видеокарта (GPU) установлена на ПК
Операционные системы предназначены не только для ПК
Когда мы говорим, что «компьютеры» запускают операционные системы, мы не просто имеем в виду традиционные настольные ПК и ноутбуки. Ваш смартфон — это компьютер, как и планшеты, смарт-телевизоры, игровые консоли, смарт-часы и маршрутизаторы Wi-Fi. Amazon Echo или Google Home — это компьютерное устройство, работающее под управлением операционной системы.
Знакомые настольные операционные системы включают Microsoft Windows, Apple MacOS, Google Chrome OS и Linux. Основными операционными системами для смартфонов являются iOS от Apple и Android от Google.
Другие устройства, такие как маршрутизатор Wi-Fi, могут запускать «встроенные операционные системы». Это специализированные операционные системы с меньшим количеством функций, чем имеет обычная операционная система, разработанная специально для одной задачи — например, для работы с маршрутизатором Wi-Fi, навигации или управления банкоматом.
Где заканчиваются операционные системы и начинаются программы
Операционные системы также включают другое программное обеспечение, включая пользовательский интерфейс, который позволяет людям взаимодействовать с устройством. Это может быть рабочий стол на ПК, сенсорный интерфейс на телефоне или голосовой интерфейс на цифровом помощнике [11].
Операционная система — это большое программное обеспечение, состоящее из множества различных приложений и процессов. Линия между тем, что является операционной системой и что такое программа, может иногда быть немного размытой. Точного официального определения операционной системы нет.
Например, в Windows приложение File Explorer (или Windows Explorer) является неотъемлемой частью операционной системы Windows — оно даже обрабатывает отрисовку рабочего интерфейса — и приложение, работающее в этой операционной системе.
1.2 Состав ОС
- Ядро;
- Командный модуль;
- Комплекс драйверов;
- Сервисные утилиты;
- Оболочка.
Операционная система (ОС) является системным программным обеспечением, оно приводит в действие всю техническую составляющее любого из компьютеров, исключение могут представлять лишь микрокомпьютеры. Микрокомпьютерам, являющимися составляющими каких-либо приборов, такой программный комплекс не нужен, по причине того, что они в большинстве случае отвечают ка какую ни, будь конкретную функцию.
Ядром операционной системы называют её основную часть, которая как раз и обеспечивает запуск всех действий, организует работу других программ и работу компонентов компьютерной системы. Процессы, происходящие в ядре ОС можно назвать организующей программно-аппаратной деятельностью [6].
Достаточно условно все программные модули, входящие в состав ОС, можно разбить на две группы: базовое ядро и вспомогательные модули (надстройка). Линия раздела между этими группами различна в разных ОС. Модули ядра реализуют основные жизненно важные функции ОС, такие как управление памятью, отработка прерываний, переключение процессов.
На низком уровне «ядро» является основной компьютерной программой, лежащей в основе Вашей операционной системы. Эта отдельная программа является одной из первых вещей, загружаемых при запуске Вашей операционной системы. Он обрабатывает выделение памяти, преобразование программных функций в инструкции для процессора Вашего компьютера и обработку входных и выходных данных с аппаратных устройств. Ядро, как правило, запускается в изолированной области, чтобы предотвратить его несанкционированное использование другим программным обеспечением на компьютере. Ядро операционной системы очень важно, но это всего лишь одна часть операционной системы.
Но и здесь не все конкретно. Например, Linux — это просто ядро. Однако Linux по-прежнему часто называют операционной системой. Android также называется операционной системой, и она построена на ядре Linux. Linux-дистрибутивы, такие как Ubuntu, используют ядро Linux и добавляют к нему дополнительное программное обеспечение. Они также называются операционными системами.
В чем разница между прошивкой и ОС
Многие устройства просто запускают «прошивку» — тип низкоуровневого программного обеспечения, которое обычно запрограммировано непосредственно в памяти аппаратного устройства. Прошивка — это всего лишь небольшая часть программного обеспечения, предназначенного для работы только с абсолютными основами [8].
Когда компьютер загружается, он загружает прошивку UEFI с материнской платы. Эта прошивка — это низкоуровневое программное обеспечение, которое быстро инициализирует аппаратное обеспечение Вашего компьютера. Затем он загружает Вашу операционную систему с твердотельного накопителя Вашего компьютера или жесткого диска. (Этот твердотельный накопитель или жесткий диск имеет собственную встроенную прошивку, которая управляет хранением данных на физических секторах внутри накопителя.)
Граница между прошивкой и операционной системой также может быть немного размытой. Например, операционную систему для iPhone и iPads от Apple, называемую iOS, часто называют «прошивкой». Операционная система PlayStation 4 официально называется прошивкой.
Это операционные системы, которые взаимодействуют с несколькими аппаратными устройствами, предоставляют услуги программам и распределяют ресурсы между приложениями. Тем не менее, очень простая прошивка, которая работает на пульте дистанционного управления телевизором, например, обычно не называется операционной системой.
Важной особенностью модулей ядра является то, что они выполняются в привилегированном режиме работы процессора (режим ядра, или kernel mode) и после запуска системы постоянно находятся в основной памяти. В привилегированном режиме разрешено выполнение всех команд процессора, в том числе и таких, выполнение которых запрещено в пользовательском режиме. Наиболее важными привилегированными командами являются команды низкоуровневого ввода и вывода байтов при взаимодействии с устройствами.
В отличие от этого, модули надстройки выполняются в пользовательском режиме (user mode), и с этой точки зрения они ничем не отличаются от обычных прикладных программ. В этом режиме попытка выполнения запрещенных команд приводит к немедленному прекращению работы программы. Поэтому для реализации своего поведения модули надстройки должны обращаться к стандартным системным функциям. Такая организация ОС имеет как преимущества, так и недостатки. Важнейшими преимуществами являются:
более надежная работа системы за счет защиты модулей ядра от сбоев в работе модулей надстройки;
простота внесения изменений и дополнений в состав надстройки за счет замены соответствующих файлов с последующим подключением на основе механизма динамической компоновки [1].
Основным недостатком является некоторое замедление выполнения модулей надстройки, т.к. практически каждый вызов системной функции требует переключения процессора в привилегированный режим, а потом – обратно. Для ускорения этих операций они чаще всего выполняются на аппаратном уровне.
К модулям надстройки обычно относятся трансляторы с языков программирования, компоновщики, программы-отладчики, редакторы, вспомогательные утилиты.
В свою очередь, ядро системы может реализовываться разными способами. Наиболее простой и исторически самый первый способ – так называемое монолитное ядро. В этом случае все входящие в ядро подпрограммы полностью равноправны и могут вызывать друг друга для выполнения необходимых действий. Большим преимуществом монолитных ядер является высокая скорость работы, а большим недостатком – сложность внесения изменений в код ядра, требующая перекомпиляции и перекомпоновки подпрограмм ядра. Как следствие, сильно затрудняется перенос системы на другие аппаратные платформы.
Поэтому монолитное ядро пригодно для относительно несложных ОС, когда еще можно отследить связи подпрограмм друг с другом. В сложных ОС этих связей становится слишком много, и как всегда для борьбы с возрастающей сложностью можно провести структуризацию ядра, сгруппировав логически связанные подпрограммы по уровням. Подобная организация ядра иногда называется многослойной или многоуровневой.
Чем ниже расположен слой, тем ближе он к аппаратуре компьютера, чем выше – тем дальше от аппаратуры и, наоборот, ближе к прикладным программам. Тем самым обеспечивается относительная независимость подпрограмм высших уровней от аппаратных особенностей процессорной платформы. Многослойную организацию ядра можно представить следующим образом:
Дадим краткую характеристику каждого из уровней, рассматривая их снизу вверх. Прежде всего, необходимо отметить, что все современные процессоры в той или иной степени на аппаратном уровне обеспечивают выполнение следующих функций, напрямую связанных с задачами ОС:
- поддержка привилегированного/пользовательского режимов работы процессора за счет использования специального одно-двухбитового признака режима, который устанавливается в соответствии с правами выполняемой программы и позволяет тем самым проверять каждую выполняемую команду; попытка выполнить запрещенную команду автоматически распознается с генерацией особой ситуации (исключения);
- аппаратное переключение процессора с выполнения одного потока команд на другой поток, что требует запоминания состояния прерываемой программы для последующего ее возобновления; для этого в специальной области основной памяти запоминаются значения всех основных регистров, включая счетчик команд, регистр состояния и системные регистры;
- средства преобразования виртуальных адресов в физические; поскольку эти преобразования выполняются очень часто, чрезвычайно важно реализовать их в максимально возможной степени именно на аппаратном уровне; для этого в составе процессора предусматриваются специальные системные регистры;
- обработка прерываний как важнейшего механизма функционирования любой вычислительной системы; эта обработка включает распознавание момента возникновения и типа прерывания и быстрый переход на подпрограмму обработки этого прерывания;
- защита областей памяти с кодом и данными одной программы от несанкционированного вмешательства со стороны других программ.
- Самый нижний уровень в многослойной организации ядра занимают программные модули, наиболее тесно связанные с базовой аппаратной платформой и поэтому называемые аппаратно-зависимыми. Наличие этого уровня объясняется стремлением достичь двух противоречивых целей – сделать ОС максимально быстрой (что возможно именно за счет учета особенностей конкретной платформы) и в то же время – максимально универсальной. Модули этого уровня позволяют в идеале полностью изолировать вышележащие модули от особенностей конкретной платформы. Это (опять же в идеале) позволяет переходить к другим платформам лишь за счет изменения модулей нижнего уровня, совсем (или почти совсем) не трогая модули более высоких уровней.