Во время работы компьютера активные части операционной системы хранятся


Вопрос №
1

Программное обеспечение это…

» совокупность устройств установленных на компьютере
» совокупность программ установленных на компьютере
» все программы которые у вас есть на диске


Вопрос №
2

Программное обеспечение делится на…

» Прикладное
» Системное
» Инструментальное
» Компьютерное
» Процессорное


Вопрос №
3

Что не входит в состав операционной системы

ядро
драйверы
электронные таблицы
итерфейсная система
справочная система


Вопрос №
4

Что не является объектом операционной системы Windows?

» Рабочий стол
» Панель задач
» Процессор
» Корзина


Вопрос №
5

Что такое буфер обмена?

» Специальная область памяти компьютера в которой временно хранится информация.
» Специальная область монитора в которой временно хранится информация.
» Жесткий диск.
» Это специальная память компьютера которую нельзя стереть


Вопрос №
6

Операционная система относится к … программному обеспечению

Введите ответ:


Вопрос №
7

Во время работы компьютера активные части операционной системы хранятся…

в постоянной памяти компьютера
в оперативной памяти компьютера
во внешней памяти компьютера


Вопрос №
8

Пользовательские интерфейсные системы бывают …

графические
командной строки
самонастраевыемые
позиционные

Содержание

  1. Где в компьютере хранится операционная система?
  2. Где хранится операционная система?
  3. Операционная система хранится в ПЗУ?
  4. Где на компьютере хранится викторина операционной системы?
  5. ПЗУ — это память?
  6. Где хранится BIOS на стандартном ПК?
  7. Какие операционные системы 5?
  8. Какая программа хранится в ПЗУ?
  9. Как запускается операционная система?
  10. Какой тип памяти постоянно установлен на вашем компьютере и подключен к материнской плате?
  11. Почему мой компьютер так глючит?
  12. В каком формате в конечном итоге хранятся данные в компьютерах?
  13. Какое предназначение ПЗУ?
  14. Зачем компьютеру нужна как RAM, так и ROM?
  15. Что такое RAM и ROM с примером?
  16. Операционная система в компьютере: что это такое и как узнать какая у вас установлена
  17. Операционная система (ОС)
  18. Основные виды ОС
  19. Windows
  20. Apple Mac Os X
  21. Linux
  22. Российские разработки
  23. Заключение
  24. Что такое операционная система и как она работает?¶
  25. Введение¶
  26. Немного истории¶
  27. Зачем нужна Операционная Система?¶
  28. Фунции ОС¶
  29. Основные абстракции ОС¶
  30. Положение ОС в многоуровневой иерархии организации компьютера¶
  31. Как операционная система загружается в компьютер?¶
  32. Что делает ядро ОС?¶
  33. Прерывания¶
  34. Как приложения взаимодействуют с ОС?¶
  35. Как оборудование взаимодействует с ОС?¶
  36. Что это значит?¶
  37. Сервисы ОС¶
  38. Основные¶
  39. Дополнительные¶
  40. Основные абстракции¶
  41. Процесс¶
  42. Состояние (контекст) процесса¶
  43. Состояния исполнения¶
  44. Информация о процессе¶
  45. Поток¶
  46. Чем хороши потоки¶
  47. Реализация многозадачности¶
  48. Переключение контекста¶
  49. Критические секции и блокировки¶
  50. Пример Deadlock’a на псевдокоде¶
  51. Адреса и управление памятью¶
  52. Основные механизмы (сервисы)¶
  53. Абстракции¶
  54. Заключение¶

Где в компьютере хранится операционная система?

Операционная система хранится на жестком диске, но при загрузке BIOS запускает операционную систему, которая загружается в ОЗУ, и с этого момента осуществляется доступ к ОС, пока она находится в вашей ОЗУ.

Где хранится операционная система?

Операционная система хранится на жестком диске. ПЗУ: данные предварительно записаны (BIOS записан в ПЗУ материнской платы). ПЗУ сохраняет свое содержимое, даже когда компьютер выключен. ОЗУ: это основная память компьютера, в которую загружаются операционная система и программы при запуске компьютера.

Операционная система хранится в ПЗУ?

Поскольку содержимое ПЗУ не может быть изменено, а ОС редко когда-либо свободна от ошибок и поэтому требует обновлений, не ожидайте найти образ ОС, хранящийся в ПЗУ. BIOS — это код для выполнения конфигурации, инициализации и программы начальной загрузки. Это не запоминающее устройство.

Где на компьютере хранится викторина операционной системы?

Все данные и инструкции (включая ОС) хранятся в оперативной памяти, когда ваш компьютер включен.

ПЗУ — это память?

Постоянное запоминающее устройство (ПЗУ) — это тип электронного хранилища, которое встроено в устройство во время производства.

Где хранится BIOS на стандартном ПК?

Программное обеспечение BIOS хранится в энергонезависимой микросхеме ПЗУ на материнской плате. … В современных компьютерных системах содержимое BIOS хранится на микросхеме флэш-памяти, так что содержимое можно перезаписать, не удаляя микросхему с материнской платы.

Какие операционные системы 5?

Пять самых распространенных операционных систем — это Microsoft Windows, Apple macOS, Linux, Android и iOS от Apple.

Какая программа хранится в ПЗУ?

Программы, которые являются постоянными, как оборудование, и хранятся в ПЗУ, известны как микропрограммы.

Как запускается операционная система?

Микросхема BIOS указывает ему искать в фиксированном месте, обычно на жестком диске с наименьшим номером (загрузочный диск), специальную программу, называемую загрузчиком (в Linux загрузчик называется Grub или LILO). Загрузчик втягивается в память и запускается. Задача загрузчика — запустить настоящую операционную систему.

Какой тип памяти постоянно установлен на вашем компьютере и подключен к материнской плате?

Глоссарий
постоянная память (ROM) Микросхема на материнской плате, которая предварительно записана и постоянно хранит набор инструкций, которые компьютер использует при включении. Также называется энергонезависимой памятью или постоянной памятью.
приемник Компьютер или периферийное устройство в месте назначения сообщения при передаче данных

Почему мой компьютер так глючит?

Медленный компьютер часто возникает из-за того, что слишком много программ работает одновременно, что увеличивает вычислительную мощность и снижает производительность компьютера. … Щелкните заголовки CPU, Memory и Disk, чтобы отсортировать программы, запущенные на вашем компьютере, по тому, сколько ресурсов вашего компьютера они используют.

В каком формате в конечном итоге хранятся данные в компьютерах?

Данные представлены на современных носителях с использованием двоичной системы счисления. Все данные, хранящиеся на носителе, будь то жесткие диски (HDD), твердотельные накопители (SSD), внешние жесткие диски, USB-накопители, SD-карты и т. Д., Могут быть преобразованы в строку битов, также известную как двоичные цифры.

Какое предназначение ПЗУ?

Что такое ПЗУ? Постоянное запоминающее устройство (ПЗУ) обеспечивает постоянное хранение инструкций, необходимых во время начальной загрузки или процесса включения компьютера. Это достигается путем хранения BIOS и другого микропрограммного обеспечения для компьютерного оборудования.

Зачем компьютеру нужна как RAM, так и ROM?

Учетные записи RAM для вашей памяти, необходимой для запуска ОС (операционной системы) и других программ в ваших процессах, пока ваша система не спит. ПЗУ учитывает вашу память, необходимую для загрузки вашего компьютера.

Что такое RAM и ROM с примером?

RAM и ROM — это оба типа компьютерной памяти. ОЗУ используется для хранения компьютерных программ и данных, необходимых процессору в режиме реального времени. Данные RAM непостоянны и стираются при выключении компьютера. … RAM — это память с произвольным доступом. ROM означает постоянное запоминающее устройство.

Источник

Операционная система в компьютере: что это такое и как узнать какая у вас установлена

Здравствуйте, друзья! Многие, пользуясь компьютером, даже не подразумевают, что он работает благодаря установленной на него операционной системы, которая отвечает за аппаратное и программное обеспечение компьютера (ПК).

Сейчас существует несколько основных операционных систем, о которых мы будем говорить в этой статье, но более популярной среди новичков является windows. Поэтому больше внимания я буду уделять именно ей.

Операционная система (ОС)

И так друзья что же такое операционная система в компьютере?

Если говорить простым языком это программное обеспечение вашего ПК, как правило, предоставляемое вместе с компьютером, которое управляет ресурсами ПК и организует взаимодействие с пользователями.

vzaimodejstvie s polzovatelyami

ОС отвечает за работу всех установленных программ, запущенных процессов и правильную работу подключенного оборудования к вашему ПК. Без установленной операционной системы компьютер просто бесполезен.

После нажатия кнопки старт на ПК сразу начинается процесс загрузки ОС и во время него происходит следующие:

ОС выполняет следующие основные функции

Основные виды ОС

Используя ПК дома, вы даже не задумываетесь, какая именно стоит ОС. А эту информацию знать необходимо хотя бы, потому что если вы вдруг захотите установить, какую ни будь программу, то вам придется выбрать именно ту, которая будет совместима с вашей системой.

Приступим к небольшому обзору трех самых популярных операционных систем.

Windows

Самая востребованная это Microsoft Windows выпущенная корпорацией Microsoft а сама система Windows в переводе означает – окна.

korporaciya microsoft

В настоящее время поддерживаются производителем несколько версий:

Но не пугайтесь, у кого сейчас установлены версии 7 и 8.1. Прекращение обслуживания не означает, что у вас они перестанут работать, корпорация просто прекратит выпускать обновления для них. Я знаю людей, которые до сих пор работают с Виндовс XP, хотя обновления для нее прикатились выпускаться еще в 2014 году.

Располагается операционная система на жестком диске, в большинстве случаях это раздел «Локальный диск С» где при установке создаются такие папки как:

papki windows

Внимание настоятельно рекомендую в первых двух папках, не вносить ни каких изменений, так как так как можно повредить файлы ОС или установленных программ. В результате чего ПК или установленная программа может перестать работать.

Теперь давайте подробнее разберем, как узнать свою версию Windows.

1. На рабочем столе находим значок «Компьютер» или «Этот компьютер»

znachok kompyutera

Если этого значка у вас нет, то мы можем за несколько кликов вывести его на рабочий стол.

Для этого кликаем правой кнопкой мыши на свободной области рабочего стола, в открывшемся меню выбираем пункт персонализация.

personalizaciya

В открывшемся окне для виндовс 7 и 8 ищем пункт «Изменение значков рабочего стола»

personalizatsiya 2

Для виндовс 10 пункт будет называться «Темы» и уже в правой части открытого окна ищем и жмем на «Параметры значков рабочего стола»

nastrojka temy vindovs

В появившемся окне (для всех Windows оно практически одинаковое) ставим галочку возле надписи компьютер и жмем кнопку «ок». Вот и все, значок мой компьютер на рабочем столе.

parametry znachkov rabochego stola

2. Наводим курсор мыши на значок компьютера, жмем правую кнопку и в открывшемся меню выбираем «свойства»

svojstva sistemy

В открывшемся окне внимательно изучаем информацию о системе, которая установлена на ваш ПК.

svedenya o kompyutere

У меня это Windows 10 Pro. Помимо этого есть информация о процессоре, объеме оперативной памяти, о типе системы, а также об активации моей Windows.

И так с виндовс разобрались, теперь переходим разбору остальных систем.

Apple Mac Os X

Mac Os специально выпускается компанией Apple (в переводе с английского — яблоко) с 1984 года для компьютеров Macintosh сокращенно «Mac».

Apple Mac Os X

Так как данная ОС устанавливается только на продукцию Apple а эти устройства стоят дорого, среди пользователей большей популярностью пользуется виндовс ведь она может работать на любых компьютерах.

Для того чтобы посмотреть какая версия Mac Os установлена нужно курсор мыши навести в левый верхний угол на кнопку Apple или значок «яблока» и нажать левой кнопкой. В открывшемся меню выбрать пункт «Об этом Mac»

Linux

Отличительной чертой Linux является то, что эта ОС с открытым исходным кодом, который может изменить любой пользователь, в связи с этим сейчас существует много версий этой ОС, каждая из которых имеет свой собственный внешний вид.

Вот три самых популярных версий (дистрибутив) Linux:

Есть несколько преимуществ Линукс:

Если у вас установлен Linux но вы не знаете какой именно дистрибутив используется то следует в консоли ввести следующие команды:

Российские разработки

Совсем недавно государством был дан курс на импортозамещение, это вдохнуло новую жизнь в разработку отечественных операционных систем.

Разработчиками было предложено много интересных продуктов, даже одна из госкорпораций анонсировала ОС с интересным названием «ОСь».

operacionnaya sistema os

Она должна была заменить Windows в государственных учреждениях, но почему-то сегодня на официальном сайте ее даже невозможно скачать.

Еще хотелось бы отметить, что в основном все отечественные ОС написаны на основе Linux. Лично у меня складывается такое впечатление, что они просто меняют обои рабочего стола. За бюджетные деньги.

А так хочется что-то наше на русском языке и чтобы работало с программным обеспечением, заточенным под другие системы.

Заключение

Теперь я думаю, что вы разобрались, что такое ОС и с легкостью сможете посмотреть, какая версия у вас установлена.

Ну вот, вроде бы и все. Ничего сложного. Это все что я хотел рассказать вам сегодня.

Как вам статья? Считаете ее полезной? То поделитесь ей в социальных сетях, нажав кнопки расположенные ниже. И подпишитесь на обновления блога чтобы не пропустить следующую.

Источник

Что такое операционная система и как она работает?¶

Цель конспекта — последовательно рассмотреть и объяснить принципы устройства и функционирования операционной системы, её основных компонентов и абстракций.

Введение¶

Операционные системы окружают нас повсюду – это основное программное обеспечение персональных компьютеров, серверов, мобильных устройств, сетевых устройств (роутеры, коммутаторы) и даже современных автомобилей (борт-компьютер), телевизоров и прочего. Перечислять можно очень долго, ведь они требуются практически в каждой компьютерной системе.

Любой компьютер представляет собой связанную совокупность: процессора, памяти и устройств ввода-вывода.

basic architecture

Рис. 1. Общее представление архитектуры компьютера

Например, процессор умеет выполнять только четыре базовых типа инструкции:

Получается, что непосредственное создание и управление сложными процессами (приложениями) на аппаратуре становится крайне неэффективным и неудобным. То есть, например, создать и запустить на исполнение программу-браузер исключительно с помощью данных инструкций становится крайне сложной задачей. Особенно при условии, что помимо этого процесса (браузера) существуют и другие процессы, которые также пользуются ресурсами вычислительной машины.

Возникает вопрос — Как заставить всё это слаженно и эффективно работать, сделав пользование компьютером удобным как для обычного человека, так и для прикладного программиста?

Чтобы ответить на этот вопрос более последовательно, немного заглянем туда, откуда всё начиналось.

Немного истории¶

На заре компьютерной эпохи, первые компьютеры представляли собой огромные блоки (занимавшие большие комнаты), в которых размещались основные его компоненты: процессор, память и устройства ввода-вывода. И всего можно было выделить два состояния, в котором, в реальном времени находится компьютерная система:

Важная идея! Так как вычисления производятся быстрее, чем непосредственный ввод-вывод данных, разработчикам пришла идея о том, что к ресурсам можно допускать не одного пользователя (процесс), а множество, предоставляя им способ независимо друг от друга загружать (ввод) и получать (вывод) данные через отдельные терминалы, чтобы более эффективно использовать ресурсы компьютера и вычислительные модули не простаивали в ожидании ввода/вывода.

Далее, термины: процесс, приложение идут как синонимы термину пользователь ресурсов.

Зачем нужна Операционная Система?¶

Существует три ключевых элемента операционной системы:

Фунции ОС¶

Основные абстракции ОС¶

Положение ОС в многоуровневой иерархии организации компьютера¶

Современный компьютер можно представить в виде иерархии уровней (от двух и более), где на каждом уровне выделяются свои абстракции и набор возможных функций.

GeneralizedLayeredComputerStructure OS

Рис. 2. Основные уровни устройства ПК

Операционная система является одним из таких уровней и представляет собой интерфейс («прослойку») между пользователем ресурсов компьютера и самими ресурсами, управляющий взаимодействиями как между пользователь-ресурс, так и пользователь-пользователь, устройство-устройство.

В целом, общей схемой это можно отобразить так:

OS monolit OS 1

Рис. 3. Место ОС в компьютерной системе

Интерфейс — набор правил и средств взаимодействия двух систем. Иными словами способ взаимодействия.

Kernel space — адресное пространство ядра ОС, в котором процессы имеют привилегированный доступ к ресурсам компьютера и другим процессам.

User space — адресное пространство, отведённое для пользовательских процессов (приложений), то есть не имеющих привилегированный доступ к ресурсам.

Как операционная система загружается в компьютер?¶

Процесс загрузки операционной системы и вообще компьютера имеет несколько этапов, основные из которых:

Что делает ядро ОС?¶

Ядро ОС – центральная часть операционной системы. По сути, это и есть ОС.

Это реакционный механизм, то есть его работа заключается исключительно в реакции на какие-либо события для их последующей обработки.

Процессорное время измеряется в тиках или секундах. Часто бывает полезно измерение процессорного времени в процентах от мощности процессора, которое называется загрузкой процессора.

Top program

Прерывания¶

Эта часть больше относится непосредственно к аппаратной части, но этот механизм стоит освятить, так как именно это основной аппаратный механизм реализации ОС.

Прерывание – сигнал остановки последовательного выполнения программы, для обработки запроса или реакции на событие.

Чтобы получить код обработки прерывания, в памяти расположена специальная таблица обработчиков прерываний, в которой для каждого типа прерывания содержится указатель на тот участок памяти, где расположен соответствующий код обработки данного прерывания.

Инициализация данной таблицы первично осуществялется BIOS’ом в соответствии с архитектурой процессора. После, её инициализирует операционная система для дополнения этой таблицы какими-либо своими прерываниями.

Как приложения взаимодействуют с ОС?¶

Взаимодействие процессов с ОС осуществляется с помощью системных вызовов.

Механизм системных вызовов — это интерфейс, который предоставляет ядро ОС (kernel space) пользовательским процессам (user space).

Системный вызов – программное прерывание, обращение пользовательского процесса к ядру операционной системы для выполнения какой-либо операции.

Например, чтобы выполнить обычное действие, с точки зрения прикладного программиста, – вывод строки в консоль, необходимо загрузить исполнимый код в оперативную память и передать его процессору. С помощью системных вызовов, запускающий процесс (уже запущенный процесс, из которого вызывается новый процесс — одни процессы порождают другие) обращается к соответствующим сервисам ОС и передаёт им управление для выполнения этих функций.

То есть с помощью системных вызовов выполняются те рутинные действия, которые раньше осуществлялись вручную, — загрузка кода программы в память, передача его на исполнение процессору и прочее.

Схема организации ОС расширяется добавлением интерфейса для взаимодействия приложений с ядром ОС — механизмом системных вызовов:

OS monolit OS 2

Рис 4. Интерфейс системных вызовов

Как оборудование взаимодействует с ОС?¶

Оборудование взаимодействует с ОС с помощью аппаратных прерываний. И одна из функций ОС — абстрагирование оборудования.

Что это значит?¶

OS monolit OS 3

Рис 5. Интерфейс драйверов

Сервисы ОС¶

Функции ОС заключены в её сервисах (модулях). Реализация организации которых зависит от архитектуры ядра. Рассмотрим на примере монолитного ядра:

OS monolit All

Рис 6. Основные компоненты ОС

Основные¶

Как говорилось в части о загрузке ОС, реализация планировщика осуществляется с помощью прерывания по таймеру — каждый квант времени происходит прерывание, которое передаёт управление ОС и она анализирует состояние всех процессов и что с каким процессом сделать: запустить, приостановить, завершить или изменить приоритет.

Дополнительные¶

Основные абстракции¶

Процесс¶

Компьютерная программа сама по себе — лишь пассивная последовательность инструкций. В то время как процесс — непосредственное выполнение этих инструкций.

В рамках ОС, это абстракция, которая предоставляет иллюзию персональной машины. То есть то, что данный исполнимый код полностью владеет всеми вычислительными ресурсами машины.

Состояние (контекст) процесса¶

Изнутри, процесс можно условно разделена на четыре части: Stack, Heap (кучу), Text (код) и данные (Data).

Рис 7. Сегменты памяти процесса

Состояния исполнения¶

Когда процесс выполняется, он проходит через разные состояния. Эти этапы могут различаться в разных операционных системах.

Общая картина выглядит так:

Conditions colored

Рис 8. Состояния исполнения процесса

Информация о процессе¶

PBC

Рис 9. Process Control Block

Информацию о процессах в целом, ОС хранит в специальной таблице процессов.

Поток¶

Процесс может делиться на потоки (threads). Они обеспечивают параллелизм, то есть одновременное исполнение нескольких потоков инструкций, на уровне программы.

Поток выполнения (нить, thread) — последовательность исполнения инструкций. Ход исполнения программы**.

Процесс является контейнером ресурсов (адресное пространство, процессорное время и тд), а поток – последовательность инструкций, которые исполняются внутри этого контейнера.

Реализация потоков выполнения и процессов в разных операционных системах отличается друг от друга, но в большинстве случаев поток выполнения находится внутри процесса.

Multithreaded process

Рис 10. Многопоточный процесс

Потоки, существующие в рамках одного процесса, в его адресном пространстве, могут совместно использовать ресурсы процесса, например такие как память или файл. Тогда как процессы не разделяют этих ресурсов, так как каждый существует в своём адресном пространстве.

Также поток называют легковесный процесс.

Сегодня потоки широко применяются в работе серверов и многопроцессорных устройств с общей памятью.

Рассмотрим на примере утилиты htop.

htop out

Рис 11. Вывод утилиты мониторинга процессов htop

PID — Process ID; Уникальное число идентификатор для каждого процесса

TGID — Tread Group ID; Индентификатор группы потоков

Чем хороши потоки¶

Это очень широкое и многогранное понятие. Но если выделить наиболее общее, то получится, что файл — это универсальный системный интерфейс для обращения к тем или иным данным.

А файловая система — это система имён. То есть возможность выделять те или иные объекты данных и присваивать им имена, а также выделять иерархию.

По другому, файл и файловую систему можно также представить как структуру данных и связи между этими структурами.

Реализация многозадачности¶

Осуществляется при помощи следующих механизмов:

Переключение контекста¶

Контекст процесса — это состояние регистров, при его выполнении на процессоре.

Но происходит прерывание и «процесс 1» снимается с выполнения на процессоре, чтобы вместо него выполнялся «процесс 2». Следовательно, нужно заполнить регистры уже теми данными, что относятся к «процессу 2».

Однако, «процесс 1» ещё не выполнился полностью, и для дальшейнего исполнения ему нужны те данные, что хранились в регистрах при прерываний, то есть необходим его контекст. Операционная система должна обеспечивать подобные смены контекстов без потери данных.

В целом, смена контекста происходит между состояниями «Готов», «Ожидает» и «Исполняется».

Conditions colored

Критические секции и блокировки¶

Одна из основных проблем с которыми может столкнуться такая система с вытесняющей многозадачностью — порядок доступа процессов к их общим ресурсам.

Возникают, так называемые, критические секции – участки исполняемого кода программы, в которых производится доступ к общему ресурсу (данным или устройству), который не должен быть одновременно использован более чем одним потоком выполнения.

Critical Section

Рис 12. Критические секции в потоках процесса

Может возникнуть такая ситуация, когда один поток, «потребитель», начинает использовать данные, которые должен подготовить другой поток, «производитель», но этот производитель ещё не закончил их подготовку и снялся с исполнения. Таким образом, «потребитель» использует некорректные данные, что с высокой долей вероятности приведёт к ошибке.

Данная проблема решается с помощью механизма блокировок – когда поток, получивший доступ к ресурсу, блокирует его, не давая другим потокам пользоваться этим захваченным ресурсом до разблокировки. То есть, если один поток хочет захватить (заблокировать) ресурс, а он уже занят другим потоком, то первый будет ожидать пока этот другой поток-владелец сам не освободит этот ресурс.

Все эти механизмы обеспечиваются операционной системой

Чтобы лучше это понять, можно обратиться к аналогии с туалетом — им может пользоваться только один человек. Если другой хочет им воспользоваться, то ему нужно дождаться когда его освободит уже им пользующийся.

Deadlock analogy

Рис 13. Аналогия пробки на перекрёстке с Deadlock

Deadlock — ситуация, при которой несколько потоков находятся в состоянии ожидания ресурсов, занятых друг другом, и ни один из них не может продолжать свое выполнение.

Пример Deadlock’a на псевдокоде¶

Шаг Поток 1 Поток 2
Хочет захватить A и B, начинает с A Хочет захватить A и B, начинает с B
1 lock(A) — Захват А lock(B) — Захват B
2 lock(B) — Ожидает освобождения ресурса B lock(A) — Ожидает освобождения ресурса A
DEADLOCK –> Далее код не выполнится, так как произошел Deadlock в коде выше
n unlock(A) — освобждение A unlock(B) — освобждение B
n+1 unlock(B) — освобждение B unlock(A) — освобждение A

Схематично, Deadlock можно изобразить так:

Deadlock

Адреса и управление памятью¶

Тема адресации очень сложна, поэтому здесь я лишь проведу краткий обзор общей технологии.

Чтобы отобразить логический адрес в физический, существует специальный аппаратный механизм.

Начав с базовой архитектуры и небольшой истории развития компьютера, мы разобрали причины появления такого комплекса программ как операционная система и выделили главную её цель – обеспечение согласованного доступа к ресурсам компьютера множеству пользователям этих ресурсов, а также управление как самими ресурсами, так и пользователями.

Основные механизмы (сервисы)¶

Рассмотрели основные механизмы реализации этой цели: Scheduler (планировщик), Inter Process Communication (межпроцессное взаимодействие), Memory manager (управление памятью) и другие.

Абстракции¶

Ряд абстракций, которые вводит ОС: Process (процесс), Thread (поток исполнения), File (файл).

Заключение¶

Ух, и вот наконец-то я закончил писать этот материал. Надеюсь, вам было интересно и полезно.

Если вы хотите как-то дополнить материал, дать критику по его содержанию или структуре – пожалуйста, пишите в Issue данного репозитория поднимая ту или иную тему для обсуждения и доработки.

Также, вы можете сделать Fork данного репозитория и после внести свои дополнения с помощью Pull Request. Спасибо за внимание!

Источник

Итак, в компьютерах операционная система установлена ​​и хранится на жестком диске.

Поскольку жесткий диск является энергонезависимой памятью, ОС не проигрывает при выключении.

Но поскольку доступ к данным с жесткого диска происходит очень медленно сразу после запуска компьютера, операционная система копируется в оперативную память с жесткого диска. мобильные номера из разных частей файла и сохранить.

Инструмент для шпионского каталога галереи сотовых телефонов, который может хранить программное обеспечение вашей операционной системы и подключаться к Интернету. Таким образом, на компьютерах операционная система устанавливается и хранится на жестком диске.

Поскольку жесткий диск является энергонезависимой памятью, ОС не проигрывает при выключении.

Но поскольку доступ к данным с жесткого диска происходит очень медленно сразу после запуска компьютера, операционная система копируется в оперативную память с жесткого диска. Главный процессор компьютера называется _.

Операционная система портативного устройства хранится в _.

Где на компьютере находится операционная система?

Он находится на вашем жестком диске. Если вы являетесь пользователем Windows, по умолчанию он находится на вашем диске C. Когда компьютер включен, ПЗУ или BIOS активируют диски, на которых он находит первую часть операционной системы: загрузчик начальной загрузки.

Операционная система хранится в ПЗУ?

Операционная система хранится на жестком диске. ПЗУ: данные предварительно записаны (BIOS записан в ПЗУ материнской платы). ПЗУ сохраняет свое содержимое, даже когда компьютер выключен. ОЗУ: это основная память компьютера, в которую загружаются операционная система и программы при запуске компьютера.

Где хранится информация на компьютере?

Данные хранятся в памяти / хранилище компьютера, которое можно разделить на постоянное хранилище (жесткий диск / жесткий диск) и временное хранилище (RAM-память с произвольным доступом).

На жестком диске установлена ​​Windows?

Корпоративный ответ: Windows может быть установлена ​​только на одном компьютере. В ОС Windows встроено программное обеспечение, которое запускается при установке жесткого диска на другой компьютер. Если ваш компьютер умирает (материнская плата выходит из строя), вы в рассоле. Но есть варианты.

Где хранится системное программное обеспечение?

Итак, как вы уже догадались, большинство программ (включая саму операционную систему) хранятся в формате машинного языка на жестком диске или другом запоминающем устройстве или в постоянной памяти EPROM компьютера. Когда это необходимо, программный код загружается в память и затем может выполняться.

Как операционная система берет под контроль компьютерную систему?

Аппаратное обеспечение обеспечивает чистую мощность и функциональность, которые позволяют компьютеру работать, а операционная система контролирует большую часть работы оборудования. Вам будет сложно использовать компьютер без операционной системы, так как все ваши аппаратные части не смогут взаимодействовать друг с другом.

Какие бывают 3 типа хранилищ?

Существует три основных категории запоминающих устройств: оптические, магнитные и полупроводниковые. Самым ранним из них было магнитное устройство. Компьютерные системы начинались с магнитных накопителей в виде лент (да, точно так же, как кассета или видеолента). Они перешли на жесткий диск, а затем на гибкий диск.

ОС хранится в оперативной памяти?

3 ответа. Операционная система хранится на жестком диске, но при загрузке BIOS запускает операционную систему, которая загружается в ОЗУ, и с этого момента осуществляется доступ к ОС, пока она находится в вашей ОЗУ.

Какие четыре типа ПЗУ?

Существует пять основных типов ПЗУ:

  • ROM.
  • ВЫПУСКНОЙ ВЕЧЕР.
  • СППЗУ.
  • ЭСППЗУ.
  • Флэш-память.

Какие бывают 4 типа запоминающих устройств?

Определение и типы запоминающих устройств

  1. жесткий диск.
  2. компакт-диск.
  3. DVD-диск.
  4. флеш-носитель.
  5. «флешка.
  6. карта памяти.
  7. iPod.
  8. цифровая камера.

Как хранится информация?

Хранение данных — это запись (хранение) информации (данных) на носителе. ДНК и РНК, почерк, фонографическая запись, магнитная лента и оптические диски — все это примеры носителей информации. Электронные документы могут храниться на гораздо меньшем пространстве, чем бумажные.

Какая информация хранится на жестком диске компьютера?

Что хранится на жестком диске? Жесткий диск можно использовать для хранения любых данных, включая изображения, музыку, видео, текстовые документы и любые файлы, созданные или загруженные. Кроме того, на жестких дисках хранятся файлы для операционной системы и программ, работающих на компьютере.

Могу ли я подключить старый жесткий диск к новому компьютеру?

Есть несколько способов сделать это: Вы можете использовать корпус USB-жесткого диска, который представляет собой специальное устройство, похожее на коробку, в которое вы вставляете старый диск. Вы также можете использовать USB-адаптер для жесткого диска, который представляет собой устройство, похожее на кабель, которое подключается к жесткому диску с одной стороны и к USB на новом компьютере с другой.

Могу ли я перенести жесткий диск с одного компьютера на другой?

После восстановления вы можете нормально загрузить новый компьютер с той же операционной системой, программами и данными, что и на старом компьютере. На этом перенос жесткого диска на новый компьютер завершен. Вы можете сделать резервную копию Windows 7 и восстановить ее на другом компьютере, выполнив указанные выше действия.

Могу ли я перенести программы со старого компьютера на новый?

A. Старые версии системы включают программное обеспечение Windows Easy Transfer для перемещения файлов и настроек со старого ПК на новый, но эта утилита не включена в Windows 10. Чтобы переместить программы, установленные на старом ПК, вам потребуется для обновления до версии PCmover Professional, которая стоит около 60 долларов.

Где хранятся программные коды?

Большинство программ (включая саму операционную систему) хранятся в формате машинного языка на жестком диске или другом запоминающем устройстве или в постоянной памяти EPROM компьютера. Когда это необходимо, программный код загружается в память и затем может выполняться.

Где хранится и выполняется программа?

Где программа хранится и выполняется на компьютере? Программа может храниться в энергонезависимой памяти (EEPROM, EPROM, жесткий диск, дискета, USB и т. Д.), А также может выполняться с той же памяти или из RAM.

Где в компьютере хранится память?

Физическая память — это оперативная память, она расположена на материнских платах. Вторичный — это жесткий диск или память, связанная с любым устройством хранения данных, и обычно устанавливается внутри корпуса и подключается к плате с помощью кабелей.

Почему операционная система называется Control Program?

ОС рассматривается как управляющая программа, поскольку она управляет выполнением пользовательских программ для предотвращения ошибок и неправильного использования компьютера. Более распространенное определение состоит в том, что ОС — это единственная программа, постоянно работающая на компьютере, обычно называемая ядром, а все остальное — прикладные программы.

Как операционная система запускает программу?

В дополнение к этому, операционная система предоставляет необходимые общие службы для запуска установленных программ. Он работает как посредник между оборудованием и любыми программами, запущенными на мобильном устройстве или компьютере.

Почему программы и данные не хранятся в основной памяти постоянно?

Постоянно в памяти. Обычно на компьютере не хватает памяти для хранения всех используемых вами программ. Поэтому, когда вы хотите запустить программу, операционная система обязана освободить часть памяти, скопировав данные или программы из основной памяти на диск. Другой термин для обозначения резидента памяти — это резидент ОЗУ.

Достаточно ли 8 ГБ ОЗУ?

8 ГБ — хорошее место для начала. В то время как многие пользователи будут в порядке с меньшим объемом памяти, разница в цене между 4 ГБ и 8 ГБ не настолько велика, что стоит выбрать меньшее. Обновление до 16 ГБ рекомендуется для энтузиастов, заядлых геймеров и среднего пользователя рабочей станции.

Игры лучше работают на SSD?

Опять же, SSD не поможет вашему ПК быстрее запускать лучшие игры сегодняшнего дня. Однако из-за увеличенного времени загрузки ваши игры будут загружаться быстрее. Точно так же, как SSD поможет вашим играм загружаться быстрее, он также поможет вашей системе быстрее запускаться (если ваша операционная система установлена ​​на SSD).

Какая программа запускается первой при включении компьютера?

операционная система

Какой пример ПЗУ?

Другим примером ПЗУ является EEPROM, которое представляет собой программируемое ПЗУ, используемое для BIOS компьютера, как показано на рисунке ниже. В отличие от ОЗУ (оперативной памяти), ПЗУ энергонезависимо, что означает, что оно хранит свое содержимое независимо от того, есть ли у него питание.

Что такое ROM?

ПЗУ содержит программы, позволяющие «загружать» или восстанавливать компьютер при каждом его включении. В отличие от оперативной памяти (RAM) компьютера, данные в ROM не теряются при выключении питания компьютера. ПЗУ поддерживается небольшой батареей с длительным сроком службы в вашем компьютере.

Какие бывают типы ПЗУ?

Типы ПЗУ

  • Программируемая постоянная память (PROM)
  • Стираемая программируемая постоянная память (EPROM)
  • Электрически стираемая программируемая постоянная память (EEPROM)

Фото в статье «Flickr» https://www.flickr.com/photos/christiaancolen/22284256888

operacionkiЗагрузчик операционной системы загружает её из памяти ПК, где лежит операционная система и пользовательская информация. Загрузчик устанавливает структуры данных, которые используются, чтобы обращаться между подсистемами и запросами компьютера и в конечном итоге BIOS передает контроль над ПК операционной системе (ОС).

После того, как ОС загружена, задачи операционной системы подразделяют на шесть категорий:

  1. Управление процессором — разделение задач на управляемые части и распределение их по приоритетам прежде, чем послать на обработку в центральный процессор.
  2. Управление памятью — координирование потока данных в и из RAM и определение необходимости виртуальной памяти.
  3. Управление устройствами — обеспечение связи между каждым устройством, связанным с компьютером, центральным процессором и запросами.
  4. Управление данными – направление данных для хранения надолго на жестких дисках и других устройствах продолжительного хранения.
  5. Прикладной Интерфейс — обеспечение стандартных коммуникаций и обмена данными между программами и компьютером.
  6. Пользовательский Интерфейс — обеспечение пути для Вас, чтобы общаться и взаимодействовать с компьютером.

Скажем, например, что Вы открываете программу обработки текста и печатаете письмо, сохраняете его и затем распечатываете. В данном процессе задействовано между собой несколько компонентов:

  • Клавиатура и мышь посылают введенные Вами данные в операционную систему.
  • Операционная система решает, что программа обработки текстов — активная программа и принимает введенные Вами данные для той программы.
  • Программа обработки текстов определяет формат, что данные принадлежат ей и через операционную систему хранит их временно в RAM.

Каждую инструкцию из программы обработки текстов посылает операционная система в центральный процессор. Эти инструкции переплетены с инструкциями из других программ, что были запущенны операционной системой прежде.

Все это время, операционная система устойчиво предоставляет информацию показа к графической карте, которая в свое время направляет информацию на монитор.

Когда Вы сохраняете письмо, программа обработки текстов посылает запрос в операционную систему, которая обеспечивает стандартное окно для выбора, места сохранения информации и названия файла. Как только Вы выбрали название и путь файла, операционная система направляет данные с RAM на соответствующее устройство хранения.

Вы нажимаете «на Печать». Программа обработки текстов посылает запрос в операционную систему, которая переводит данные на принтер из RAM до соответствующего порта принтера, который Вы указали.

Так же, к примеру, Вы открываете Web-браузер и проверяете https://zremcom.com Еще раз, операционная система координирует все действие. На сей раз, компьютер получает вход из другого источника, Интернета, так же как и от Вас. Операционная система эффективно интегрирует всю поступившую и отправленную информацию.

Вы закрываете Web-браузер и выключаете компьютер.

Операционная система закрывает все программы, которые являются в настоящее время активными. Если программа не сохранила информацию, то Вам дают возможность сохранить её прежде, чем программа закроется.

Операционная система записывает свои текущие параметры настройки в специальный файл конфигурации так, чтобы при следующем запуске стартовать с теми же самыми параметрами настройки, что и выключения.

Если ОС ПК завершила все запущенные программы корректно, то система полностью выключит компьютер, иначе, Вы должны будете выключить ПК вручную удержанием кнопки Power on.

Где хранится ОС? Помогите пожалуйста

Там где написано 1(30на 30) это на двух шкалах ищешь 30 и когда найдешь ставишь цифру 1 и т.д.

while S.find(» ,»)>=0: S = S.replace(» ,», «,»)

while S.find(» .»)>=0: S = S.replace(» .», «.»)

while S.find(» «)>=0: S = S.replace(» «, » «)

st = input(«Введите строку: «)

Введите строку: маша , петя .даша ,коля.света .

маша, петя. даша, коля. света.

1 символ занимает 1 байт. В тексте 300 символов, т.к. 60*5=300 байт

Размер картинки зависит от глубины цвета, возьмём 32 бита: 2^i=32 цвета, отсюда i=5

Объем изображения: 300*50*5=75000 бит=9375 байт

Объем документа: 9375+300=9675 байт.

Не очень уверена в этом решении, т.к. нет глубины цвета. Она есть в условии?

Что такое ОС, операционная система — это программный комплекс

Операционная система (ОС) является системным программным обеспечением, благодаря которому приводится в действие технические средства компьютера. Это программное обеспечение координирующее работу ЭВМ и производящее управление другими программными модулями посредством скоординированной последовательности операций.

Представление об операционной системе

Функциональные характеристики ОС:

  1. Осуществление работы компьютера, в том числе и персонального и его периферийных устройств по принципу ввода/вывода информации;
  2. Обеспечивает систему, организовывающую и хранящую файлы;
  3. Организовывает взаимодействие пользователя и компьютера.

Из чего состоит ОС

  • Ядро;
  • Командный модуль;
  • Комплекс драйверов;
  • Сервисные утилиты;
  • Оболочка.

Операционная система (ОС) является системным программным обеспечением, оно приводит в действие всю техническую составляющее любого из компьютеров, исключение могут представлять лишь микрокомпьютеры. Микрокомпьютерам, являющимися составляющими каких-либо приборов, такой программный комплекс не нужен, по причине того, что они в большинстве случае отвечают ка какую ни, будь конкретную функцию.
Не побоюсь назвать операционную систему сверх программой, перейдём к расшифровке выше сформулированной её составляющей.

Ядром операционной системы называют её основную часть, которая как раз и обеспечивает запуск всех действий, организует работу других программ и работу компонентов компьютерной системы. Процессы, происходящие в ядре ОС можно назвать организующей программно-аппаратной деятельностью.

Командный модуль — это программа, функцией которой является выполнение команд от пользователя компьютеру.

Драйвера это целый внутренний комплекс специальных программ для обеспечения корректной работы именно аппаратных устройств с операционной системой, проще говоря – это инструкция для управления операционной системой компьютерных комплектующих, периферии.

Утилиты — дополнительные программные средства, которые взаимодействуют с ПО для выполнения различных задач.

Для пользователя оболочка операционной системы, является очень важным элементом — графический интерфейс — это то, что пользователь видит на дисплее любого компьютерного устройства. Именно благодаря графической оболочки ОС появились персональные компьютеры.

Кроме того, современная операционная система может обладать разной разрядностью 32 и 64.

Как проходит работа операционной системы

ОС действует с применением системных вызовов. Это такой интерфейс между ОС и программой пользователя, который позволяет делать все операции с объектами – файлами и процессами. Программа пользователя делает системный вызов сервису операционной системы, далее она обращается в библиотеку с прописанными процедурами действий, которые загружают регистры, и осуществляется прерывание кода в процессоре.

Прерывание генерируется от внешнего устройства. Такие «Аппаратные прерывания» информируют процессор о совершении асинхронной операции. Аппаратное прерывание производится параллельно процессам обработки программного кода процессором.

Так действует код ядра ОС и выполняется адресным пространством. Ядро ОС обладает доступом к пространству памяти программы пользователя и только после того, как произойдёт системный вызов, происходит передача адреса памяти этой программы для осуществления вызова в ядро.

Вовремя функционирования ОС, могут появиться исключительные операции, приводящие к неработоспособности, которые возникают при попытке выполнить недопустимую команду, обращение без права доступа к ресурсу, обращение к несуществующему кластеру в памяти. Исключительные операции могут появляться так же и при синхронном режиме работы главного компьютерного программного обеспечения.

Как производится загрузка ОС

Процесс от загрузки до запуска операционных систем можно разделить на три этапа:

Этап первый. ПЗУ системного блока проводит проверку да диске наличие программы-загрузчика ОС и предаёт работу ОЗУ.

Этап второй. Программа загрузчик с помощью ОЗУ обращается к базовому модулю ОС и как следствие работа передаётся ему.

Этап третий. Основной загрузчик в базовом модуле запускает загрузку имеющейся операционной системы и только после этого вступает в свои права на управление командному модулю.

Наиболее популярные операционные системы

О наиболее популярных видах операционных систем можно прочитать в одноимённой статье. Разная организация принципов осуществления операций в системах различает и саму операционную систему:

    ;

  • Линукс – Linux;
  • Макинтош – MAC OS;
  • Андроид – Android.

Что такое ОС – это сокращение термина операционная система, что собственно было и продемонстрированно в статье. Вот какую ОС предпочесть, это дело выбора каждого, хотя большинство производителей диктуют свои правила продавая компьютеры с уже предустановленной операционной системой.

Как создать резервную копию на ПК

Одна небольшая ошибка со стороны пользователя, вирус или сбой винчестера может уничтожить все фотографии, документы, важные файлы на компьютере. Поэтому рекомендуется настроить автоматическое копирование данных на внешний накопитель или в общую сетевую папку, используя встроенные инструменты Windows.

Правила резервного копирования

Необходимо придерживаться нескольких простых правил:

  1. Иметь 3 копии (на компьютере, USB и в облачном хранилище).
  2. Использовать 2 разных типа носителей (жесткий диск и оптический носитель, например, DVD – речь идет о том, чтобы не хранить все в одном месте).
  3. Хранить 1 копию вне дома (в онлайн-сервисе резервного копирования).

В идеале на портативном жестком диске должно быть намного больше места (хотя бы в 2 раза), чем на HDD компьютера, чтобы сохранять несколько копий или версий файлов.

Как сделать резервную копию системы стандартным способом

Образ – это «снимок» всего, что хранится на жестком диске, включая Windows, системные настройки, программы и другие файлы. Поэтому, если возникнет серьезная ошибка, HDD или весь компьютер просто перестанет работать, будет возможность восстановить ОС.

Однако нельзя восстановить отдельные файлы из образа – все данные на диске будут заменены во время процесса восстановления содержимым образа ОС.

Также можно хранить только один образ системы, любая предыдущая версия будет перезаписана. При этом можно сохранить существующий образ, скопировав папку «WindowsImageBackup» в другое место перед бэкапом.

Важно! Инструмент Windows Backup не позволяет планировать автоматическое создание системных образов, но это имеет смысл, чтобы случайно не перезаписать образ на тот, который не работает.

Чтобы осуществить бэкап ОС, необходимо выполнить следующие шаги:

  1. Открыть параметры, нажав одновременно кнопки Win+I.
  2. Перейти в раздел обновления.
  3. На панели с меню, расположенной слева, выбрать вкладку «Архивация».
  4. Открыть «Другие параметры».
  5. Перейти в «Дополнительные параметры».
  6. Откроется новое окно.
  7. Кликнуть по ссылке «Копия образа системы», которая располагается в самом низу слева.
  8. Перейти по ссылке «Создание образа системы».
  9. Windows будет автоматически искать подключенные к компьютеру накопители.
  10. После отображения результата поиска нужно указать место хранения образа. Это должен быть внешний накопитель, DVD-диск или сетевая папка. Нажать «Далее».
  11. По умолчанию создается копия зарезервированного и системного диска. Выбрать также другие диски при необходимости.
  12. Внимательно проверить параметры архивации и нажать одноименную кнопку.
  13. Подождать окончания процесса, он может занять несколько часов, в зависимости от размера файла.

Как только архивация завершится, система предложит создать диск восстановления системы. Рекомендуется сделать это, чтобы на всякий случай была копия ОС.

Важно! В Windows 7 есть служебная программа, которая называется «Резервное копирование и восстановление». В Windows 8 этот инструмент был переработан и разделен на две части: история файлов и инструмент для создания образа системы.

Как сделать резервную копию системы с помощью DISM

Через командную строку возможно создать образ ОС и в будущем восстановить систему. Для этого необходимо:

  1. Запустить диалоговое окно «Выполнить», нажав Win+R.
  2. Вписать команду cmd и одновременно зажать клавиши Ctrl+Shift+Enter.
  3. Командная строка откроется от имени Администратора.
  4. По очереди вставить команды diskpart, list volume и exit через Enter.

Здесь важно обратить внимание на букву системного диска (может быть не C) и букву того диска, на который будет записан образ.

После этого добавить следующую команду:

dism /Capture-Image /ImageFile:F:Win10Image.wim /CaptureDir:C: /Name:” Win10Win”

ImageFile – место, куда сохранится копия, CaptureDir – расположение непосредственно ОС, Win10Win – имя образа.

После запуска команды нужно будет немного подождать, пока на экране не отобразится уведомление об успешном завершении операции.

Как сделать резервную копию отдельных папок

Если понадобится восстанавливать только выбранные папки, лучше использовать историю файлов. Встроенный инструмент Windows довольно прост в использовании, нужно только один раз настроить его, чтобы автоматически и непрерывно создавались копии нужных документов.

  1. Из параметров системы (Win+I) перейти по пути «Обновление» — «Архивация» — «Другие параметры» — «Дополнительные параметры».
  2. Откроется окно «История файлов».
  3. В разделе «Смена диска» меняется носитель, куда будет записываться история, или выбирается сетевая папка.
  4. В разделе «Дополнительные параметры» настраивается период сохранения данных (каждый час, ежедневно и т.д.) и время хранения версий.
  5. В разделе «Исключить папки» добавляются исключения, историю каких данных не следует сохранять.

После того как все параметры настроены, необходимо вернуться назад и нажать кнопку «Включить». Теперь файлы из «Библиотеки», «Контактов», «Избранного» и «Рабочего стола» будут сохраняться на выбранный носитель.

Подводя итоги

Резервные копии хороши настолько, насколько хороши возможности по их восстановлению. Многие пользователи не задумываются об этом, но когда запускают восстановление файлов, оказывается, они пустые, и процесс завершается неудачей.

Подобное произошло с Pixar, когда компания случайно удалила «Историю игрушек 2» и обнаружила, что все резервные копии не годятся – за исключением одной, которую технический директор хранил на своем домашнем компьютере.

Поэтому рекомендуется время от времени тестировать резервные копии (примерно раз в месяц), восстанавливая один или два файла.

У этого термина существуют и другие значения, см. Ядро.

Ядро́ — центральная часть операционной системы (ОС), обеспечивающая приложениям координированный доступ к ресурсам компьютера, таким как процессорное время, память и внешнее аппаратное обеспечение. Также обычно ядро предоставляет сервисы файловой системы и сетевых протоколов.

Как основополагающий элемент ОС, ядро представляет собой наиболее низкий уровень абстракции для доступа приложений к ресурсам системы, необходимым для его работы. Как правило, ядро предоставляет такой доступ исполняемым процессам соответствующих приложений за счёт использования механизмов межпроцессного взаимодействия и обращения приложений к системным вызовам ОС.

Описанная задача может различаться в зависимости от типа архитектуры ядра и способа её реализации.

Содержание

  • 1 Типы архитектур ядер операционных систем
    • 1.1 Монолитное ядро
    • 1.2 Модульное ядро
    • 1.3 Микроядро
    • 1.4 Экзоядро
    • 1.5 Наноядро
    • 1.6 Гибридное ядро
  • 2 Ссылки
  • 3 Литература

Типы архитектур ядер операционных систем

Монолитное ядро

Монолитное ядро предоставляет богатый набор абстракций оборудования. Все части монолитного ядра работают в одном адресном пространстве.

Некоторые старые монолитные ядра, в особенности систем класса Unix, требовали перекомпиляции при любом изменении состава оборудования. Большинство современных ядер позволяют во время работы подгружать модули, выполняющие части функции ядра.

Достоинства: Скорость работы, упрощённая разработка модулей, богатство предоставляемых возможностей и функций, поддержка большого количества разнообразного оборудования.

Недостатки: Поскольку всё ядро работает в одном адресном пространстве, сбой в одном из компонентов может нарушить работоспособность всей системы.

В этом случае компоненты операционной системы являются не самостоятельными модулями, а составными частями одной большой программы. Такая структура операционной системы называется монолитным ядром (monolithic kernel). Монолитное ядро представляет собой набор процедур, каждая из которых может вызвать каждую. Все процедуры работают в привилегированном режиме.

Таким образом, монолитное ядро — это такая схема операционной системы, при которой все компоненты её ядра являются составными частями одной программы, используют общие структуры данных и взаимодействуют друг с другом путём непосредственного вызова процедур.

В некоторых операционных системах с монолитным ядром сборка ядра, то есть его компиляция, осуществляется отдельно для каждого компьютера, на который устанавливается операционная система. При этом можно выбрать список оборудования и программных протоколов, поддержка которых будет включена в ядро. Так как ядро является единой программой, перекомпиляция — это единственный способ добавить в него новые компоненты или исключить неиспользуемые в таких системах. Следует отметить, что присутствие в ядре лишних компонентов крайне нежелательно, так как ядро всегда полностью располагается в оперативной памяти. Кроме того, исключение ненужных компонентов повышает надёжность операционной системы в целом.

Монолитное ядро — старейший способ организации операционных систем. Примером систем с монолитным ядром является большинство Unix-систем.

В монолитном ядре выделяются вкрапления сервисных процедур, соответствующих системным вызовам. Сервисные процедуры выполняются в привилегированном режиме, тогда как пользовательские программы — в непривилегированном. Для перехода с одного уровня привилегий на другой иногда может использоваться главная сервисная программа, определяющая, какой именно системный вызов был сделан, корректность входных данных для этого вызова и передающая управление соответствующей сервисной процедуре с переходом в привилегированный режим работы.

Данный тип архитектуры ядер имеет преимущества. В частности, монолитное ядро более производительно, чем микроядро, поскольку состоит не из множества разрозненных процессов, «общающихся» между собой через механизм посылки сообщений, а работает в одном адресном пространстве, кроме того нет необходимости осуществлять переключения между процессами-сервисами.

Примером монолитного ядра является

Примеры: Традиционные ядра BSD), Linux; ядро

Модульное ядро

Модульное ядро — современная, усовершенствованная модификация архитектуры монолитных ядер операционных систем компьютеров.

В отличие от «классических» монолитных ядер, считающихся ныне устаревшими, модульные ядра, как правило, не требуют полной перекомпиляции ядра при изменении состава аппаратного обеспечения компьютера. Вместо этого модульные ядра предоставляют тот или иной механизм подгрузки модулей ядра, поддерживающих то или иное аппаратное обеспечение (например, драйверов). При этом подгрузка модулей может быть как динамической (выполняемой «на лету», без перезагрузки ОС, в работающей системе), так и статической (выполняемой при перезагрузке ОС после переконфигурирования системы на загрузку тех или иных модулей).

Все модули ядра работают в адресном пространстве ядра и могут пользоваться всеми функциями, предоставляемыми ядром. Поэтому модульные ядра продолжают оставаться монолитными. Модульность ядра осуществляется на уровне бинарного образа, а не на архитектурном уровне ядра, так как динамически подгружаемые модули загружаются в адресное пространство ядра и в дальнейшем работают как интегральная часть ядра. Модульные монолитные ядра не следует путать с архитектурным уровнем модульности, присущий микроядрам и гибридным ядрам. Практически, динамичная загрузка модулей, это просто более гибкий способ изменения образа ядра во время выполнения — в отличие от перезагрузки с другим ядром. Модули позволяют легко расширить возможности ядра по мере необходимости.

Модульные ядра удобнее для разработки, чем традиционные монолитные ядра, не поддерживающие динамическую загрузку модулей, так как от разработчика не требуется многократная полная перекомпиляция ядра при работе над какой-либо его подсистемой или драйвером. Выявление, локализация, отладка и устранение ошибок при тестировании также облегчаются.

Модульные ядра предоставляют особый программный интерфейс (API) для связывания модулей с ядром, для обеспечения динамической подгрузки и выгрузки модулей. В свою очередь, не любая программа может быть сделана модулем ядра: на модули ядра накладываются определённые ограничения в части используемых функций (например, они не могут пользоваться функциями стандартной библиотеки С/С++ и должны использовать специальные аналоги, являющиеся функциями API ядра). Кроме того, модули ядра обязаны экспортировать определённые функции, нужные ядру для правильного подключения и распознавания модуля, для его корректной инициализации при загрузке и корректного завершения при выгрузке, для регистрации модуля в таблице модулей ядра и для обращения из ядра к сервисам, предоставляемым модулем.

Не все части ядра могут быть сделаны модулями. Некоторые части ядра всегда обязаны присутствовать в оперативной памяти и должны быть жёстко «вшиты» в ядро. Также не все модули допускают динамическую подгрузку (без перезагрузки ОС). Общей тенденцией развития современных модульных ядер является всё большая модуляризация кода, улучшение механизмов динамической подгрузки и выгрузки, уменьшение или устранение необходимости в ручной подгрузке модулей или в переконфигурации ядра при изменениях аппаратуры путём введения тех или иных механизмов автоматического определения оборудования и автоматической подгрузки нужных модулей, универсализация кода ядра и введение в ядро абстрактных механизмов, предназначенных для совместного использования многими модулями. Примером может служить VFS — «виртуальная файловая система», совместно используемая многими модулями файловых систем в ядре Linux.

Микроядро

Микроядро предоставляет только элементарные функции управления процессами и минимальный набор абстракций для работы с оборудованием. Бо́льшая часть работы осуществляется с помощью специальных пользовательских процессов, называемых сервисами.

Достоинства: Устойчивость к сбоям оборудования, ошибкам в компонентах системы.

Недостатки: Передача данных между процессами требует накладных расходов.

Классические микроядра предоставляют лишь очень небольшой набор низкоуровневых примитивов, или системных вызовов, реализующих базовые сервисы операционной системы.

Сюда относятся:

  • управление адресным пространством оперативной памяти.
  • управление адресным пространством виртуальной памяти.
  • управление процессами и тредами (нитями, потоками).
  • средства межпроцессной коммуникации.

Все остальные сервисы ОС, в классических монолитных ядрах предоставляемые непосредственно ядром, в микроядерных архитектурах реализуются в адресном пространстве пользователя (Ring3) и называются сервисами. Примерами таких сервисов, выносимых в пространство пользователя в микроядерных архитектурах, являются сетевые сервисы, файловая система, драйверы.

Такая конструкция позволяет улучшить общее быстродействие системы. Современная тенденция в разработке операционных систем состоит в перенесении значительной части системного кода на уровень пользователя и одновременной минимизации ядра. Речь идет о подходе к построению ядра, называемом микроядерной архитектурой (microkernel architecture) операционной системы, когда большинство ее составляющих являются самостоятельными программами. В этом случае взаимодействие между ними обеспечивает специальный модуль ядра, называемый микроядром. Микроядро работает в привилегированном режиме и обеспечивает взаимодействие между программами, планирование использования процессора, первичную обработку прерываний, операции ввода-вывода и базовое управление памятью.

Остальные компоненты системы взаимодействуют друг с другом путем передачи сообщений через микроядро.

Основное достоинство микроядерной архитектуры — высокая степень модульности ядра операционной системы. Это существенно упрощает добавление в него новых компонентов. В микроядерной операционной системе можно, не прерывая ее работы, загружать и выгружать новые драйверы, файловые системы и т. д. Существенно упрощается процесс отладки компонентов ядра, так как новая версия драйвера может загружаться без перезапуска всей операционной системы. Компоненты ядра операционной системы ничем принципиально не отличаются от пользовательских программ, поэтому для их отладки можно применять обычные средства. Микроядерная архитектура повышает надежность системы, поскольку ошибка на уровне непривилегированной программы менее опасна, чем отказ на уровне режима ядра.

И чтобы добавить в ОС с микроядром драйвер того или иного устройства, не надо перекомпилировать всё ядро, а надо лишь отдельно откомпилировать этот драйвер и запустить его в пользовательском пространстве.

В то же время микроядерная архитектура операционной системы вносит дополнительные накладные расходы, связанные с передачей сообщений, что отрицательно влияет на производительность. Для того чтобы микроядерная операционная система по скорости не уступала операционным системам на базе монолитного ядра, требуется очень аккуратно проектировать разбиение системы на компоненты, стараясь минимизировать взаимодействие между ними. Таким образом, основная сложность при создании микроядерных операционных систем — необходимость очень аккуратного проектирования.

Микроядра типа ядра ОС GNU Hurd развиваются медленно, гораздо медленнее, чем BSD, но они обладают огромным потенциалом, то есть заделом на будущее, и, возможно, в этом самом будущем, достигнут аналогичного функционала.

Классическим примером микроядерной системы является Symbian OS. Это пример распространенной и отработанной микроядерной (a начиная c версии Symbian OS v8.1, и наноядерной) операционной системы. B отличие от Windows NT, создателям Symbian OS удалось совместить эффективность и концептуальную стройность, несмотря на то что современные версии этой системы предоставляют обширные возможности, в том числе средства для работы c потоковыми данными, стеками протоколов, критичными к латентности ядра, графикой и видео высокого разрешения). Будучи микроядерной операционной системой, Symbian «выносит» практически все прикладные (т.e. выходящие за пределы компетенции ядра) задачи в модули-серверы, функционирующие в пользовательском адресном пространстве.

В ОС Windows NT версий 3.х микроядерная архитектура с сервисным процессом использовалась для подсистемы графики и пользовательского интерфейса. В частности, драйвер графической аппаратуры загружался в контекст сервисного процесса, а не ядра. Начиная с версии 4, от этого отказались, сервисный процесс сохранился только для управления консольными окнами командной строки, а собственно графическая подсистема вместе с драйвером аппаратуры (в том числе трехмерной графики) переместилась в специально обособленный регион ядра ОС.

ОС Windows CE (и созданные на ее основе сборки, такие, как Windows Mobile), будучи практически полностью совместимой (как подмножество) с Windows NT по вызовам и методам программирования приложений, тем не менее полностью отличается от Windows NT по внутренней архитектуре и является микроядерной ОС с выносом всех драйверов устройств, сетевых стеков и графической подсистемы в сервисные процессы.

Сервисные процессы (в принятой в семействе UNIX терминологии: «демоны») активно используются в самых различных ОС для задач типа запуска программ по расписанию (UNIX и Windows NT), ведения журналов событий (UNIX и Windows NT), централизованной проверки паролей и хранения пароля текущего интерактивного пользователя в специально ограниченной области памяти (Windows NT). Тем не менее не следует считать ОС микроядерными только из-за использований такой архитектуры. Решающим критерием «микроядерности» является размещение всех или почти всех драйверов и модулей в сервисных процессах, иногда с явной невозможностью загрузки любых модулей расширения в собственно микроядро, а также разработки таких расширений.

Примеры: Symbian OS; GNU/Hurd и Mac OS X; Windows CE; AIX; ChorusOS ; MorphOS.

Экзоядро

Экзоядро — ядро операционной системы компьютеров, предоставляющее лишь функции для взаимодействия между процессами и безопасного выделения и освобождения ресурсов. Предполагается, что API для прикладных программ будут предоставляться внешними по отношению к ядру библиотеками (откуда и название архитектуры).

Возможность доступа к устройствам на уровне контроллеров позволит эффективней решать некоторые задачи, которые плохо вписываются в рамки универсальной ОС, например реализация СУБД будет иметь доступ к диску на уровне секторов диска, а не файлов и кластеров, что положительно скажется на быстродействии.

Наноядро

Наноядро — архитектура ядра операционной системы компьютеров, в рамках которой крайне упрощённое и минималистичное ядро выполняет лишь одну задачу — обработку аппаратных прерываний, генерируемых устройствами компьютера. После обработки прерываний от аппаратуры наноядро, в свою очередь, посылает информацию о результатах обработки (например, полученные с клавиатуры символы) вышележащему программному обеспечению при помощи того же механизма прерываний. Примером является KeyKOS — самая первая ОС на наноядре. Первая версия вышла ещё в 1983-ем году.

Гибридное ядро

Гибридные ядра это модифицированные микроядра, позволяющие для ускорения работы запускать «несущественные» части в пространстве ядра.

Имеют «гибридные» достоинства и недостатки.

Все рассмотренные подходы к построению операционных систем имеют свои достоинства и недостатки. В большинстве случаев современные операционные системы используют различные комбинации этих подходов. Так, например сейчас, ядро «Linux» представляет собой монолитную систему с отдельными элементами модульного ядра. При компиляции ядра можно разрешить динамическую загрузку и выгрузку очень многих компонентов ядра — так называемых модулей. В момент загрузки модуля его код загружается на уровне системы и связывается с остальной частью ядра. Внутри модуля могут использоваться любые экспортируемые ядром функции.

Существуют варианты ОС Linux были бы частью ядра. Другим примером смешанного подхода может служить возможность запуска операционной системы с монолитным ядром под управлением микроядра. Так устроены 4.4BSD и MkLinux, основанные на микроядре

Наиболее тесно элементы микроядерной архитектуры и элементы монолитного ядра переплетены в ядре Windows NT. Хотя Windows NT часто называют микроядерной операционной системой, это не совсем так. Микроядро NT слишком велико (более 1 Мбайт, кроме того, в ядре системы находится, например, ещё и модуль графического интерфейса), чтобы носить приставку «микро». Компоненты ядра Windows NT располагаются в вытесняемой памяти и взаимодействуют друг с другом путем передачи сообщений, как и положено в микроядерных операционных системах. В то же время все компоненты ядра работают в одном адресном пространстве и активно используют общие структуры данных, что свойственно операционным системам с монолитным ядром. По мнению специалистов Microsoft, причина проста: чисто микроядерный дизайн коммерчески невыгоден, поскольку неэффективен.

Таким образом, Windows NT можно с полным правом назвать гибридной операционной системой.

Смешанное ядро, в принципе, должно объединять преимущества монолитного ядра и микроядра: казалось бы, микроядро и монолитное ядро — крайности, а смешанное — золотая середина. В них возможно добавлять драйвера устройств двумя способами: и внутрь ядра, и в пользовательское пространство. Но на практике концепция смешанного ядра часто подчёркивает не только достоинства, но и недостатки обоих типов ядер.

Примеры: Windows NT, DragonFlyBSD.

Ссылки

  • Ядро @ dmoz.org

Литература

  • Роберт Лав Разработка ядра Linux = Linux Kernel Development. — 2-е изд. — М.: «Вильямс», 2006. — С. 448. — ISBN 0-672-32720-1

Операционная система

Ядро

Микроядро • Монолитное ядро • Гибридное ядро • Пространство ядра (kernel space) • Модульное ядро • Наноядро • Драйвер • Пространство пользователя • Область пользователя • Экзоядро

Управление
процессом

Процесс • Мультипрограммирование • Прерывание • Защищённый режим (кольца защиты) • Режим супервизора • Многозадачность • Многопоточность • Управление процессом • Планировщик задач • Переключение контекста • Кооперативная многозадачность • Вытесняющая многозадачность • Режимы работы процессора

Управление
памятью

Защита памяти • Сегментация памяти • Страничная память (Paging) • Блок управления памятью • Ошибка сегментации • Общая ошибка защиты

Примеры

Microsoft Windows • Mac OS • Прочее

Загрузчик ОС • API • VFS • Компьютерная сеть • GUI • История операционных систем • Слой аппаратных абстракций HAL

Wikimedia Foundation.
2010.

Понравилась статья? Поделить с друзьями:

Другие крутые статьи на нашем сайте:

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии