Разбираемся, как работают операционные системы
Linux, Windows, Mac OS? Зачем они нужны? Понимание того, как работают операционные системы, поможет создавать качественные приложения.
Есть несколько причин, почему программистам стоит знать, как работают операционные системы. Одна из них – чтобы понимать, как работают программы. Представьте: вы пишете код, который кажется рабочим, но программа тормозит. Что делать? Можно попробовать разобраться с ограничениями операционной системы, но вы ведь не умеете!
Если стремитесь построить карьеру программиста, стоит понять, как работают операционные системы. Например, можно изучить курс «Введение в операционные системы» от Georgia Tech. В нем рассказывается, как работают ОС: механизмы работы, параллельное программирование (потоки и синхронизация), взаимодействие между процессами, распределённые ОС.
Осветим 10 наиболее важных принципов, о которых говорилось в курсе Udacity, и разберемся как же работают операционные системы.
Это первое, о чем нужно задуматься, если вы решили разобраться, как работают операционные системы. ОС представляют собой набор программного обеспечения. Это ПО управляет компьютерным оборудованием и предоставляет техническую базу для программ. А ещё они управляют вычислительными ресурсами и обеспечивают защиту. Главное, что у них есть, – это доступ к управлению компонентами компьютера.
Файловая система, планировщик и драйверы – всё это основные инструменты работы ОС.
Существует три ключевых элемента операционной системы:
- Абстракции (процессы, потоки, файлы, сокеты, память).
- Механизмы (создание, управление, открытие, запись, распределение).
- Реализации (алгоритмы LRU, EDF).
Кроме того, есть два основных принципа проектирования операционных систем:
- Максимальная гибкость: отделение механизмов от конкретных реализаций.
- Ориентация на пользователей: на каких устройствах будет работать ОС, что нужно пользователю, каковы требования к производительности.
Теперь подробнее разберём глобальные концепции, которые помогут сформировать понимание того, как работают операционные системы.
Процесс – не что иное, как исполнение программы. Так как программа записана в виде последовательности действий в текстовый файл, процессом она становится только при запуске.
Загруженная в память программа может быть условно разделена на четыре части: стек, кучу, контекст и данные.
- Stack: стек процесса содержит временные данные, такие как параметры метода, адрес возврата и локальные переменные.
- Heap: это динамически распределяемая память процесса времени его выполнения.
- Text: хранит состояние регистров, состояние программного счетчика, режим работы процессора, незавершенные операции ввода-вывода, информацию о выполненных системных вызовах.
- Data: раздел содержит глобальные и статические переменные.
Когда процесс выполняется, он проходит через разные состояния. Эти этапы могут различаться в разных операционных системах.
Общая картина выглядит так:
- Start: начальное состояние при создании процесса.
- Ready: процесс ожидает исполнения на процессоре. В течение работы процессор может переключаться между процессами, переводя одни в режим готовности, другие – в режим исполнения.
- Running: выполнение инструкций.
- Wait: процесс переходит в состояние ожидания. Например, ждёт ввода данных или получения доступа к файлу.
- Terminated: как только процесс завершится, он перейдёт в это состояние и будет ожидать удаления.
Немного терпения: мы уже близки к пониманию того, как работают операционные системы 😉
Блок управления процессов (Process Control Block) – это структура данных, поддерживаемая операционной системой для каждого процесса. PCB имеет идентификатор PID. Именно PCB хранит всю информацию, необходимую для отслеживания процесса.
- Process ID: идентификатор каждого из процессов в ОС.
- State: текущее состояние процесса.
- Privileges: разрешения доступа к системным ресурсам.
- Pointer: указатель на родительский процесс.
- Priority: приоритет процесса и другая информация, которая требуется для планирования процесса.
- Program Counter: указатель на адрес следующей команды, которая должна быть выполнена.
- CPU registers: регистры процессора, необходимые для состояния исполнения.
- Accounting Information: уровень нагрузки на процессор, статистика и другие данные.
- I/O Information: список ресурсов, использующих чтение и запись.
Поток (нить, thread) – это ход исполнения программы. Он также имеет свой program counter, переменные, стек.
Потоки одной программы могут работать с одними данными, а взаимодействовать между собой через код.
Поток – это легковесный процесс. Вместе они обеспечивают производительность приложений и ОС за счет параллелизма на уровне программы.
Каждый поток относится к какому-то процессу и не может существовать без него. Сегодня потоки широко применяются в работе серверов и многопроцессорных устройств с общей памятью.
Чем хороши потоки:
- Они минимизируют время переключения контекста (процессора).
- Их использование обеспечивает параллелизм процесса.
- Они эффективно общаются между собой.
- Потоки позволяют использовать многопроцессорные архитектуры в большем масштабе.
Потоки имеют два уровня реализации:
- Пользовательский уровень, то есть потоки, управляемые приложениями;
- Уровень ядра, то есть потоки, управляемые ядром операционной системы.
В первом случае ядро управления потоками ничего не знает о существовании потоков вообще. А библиотека потоков просто содержит код для создания и уничтожения потоков, а также передачи сообщений и данных между ними для планирования выполнения потоков и сохранения (восстановления) контекстов потоков.
Во втором случае ядро выполняет создание потоков, а ещё планирование и управление в пространстве ядра. Заметим, что потоки ядра обычно медленнее, чем потоки пользователей.
Планировщик – это часть менеджера процессов, которая ответственна за переключение между процессами и выбор очереди по какой-либо стратегии.
ОС поддерживает все блоки управления процессом (PCB) в очередях планирования процесса:
- Очередь задач (job queue) поддерживает все процессы в системе.
- Очередь ожидания (ready queue) хранит информацию обо всех процессах, находящихся в основной памяти в состоянии ожидания. В эту очередь попадают и новые процессы.
- Очереди из устройств (device queue) – это процессы, заблокированные из-за недоступности устройств ввода-вывода.
ОС может использовать разные методы реализации для управления очередями (FIFO, Round Robin, Priority). Планировщик ОС определяет, когда и как перемещать процессы между готовыми и запущенными очередями (могут иметь только одну запись на ядро процессора в системе). На приведенной выше диаграмме он был объединен с процессором.
Модели состояния делятся на активные и неактивные:
- Активные: при создании нового процесса он переходит в класс активных.
- Неактивные: процессы, которые не выполняются, а ждут завершения других процессов. Каждая запись в очереди является указателем на конкретный процесс. Очередь реализуется с использованием связанного списка. Использование диспетчера заключается в следующем: когда процесс прерывается, то переносится в очередь ожидания. Если процесс завершен или отменен – он отменяется вовсе.
Переключение контекста – это механизм сохранения (в PCB) и восстановления контекста процессора с ранее запущенного промежутка времени. При использовании этого метода, коммутатор контекста позволяет использовать один процессор для нескольких действий одновременно. Кстати, контекстное переключение является неотъемлемой частью многозадачной операционной системы.
Когда планировщик переключает процессор с одного процесса на другой, состояние из текущего запущенного процесса сохраняется в блоке управления. Затем состояние для следующего процесса загружается из своего PCB в регистры процессора. Только потом второй процесс может быть запущен.
При переключении следующая информация сохраняется для последующего использования: счетчик программы, информация планировщика, значение регистра базы и лимита, используемый в настоящее время регистр, измененное состояние, информация о состоянии ввода и вывода, учетная информация.
Адресное пространство процесса – набор логических адресов, к которым программа обращается в коде. Например, если используется 32-битная адресация, то допустимые значения варьируются от 0 до 0x7fffffff, то есть 2 Гб виртуальной памяти.
Операционная система заботится о том, чтобы сопоставить логические адреса с физическими во время выделения памяти программе. Нужно также знать, что существует три типа адресов, используемых в программе до и после выделения памяти:
- Символьные адреса: или по-другому адреса, используемые в исходном коде. Имена переменных, константы и метки инструкций являются основными элементами символического адресного пространства.
- Относительные адреса: компилятор преобразует символические адреса в относительные адреса.
- Физические адреса: загрузчик генерирует эти адреса в момент загрузки программы в основную память.
Виртуальные и физические адреса одинаковы как в процессе загрузки, так и во время компиляции. Но они начинают различаться во время исполнения.
Набор всех логических адресов, которые создала программа, называется логическим адресным пространством. Набор всех физических адресов, соответствующих этим логическим адресам, называется физическим адресным пространством.
Хотите разобраться подробнее в том, как работают операционные системы? Посмотрите соответствующие книги в нашем Телеграм-канале.
Существует два типа процессов: независимые и взаимодействующие. На независимые не оказывается влияние процессов сторонних, в отличие от взаимодействующих.
Можно подумать, что процессы, которые работают независимо, выполняются эффективнее, но зачастую это не так. Использование кооперации может повысить скорость вычислений, удобство и модульность программ.
Межпроцессная коммуникация (IPC) – это механизм, который позволяет процессам взаимодействовать друг с другом и синхронизировать действия. Связь между этими процессами может рассматриваться как сотрудничество.
Процессы могут взаимодействовать двумя способами: через общую память или через передачу сообщений.
Метод использования общей памяти
Допустим, есть два процесса: исполнитель (производитель) и потребитель. Один производит некоторый товар, а второй его потребляет. Эти два процесса имеют общее пространство или ячейку памяти, известную как «буфер». Там хранится элемент, созданный исполнителем, оттуда же потребитель получает этот элемент.
Однако у этих версий есть как минимум две значимые проблемы: первая известна как проблема безграничного буфера: исполнитель может продолжать создавать элементы без ограничений на размер буфера. Вторая заключается в том, что исполнитель, заполнив буфер, переходит в режим ожидания.
В задаче с ограниченным буфером у исполнителя и потребителя будет общая память. Если общее количество произведенных товаров равно размеру буфера, то исполнитель будет ждать их потребления.
Аналогично потребитель сначала проверит наличие товара, и если ни один элемент не будет доступен, придётся ждать его освобождения.
Метод анализа сообщений
С помощью этого метода процессы взаимодействуют друг с другом без использования общей памяти. Допустим, есть два процесса, p1 и p2, которые хотят взаимодействовать друг с другом. Они работают следующим образом:
- Устанавливается связь (если её ещё не существует).
- Начинается обмен сообщениями с помощью базовых примитивов. Нам нужно как минимум два примитива – отправить (сообщение, пункт назначения) или получить (сообщение).
Размер сообщения может быть фиксированным или переменным. Проектировщикам ОС проще работать с сообщениями фиксированного размера, а программистам – переменного. Стандартное сообщение состоит из двух частей – заголовка и тела.
Одной из важнейших задач операционной системы является управление различными устройствами ввода и вывода вроде мыши, клавиатуры, дисководов, etc.
Система ввода и вывода принимает запрос приложения на ввод или вывод данных, а затем отправляет его на соответствующее физическое устройство. После возвращает приложению полученный ответ. Устройства ввода и вывода можно разделить на две категории:
- Блочные: то есть устройства, с которыми драйверы связываются, отправляя целые блоки данных. Например, жесткие диски, USB-камеры, Disk-On-Key.
- Символьные: те устройства, с которыми драйвер связывается, отправляя и получая одиночные символы (байты или октеты). Например, последовательные порты, параллельные порты, звуковые карты и так далее.
ЦПУ должен иметь способ передачи информации на устройство ввода-вывода и обратно. И есть три способа сделать это:
- Специальные инструкции
Особые, неуниверсальные инструкции процессора, внедренные специально для контроля устройств ввода-вывода. Они позволяют отправлять данные на устройство и считывать их оттуда.
- Входы и выходы с отображением памяти
Когда используется ввод-вывод с отображением памяти, одно и то же адресное пространство разделяется памятью и устройствами ввода-вывода. Устройство подключается непосредственно к ячейкам памяти так, чтобы можно было передавать блок данных без применения ЦПУ.
- Прямой доступ к памяти (DMA)
Медленные устройства, такие как клавиатуры, генерируют прерывания ЦПУ после передачи каждого байта. Если бы быстрые устройства работали похожим образом, то ОС бы тратила большую часть времени впустую, на обработку этих прерываний. Поэтому для снижения нагрузки обычно используется прямой доступ к памяти (DMA).
Это означает, что ЦПУ предоставляет модулю ввода и вывода полномочия для чтения или записи в память. Сам модуль управляет обменом данными между основной памятью и устройством ввода-вывода. ЦПУ участвует в начале и конце передачи, а прерывается только после полной передачи блока.
Организация прямого доступа к памяти требует специального оборудования, называемого контроллером DMA (DMAC). Он управляет передачей данных и доступом к системной шине. Контроллеры запрограммированы с указателями источника и места назначения, счетчиками для отслеживания количества переданных байтов и прочими настройками.
Технология, которая позволяет создавать несколько сред или выделенных ресурсов из единой физической аппаратной системы называется виртуализация
Программное обеспечение, гипервизор, напрямую подключается к этой аппаратной системе и позволяет разбить ее на отдельные, безопасные среды – виртуальные машины. По идее, гипервизор должен аппаратные ресурсы между виртуальными машинами так, чтобы процессы выполнялись быстрее.
Физическая машина с гипервизором называется хостом, а виртуальные машины, которые используют ресурсы данного хоста – гостями. Для них ангаром ресурсов являются процессор, память, хранилище. Для получения доступа к этим ресурсам операторы управляют виртуальными экземплярами.
В идеале, все связанные виртуальные машины управляются с помощью единой веб-консоли управления виртуализацией. Она нужна, чтобы ускорять работу. Виртуализация позволяет определить, сколько вычислительной мощности и памяти выделять виртуальным машинам. Кроме того, так как виртуальные машины технически не связаны между собой, это повышает безопасность сред.
Проще говоря, виртуализация создает дополнительные мощности для выполнения процессов.
Типы виртуализации
- Данные: позволяет компаниям обеспечивать вычислительные мощности для объединения данных из нескольких источников, размещения новых источников и преобразования данных в соответствии с потребностями пользователя.
- Рабочий стол: легко спутать с виртуализацией операционной системы. Виртуализация рабочего стола позволяет центральному администратору одновременно развёртывать смоделированные среды на сотнях физических машин. Виртуальные системы позволяют администраторам выполнять массовые конфигурации, обновления и проверки безопасности на всех устройствах сразу.
- Серверы: программная имитация с помощью специального ПО аппаратного обеспечения компьютера: процессор, память, жесткий диск, и т. д. На такой виртуальный компьютер можно установить операционную систему, и она будет на нем работать точно так же, как и на простом, «железном» компьютере. Самое интересное достоинство этой технологии – это возможность запуска нескольких виртуальных компьютеров внутри одного физического. При этом, все виртуальные компьютеры могут работать независимо друг от друга.
Сервер – компьютер, спроектированный под выполнение большого объема специфических задач. Виртуализация сервера позволит ему выполнять больше этих специальных задач, а также разделить функционал на разные компоненты. - ОС: это способ одновременного запуска Linux и Windows-сред. Преимущество в том, что это уменьшает затраты на оборудование, повышает безопасность и экономит время на обслуживании.
- Сетевые функции: разделяет ключевые функции сети (например, службы каталогов, общий доступ к файлам и IP-конфигурацию) для распределения между средами. Виртуальные сети сокращают количество физических компонентов: коммутаторов, маршрутизаторов, серверов, кабелей.
Распределенная файловая система – это клиентское или клиент-серверное приложение, которое позволяет получать и обрабатывать данные. Они хранятся на сервере, как если бы они находились на персональном компьютере. Когда пользователь запрашивает файл, сервер отправляет ему копию запрашиваемого файла, который кэшируется на компьютере пользователя во время обработки данных, а затем возвращается на сервер.
Бывает так, что за одними и теми же данными одновременно обращаются сразу несколько пользователей. Для этих целей сервер должен иметь механизм организации обновлений, чтобы клиент всегда получал самую актуальную версию данных. Распределенные файловые системы обычно используют репликацию файлов или баз данных для защиты от сбоев.
Сетевая файловая система Sun Microsystems (NFS), Novell NetWare, распределенная файловая система Microsoft и DFS от IBM являются примерами распределенных файловых систем.
Распределенная общая память (DSM) – это компонент управления ресурсами распределенной операционной системы. В DSM доступ к данным осуществляется из общего пространства, аналогично способу доступа к виртуальной памяти. Данные перемещаются между дополнительной и основной памятью, а также между разными узлами. Изменения прав собственности происходят, когда данные перемещаются с одного узла на другой.
Преимущества распределенной общей памяти:
- Программистам можно не беспокоиться о передаче памяти между машинами, потому что перемещение данных можно скрыть;
- Можно передавать сложные структуры по ссылке, упрощая разработку алгоритмов для распределенных приложений;
- Это дешевле, чем многопроцессорные системы и может быть реализовано с использованием обычного оборудования;
- Можно использовать неограниченное количество узлов;
- Программы, написанные для мультипроцессоров с общей памятью, могут быть запущены в системах DSM.
Всё больше процессов переходит в облако. По сути, облачные вычисления – это своего рода аутсорсинг компьютерных программ. Используя облачные вычисления, пользователи могут получать доступ к программному обеспечению и приложениям из любого места. Это означает, что им не нужно беспокоиться о таких вещах, как хранение данных и питание компьютера.
Традиционные бизнес-приложения всегда были очень сложными, дорогими в обслуживании – нужна команда экспертов для установки, настройки, тестирования, запуска, защиты и обновления. Это одна из причин, почему стартапы проигрывают корпорациям.
Используя облачные вычисления, вы передаёте ответственность за аппаратное и программное обеспечение опытным специалистам, таким как Salesforce и AWS. Вы платите только за то, что вам нужно, апгрейд платежного плана производится автоматически по мере ваших потребностей, а масштабирование системы протекает без особых сложностей.
Приложения на базе облачных вычислений могут работать эффективнее, дольше и стоить дешевле. Уже сейчас компании используют облачные приложения для множества приложений, таких как управление отношениями с клиентами (CRM), HR, учет и так далее.
В заключение хочется ещё раз вернуться к тому, зачем вообще разбираться в том как работают операционные системы. Операционная система – это «мозг», который управляет входными, обрабатываемыми и выходными данными. Все остальные компоненты также взаимодействуют с операционной системой. Понимание того, как работают операционные системы, прояснит некоторые детали и в других компьютерных науках, ведь взаимодействие с ними организуется именно средствами ОС.
Источник: Как работают операционные системы: 10 концептов, которые нужно знать разработчикам on Medium.
Что такое операционная система в компьютере: как узнать вашу ОС
Здравствуйте, друзья! Многие, пользуясь компьютером, даже не подразумевают, что он работает благодаря установленной на него операционной системы, которая отвечает за аппаратное и программное обеспечение компьютера (ПК).
Сейчас существует несколько основных операционных систем, о которых мы будем говорить в этой статье, но более популярной среди новичков является windows. Поэтому больше внимания я буду уделять именно ей.
Операционная система (ОС)
И так друзья что же такое операционная система в компьютере?
Если говорить простым языком это программное обеспечение вашего ПК, как правило, предоставляемое вместе с компьютером, которое управляет ресурсами ПК и организует взаимодействие с пользователями.
ОС отвечает за работу всех установленных программ, запущенных процессов и правильную работу подключенного оборудования к вашему ПК. Без установленной операционной системы компьютер просто бесполезен.
После нажатия кнопки старт на ПК сразу начинается процесс загрузки ОС и во время него происходит следующие:
- Проверка BIOS и оборудования
- Проверяются и загружаются драйверы устройств
- На последнем этапе запускается сама ОС
ОС выполняет следующие основные функции
- Прием и выполнение команд пользователей
- Запуск, остановка и работа программ
- Управление оперативной памятью
- Доступ к подключаемым к компьютеру устройствам (мышь, клавиатура, принтер…)
- Сбор и сохранение данных об ошибках в работе системы
Основные виды ОС
Используя ПК дома, вы даже не задумываетесь, какая именно стоит ОС. А эту информацию знать необходимо хотя бы, потому что если вы вдруг захотите установить, какую ни будь программу, то вам придется выбрать именно ту, которая будет совместима с вашей системой.
Приступим к небольшому обзору трех самых популярных операционных систем.
Windows
Самая востребованная это Microsoft Windows выпущенная корпорацией Microsoft а сама система Windows в переводе означает – окна.
В настоящее время поддерживаются производителем несколько версий:
- Windows 7 с пакетом обновления 1 – обслуживаться будет до 14 января 2020 года
- Windows 8.1 – обслуживаться будет до 10 января 2023 года
- Windows 10 – с 2015 года розничные продавцы предоставляют компьютеры именно с этой предустановленной версией
Но не пугайтесь, у кого сейчас установлены версии 7 и 8.1. Прекращение обслуживания не означает, что у вас они перестанут работать, корпорация просто прекратит выпускать обновления для них. Я знаю людей, которые до сих пор работают с Виндовс XP, хотя обновления для нее прикатились выпускаться еще в 2014 году.
Располагается операционная система на жестком диске, в большинстве случаях это раздел «Локальный диск С» где при установке создаются такие папки как:
- Windows – располагается сама ОС со всеми настройками.
- Program Files – здесь находятся папки с установленными на ПК программами.
- Users (пользователи) – папка где хранятся профили пользователей
- PerfLogs – хранит файлы отчетов о производительности системы
Внимание настоятельно рекомендую в первых двух папках, не вносить ни каких изменений, так как так как можно повредить файлы ОС или установленных программ. В результате чего ПК или установленная программа может перестать работать.
Теперь давайте подробнее разберем, как узнать свою версию Windows.
1. На рабочем столе находим значок «Компьютер» или «Этот компьютер»
Если этого значка у вас нет, то мы можем за несколько кликов вывести его на рабочий стол.
Для этого кликаем правой кнопкой мыши на свободной области рабочего стола, в открывшемся меню выбираем пункт персонализация.
В открывшемся окне для виндовс 7 и 8 ищем пункт «Изменение значков рабочего стола»
Для виндовс 10 пункт будет называться «Темы» и уже в правой части открытого окна ищем и жмем на «Параметры значков рабочего стола»
В появившемся окне (для всех Windows оно практически одинаковое) ставим галочку возле надписи компьютер и жмем кнопку «ок». Вот и все, значок мой компьютер на рабочем столе.
2. Наводим курсор мыши на значок компьютера, жмем правую кнопку и в открывшемся меню выбираем «свойства»
В открывшемся окне внимательно изучаем информацию о системе, которая установлена на ваш ПК.
У меня это Windows 10 Pro. Помимо этого есть информация о процессоре, объеме оперативной памяти, о типе системы, а также об активации моей Windows.
И так с виндовс разобрались, теперь переходим разбору остальных систем.
Apple Mac Os X
Mac Os специально выпускается компанией Apple (в переводе с английского — яблоко) с 1984 года для компьютеров Macintosh сокращенно «Mac».
Так как данная ОС устанавливается только на продукцию Apple а эти устройства стоят дорого, среди пользователей большей популярностью пользуется виндовс ведь она может работать на любых компьютерах.
Для того чтобы посмотреть какая версия Mac Os установлена нужно курсор мыши навести в левый верхний угол на кнопку Apple или значок «яблока» и нажать левой кнопкой. В открывшемся меню выбрать пункт «Об этом Mac»
Linux
Отличительной чертой Linux является то, что эта ОС с открытым исходным кодом, который может изменить любой пользователь, в связи с этим сейчас существует много версий этой ОС, каждая из которых имеет свой собственный внешний вид.
Вот три самых популярных версий (дистрибутив) Linux:
- Ubuntu
- Fedora
- Mint
Есть несколько преимуществ Люнекс:
- Она бесплатная
- Все программы установлены в одном месте
- Можно забыть про вредоносное ПО, так как вирусы пишут в основном для виндовс.
Если у вас установлен Linux но вы не знаете какой именно дистрибутив используется то следует в консоли ввести следующие команды:
- cat /etc/*release
- cat /etc/*version
- cat /etc/issue
Российские разработки
Совсем недавно государством был дан курс на импортозамещение, это вдохнуло новую жизнь в разработку отечественных операционных систем.
Разработчиками было предложено много интересных продуктов, даже одна из госкорпораций анонсировала ОС с интересным названием «ОСь».
Она должна была заменить Windows в государственных учреждениях, но почему-то сегодня на официальном сайте ее даже невозможно скачать.
Еще хотелось бы отметить, что в основном все отечественные ОС написаны на основе Linux. Лично у меня складывается такое впечатление, что они просто меняют обои рабочего стола. За бюджетные деньги.
А так хочется что-то наше на русском языке и чтобы работало с программным обеспечением, заточенным под другие системы.
Заключение
Теперь я думаю, что вы разобрались, что такое ОС и с легкостью сможете посмотреть, какая версия у вас установлена.
А остальные навыки работы за компьютером вам поможет развить обучение компьютерной грамотности.
Ну вот, вроде бы и все. Ничего сложного. Это все что я хотел рассказать вам сегодня.
Как вам статья? Считаете ее полезной? То поделитесь ей в социальных сетях, нажав кнопки расположенные ниже. И подпишитесь на обновления блога чтобы не пропустить следующую.
С уважением, Александр Зырянов.
что это такое, список ос, описание, сравнение
При использовании современных гаджетов часто можно услышать вопрос об операционной системе, многие люди даже не задумываются что же это такое. Все знают, что на их компьютерах находится ОС, но при объяснении этого понятия часто возникают проблемы. Данная статья поможет разобраться в этом вопросе.
Что такое Операционная Система
Операционная система — это комплект программ, управляющий памятью и процессами компьютера, смартфона или другого устройства и являющийся главной его частью.
ОС выглядит как рабочий стол с визуальным интерфейсом. Благодаря этому пользователи играют в игры, пишут документы и работают, ищут информацию в интернете. Операционная система нужна для того, чтобы решать много разных задач.
Как работает ОС
Когда происходит нажатие кнопки включения компьютера, операционная система загружается. В это время компьютером выполняются такие функции:
- Проверка работы всех программ;
- Проверка на наличие нового оборудования;
- Запуск операционной системы.
Какие задачи выполняет современная ОС
- Файловая система позволяет создавать, открывать и пользоваться разными файлами.
- Все программы исполняются в порядке очереди благодаря пакетному режиму. Задачи загружаются так, чтобы процессор не оставался без работы.
- Продолжением концепции пакетного режима можно считать многозадачность. Чтобы процессором выполнялись одновременно несколько задач разработали такой подход, как разделение времени. Процессорное время распределяется между исполнением программ.
- По причине конфликта одной программы с другой было создано разделение полномочий. Это позволяет избежать замены одной программы данных в памяти компьютера другой.
Функции ОС
- Программы делятся на задачи, загружаются в операционную систему и распределяются по процессорам. Так работает функция управления оперативной памятью.
- Загрузка программ в оперативную память — это функция их выполнения.
- ОС считывает информацию с дисков, флеш карт и других внешних устройств. Это функция управления носителями информации.
- Функция доступа ко всем устройствам. Под устройствами понимается все то, что подключено к компьютеру и позволяет принимать информацию (например мышь и клавиатура), а так же выдавать её (например монитор, сканер, принтер).
- Чтобы было просто и понятно работать за компьютером создан интерфейс пользователя.
- ОС может сохранять данные о сбоях программы, ошибках работы и сама их исправить. Но происходит это в редких случаях.
Какие операционные системы существуют
Microsoft Windows
Это первая операционная система, имеющая интерфейс, к которому привык современный пользователь. Windows была выпущена в 1985 году. До этого существовал MS DOS, имеющий вид оболочки, в которую вводятся команды.
Выглядело это вот так.
А вот так выглядела первая версия Windows.
На данный момент новейшей версией является Windows 10
Преимущества Windows
- Её просто установить и легко использовать.
- Драйвера всех популярных программ работают на этой платформе.
- Имеет привлекательный интерфейс.
- Эта ОС поддерживает многие устройства.
- Удаленная иформация легко восстанавливается.
- Получение помощи технической поддержки.
Недостатки
- Из-за своей популярности эта ОС часто подвергается атакам вредоносного ПО, то есть хватает вирусы.
- Операционная система платная и стоит дорого.
- Чтобы стабилизировать работу, приходится постоянно читстить мусор.
Linux
Эту ОС выпустили в 1991 году. Попытки конкуренции с Windows оказались неудачными, популярность эта операционная система так и не завоевала.
Плюсы
- Открытость исходного кода. То есть, ОС является бесплатной.
- Угроза от вирусов практичеки отсутствует.
- Системных ресурсов требуется значительно меньше.
Минусы
- Сложно освоить новичку.
- Создана в основном для программистов, поэтому отсутствуют игры и многие программы.
- Возникает проблема права доступа.
Apple Mac OS X
Эту ОС поддерживает только техника Apple, она не совместима с устройствами других производителей.
Достоинства
- Интерфейс удобный и имеет много функций, которые делают работу легкой.
- Безопасность и надежная защита от вирусов.
- Преимущество в стабильной работе.
Недостатки
- Высокая цена.
- Выбор программ хуже, чем на Виндовс.
- Видеокарты слабее, а игр меньше.
ОС для мобильных устройств
Все ОС, о которых говорилось выше разработаны специально для настольных компьютеров и ноутбуков. Телефоны, смартфоны и планшеты имеют свои операционные системы. Они не такие функциональные, но хорошо справляются с основными задачами. Например, можно скачивать и пользоваться приложениями, смотреть фильмы, работать с информацией в интернете и даже создать документ.
В настоящее время существуют:
- ANDROID установлена практически на всех современных мобильных устройствах.
- IOS работает на смартфонах и планшетах фирмы Apple.
Автор, специалист в сфере IT и новых технологий.
Получил высшее образование по специальности Фундаментальная информатика и информационные технологии в Московском государственном университете имени М.В. Ломоносова. После этого стал экспертом в известном интернет-издании. Спустя время, решил попробовать писать статьи самостоятельно. Ведет популярный блог на Ютубе и делится интересной информацией из мира технологий.
Операционная система простым языком
Наверняка вы уже 100 раз слышали об операционной системе(ОС), но никак не могли, или не хотели понять, что это вообще такое. В этой статье я хочу вам рассказать о том, что из себя представляет эта самая операционная система(ОС), как она работает и зачем она вообще нам нужна. Минимум терминов, максимум понятных примеров.И так , ОС — это что-то вроде интерфейса, для удобной работы человека с железом. Вы наверняка знаете, что процессор не всесилен, и может выполнять только ограниченное количество операций в секунду. Операционная система же призвана распределить мощность процессора и всего вашего железа в целом, по разным приложениям и программам так, чтобы вы могли одновременно запускать любимую доту , форсить запрещенные сайты и параллельно пилить диплом в ворде. Ко всему прочему, ОС может разбить 1 программу, на кучу маленьких «подпрограмм», что позволит быстрее ей запускаться. Как в мозаике. Вы видите картинку в целом, а на самом деле она состоит из крошечных деталей. Вы не пихаете одновременно все фрагменты, а складываете их по 1, тем самым упрощая жизнь себе и окружающим.
Естественно это не все ее функции. Операционная система намного более сложная вещь, чем то, как я ее сейчас описал. Вот еще пару базовых ее функций:
- Контроль доступа к оборудованию
- Управление файлами и папками
- Предоставление интерфейса пользователю
- Управление приложениями
Тут все достаточно просто. ОС настраивает взаимодействие между оборудованием и приложением, используя при этом драйвера. Например , если ты внезапно захотел подключить к компьютеру старый дедовский принтер, тебе понадобится для начала найти драйвера на него в интернете, а еще лучше иметь при себе диск, ибо найти нужный драйвер на старую модель достаточно трудно.
Драйвер — это программа настройки оборудования с ОС, чтобы твой старенький Windows XP понял с чем он сейчас имеет дело.
Управление папками и файлами
Здесь все еще легче чем с драйверами. ОС на жестком диске создает упорядоченную файловую структуру, которой удобно пользоваться и извлекать информацию. Мы с вами видим папку «Porn», а операционная система понимает это как блок взаимосвязанных данных.
Интерфейс пользователя
Я даже не знаю зачем пишу этот пункт. Интерфейс пользователя — это все то что мы видим, когда только запускаем компьютер . Он позволяет нам не потеряться в огромном количестве функций и взаимодействовать с программами.
Управление приложениями
Пользователь запускает нужную ему программу (например блокнот), а ОС выделяет для него место в ОЗУ и помещает его туда. Проще говоря, она выделяет системные ресурсы для приложения.
Мой личный канал где я рассказываю о себе и своей университетской жизни!
Пишем свою ОС: Выпуск 1 / Habr
Данный цикл статей посвящён низкоуровневому программированию, то есть архитектуре компьютера, устройству операционных систем, программированию на языке ассемблера и смежным областям. Пока что написанием занимаются два хабраюзера — iley и pehat. Для многих старшеклассников, студентов, да и профессиональных программистов эти темы оказываются весьма сложными при обучении. Существует много литературы и курсов, посвящённых низкоуровневому программированию, но по ним сложно составить полную и всеохватывающую картину. Сложно, прочитав одну-две книги по ассемблеру и операционным системам, хотя бы в общих чертах представить, как же на самом деле работает эта сложная система из железа, кремния и множества программ — компьютер.Каждый решает проблему обучения по-своему. Кто-то читает много литературы, кто-то старается поскорее перейти к практике и разбираться по ходу дела, кто-то пытается объяснять друзьям всё, что сам изучает. А мы решили совместить эти подходы. Итак, в этом курсе статей мы будем шаг за шагом демонстрировать, как пишется простая операционная система. Статьи будут носить обзорный характер, то есть в них не будет исчерпывающих теоретических сведений, однако мы будем всегда стараться предоставить ссылки на хорошие теоретические материалы и ответить на все возникающие вопросы. Чёткого плана у нас нет, так что многие важные решения будут приниматься по ходу дела, с учётом ваших отзывов.
Возможно, мы умышленно будем заводить процесс разработки в тупик, чтобы позволить вам и себе полностью осознать все последствия неверно принятого решения, а также отточить на нем некоторые технические навыки. Так что не стоит воспринимать наши решения как единственно верные и слепо нам верить. Еще раз подчеркнём, что мы ожидаем от читателей активности в обсуждении статей, которая должна сильно влиять на общий процесс разработки и написания последующих статей. В идеале хотелось бы, чтобы со временем некоторые из читателей присоединились к разработке системы.
Мы будем предполагать, что читатель уже знаком с основами языков ассемблер и Си, а также элементарными понятиями архитектуры ЭВМ. То есть, мы не будем объяснять, что такое регистр или, скажем, оперативная память. Если вам не будет хватать знаний, вы всегда можете обратиться к дополнительной литературе. Краткий список литературы и ссылки на сайты с хорошими статьями есть в конце статьи. Также желательно уметь пользоваться Linux, так как все инструкции по компиляции будут приводиться именно для этой системы.
А теперь — ближе к делу. В оставшейся части статьи мы с вами напишем классическую программу «Hello World». Наш хеллоуворлд получится немного специфическим. Он будет запускаться не из какой-либо операционной системы, а напрямую, так сказать «на голом железе». Перед тем, как приступить непосредственно к написанию кода, давайте разберёмся, как же конкретно мы пытаемся это сделать. А для этого надо рассмотреть процесс загрузки компьютера.
Итак, берем свой любимый компьютер и нажимаем самую большую кнопочку на системном блоке. Видим веселую заставку, системный блок радостно пищит спикером и через какое-то время загружается операционная система. Как вы понимаете, операционная система хранится на жёстком диске, и вот тут возникает вопрос: а каким же волшебным образом операционная система загрузилась в ОЗУ и начала выполняться?
Знайте же: за это отвечает система, которая есть на любом компьютере, и имя ей — нет, не Windows, типун вам на язык — называется она BIOS. Расшифровывается ее название как Basic Input-Output System, то есть базовая система ввода-вывода. Находится BIOS на маленькой микросхемке на материнской плате и запускается сразу после нажатия большой кнопки ВКЛ. У BIOS три главных задачи:
- Обнаружить все подключенные устройства (процессор, клавиатуру, монитор, оперативную память, видеокарту, голову, руки, крылья, ноги и хвосты…) и проверить их на работоспособность. Отвечает за это программа POST (Power On Self Test – самотестирование при нажатии ВКЛ). Если жизненно важное железо не обнаружено, то никакой софт помочь не сможет, и на этом месте системный динамик пропищит что-нибудь зловещее и до ОС дело вообще не дойдет. Не будем о печальном, предположим, что у нас есть полностью рабочий компьютер, возрадуемся и перейдем к рассмотрению второй функции BIOS:
- Предоставление операционной системе базового набора функций для работы с железом. Например, через функции BIOS можно вывести текст на экране или считать данные с клавиатуры. Потому она и называется базовой системой ввода-вывода. Обычно операционная система получает доступ к этим функциям посредством прерываний.
- Запуск загрузчика операционной системы. При этом, как правило, считывается загрузочный сектор — первый сектор носителя информации (дискета, жесткий диск, компакт-диск, флэшка). Порядок опроса носителей можно задать в BIOS SETUP. В загрузочном секторе содержится программа, иногда называемая первичным загрузчиком. Грубо говоря, задача загрузчика — начать запуск операционной системы. Процесс загрузки операционной системы может быть весьма специфичен и сильно зависит от её особенностей. Поэтому первичный загрузчик пишется непосредственно разработчиками ОС и при установке записывается в загрузочный сектор. В момент запуска загрузчика процессор находится в реальном режиме.
Печальная новость: размер начального загрузчика должен быть всего 512 байт. Почему так мало? Для этого нам надо ознакомиться с устройством дискеты. Вот познавательная картинка:
На картинке изображена поверхность дискового накопителя. У дискеты 2 поверхности. На каждой поверхности есть кольцеобразные дорожки (треки). Каждый трек делится на маленькие дугообразные кусочки, называемые секторами. Так вот, исторически сложилось, что сектор дискеты имеет размер 512 байт. Самый первый сектор на диске, загрузочный сектор, читается BIOS’ом в нулевой сегмент памяти по смещению 0x7С00, и дальше по этому адресу передается управление. Начальный загрузчик обычно загружает в память не саму ОС, а другую программу-загрузчик, хранящуюся на диске, но по каким-то причинам (скорее всего, эта причина — размер) не влезающую в один сектор. А поскольку пока что роль нашей ОС выполняет банальный хеллоуворлд, наша главная цель — заставить компьютер поверить в существование нашей ОС, пусть даже и на одном секторе, и запустить её.
Как устроен загрузочный сектор? На PC единственное требование к загрузочному сектору — это содержание в двух его последних байтах значений 0x55 и 0xAA — сигнатуры загрузочного сектора. Итак, уже более-менее понятно, что нам нужно делать. Давайте же писать код! Приведённый код написан для ассемблера yasm.
section .text
use16
org 0x7C00 ; наша программа загружается по адресу 0x7C00
start:
mov ax, cs
mov ds, ax ; выбираем сегмент данных
mov si, message
cld ; направление для строковых команд
mov ah, 0x0E ; номер функции BIOS
mov bh, 0x00 ; страница видеопамяти
puts_loop:
lodsb ; загружаем очередной символ в al
test al, al ; нулевой символ означает конец строки
jz puts_loop_exit
int 0x10 ; вызываем функцию BIOS
jmp puts_loop
puts_loop_exit:
jmp $ ; вечный цикл
message:
db 'Hello World!', 0
finish:
times 0x1FE-finish+start db 0
db 0x55, 0xAA ; сигнатура загрузочного сектора
Эта короткая программа требует ряда важных пояснений. Строка org 0x7C00
нужна для того, чтобы ассемблер (имеется в виду программа, а не язык) правильно рассчитал адреса для меток и переменных (puts_loop, puts_loop_exit, message
). Вот мы ему и сообщаем, что программа будет загружена в память по адресу 0x7C00.
В строках
mov ax, cs
mov ds, ax
происходит установка сегмента данных (
ds
) равным сегменту кода (cs
), поскольку в нашей программе и данные, и код хранятся в одном сегменте.Далее в цикле посимвольно выводится сообщение «Hello World!». Для этого используется функция 0x0E
прерывания 0x10
. Она имеет следующие параметры:AH = 0x0E
(номер функции)BH =
номер видеостраницы (пока не заморачиваемся, указываем 0)AL =
ASCII-код символа
В строке «jmp $
» программа зависает. И правильно, незачем ей выполнять лишний код. Однако чтобы компьютер опять заработал, придется перезагрузиться.
В строке «times 0x1FE-finish+start db 0
» производится заполнение остатка кода программы (за исключением последних двух байт) нулями. Делается это для того, чтобы после компиляции в последних двух байтах программы оказалась сигнатура загрузочного сектора.
С кодом программы вроде разобрались, давайте теперь попробуем скомпилировать это счастье. Для компиляции нам понадобится, собственно говоря, ассемблер — выше упомянутый yasm. Он есть в большинстве репозиториев Linux. Программу можно откомпилировать следующим образом:
$ yasm -f bin -o hello.bin hello.asm
Полученный файл hello.bin нужно записать в зарузочный сектор дискеты. Делается это примерно так (разумеется, вместо fd нужно подставить имя своего дисковода).
$ dd if=hello.bin of=/dev/fd
Поскольку далеко не у всех остались дисководы и дискеты, можно воспользоваться виртуальной машиной, например, qemu или VirtualBox. Для этого придётся сделать образ дискеты с нашим загрузчиком и вставить его в «виртуальный дисковод».
Создаём образ диска и заполняем его нулями:
$ dd if=/dev/zero of=disk.img bs=1024 count=1440
Записываем в самое начало образа нашу программу:
$ dd if=hello.bin of=disk.img conv=notrunc
Запускаем полученный образ в qemu:
$ qemu -fda disk.img -boot a
После запуска вы должны увидеть окошко qemu с радостной строчкой «Hello World!». На этом первая статья заканчивается. Будем рады увидеть ваши отзывы и пожелания.
Литература
- По языку ассемблера:
- По языку Си:
- Керниган Б., Ритчи Д. «Язык программирования C»
- Шилдт Г. «Полный справочник по C»
- По устройству операционных систем:
- Таненбаум Э. «Современные операционные системы»
- Таненбаум Э. «Операционные системы: Разработка и реализация»
- Олифер В., Олифер Н. «Сетевые операционные системы»
- http://osdev.org
- По архитектуре ЭВМ:
- Таненбаум Э. «Архитектура компьютера»
- Гук М. «Аппаратные средства IBM PC. Энциклопедия»
- Петцольд Ч. «Код. Тайный язык информатики»
- Справочная информация
Что такое ОС, операционная система — это программный комплекс
Операционная система (ОС) является системным программным обеспечением, благодаря которому приводится в действие технические средства компьютера. Это программное обеспечение координирующее работу ЭВМ и производящее управление другими программными модулями посредством скоординированной последовательности операций.
Представление об операционной системе
Функциональные характеристики ОС:
- Осуществление работы компьютера, в том числе и персонального и его периферийных устройств по принципу ввода/вывода информации;
- Обеспечивает систему, организовывающую и хранящую файлы;
- Организовывает взаимодействие пользователя и компьютера.
Из чего состоит ОС
- Ядро;
- Командный модуль;
- Комплекс драйверов;
- Сервисные утилиты;
- Оболочка.
Операционная система (ОС) является системным программным обеспечением, оно приводит в действие всю техническую составляющее любого из компьютеров, исключение могут представлять лишь микрокомпьютеры. Микрокомпьютерам, являющимися составляющими каких-либо приборов, такой программный комплекс не нужен, по причине того, что они в большинстве случае отвечают ка какую ни, будь конкретную функцию.
Не побоюсь назвать операционную систему сверх программой, перейдём к расшифровке выше сформулированной её составляющей.
Ядром операционной системы называют её основную часть, которая как раз и обеспечивает запуск всех действий, организует работу других программ и работу компонентов компьютерной системы. Процессы, происходящие в ядре ОС можно назвать организующей программно-аппаратной деятельностью.
Командный модуль — это программа, функцией которой является выполнение команд от пользователя компьютеру.
Драйвера это целый внутренний комплекс специальных программ для обеспечения корректной работы именно аппаратных устройств с операционной системой, проще говоря – это инструкция для управления операционной системой компьютерных комплектующих, периферии.
Утилиты — дополнительные программные средства, которые взаимодействуют с ПО для выполнения различных задач.
Для пользователя оболочка операционной системы, является очень важным элементом — графический интерфейс — это то, что пользователь видит на дисплее любого компьютерного устройства. Именно благодаря графической оболочки ОС появились персональные компьютеры.
Кроме того, современная операционная система может обладать разной разрядностью 32 и 64.
Как проходит работа операционной системы
ОС действует с применением системных вызовов. Это такой интерфейс между ОС и программой пользователя, который позволяет делать все операции с объектами – файлами и процессами. Программа пользователя делает системный вызов сервису операционной системы, далее она обращается в библиотеку с прописанными процедурами действий, которые загружают регистры, и осуществляется прерывание кода в процессоре.
Прерывание генерируется от внешнего устройства. Такие «Аппаратные прерывания» информируют процессор о совершении асинхронной операции. Аппаратное прерывание производится параллельно процессам обработки программного кода процессором.
Так действует код ядра ОС и выполняется адресным пространством. Ядро ОС обладает доступом к пространству памяти программы пользователя и только после того, как произойдёт системный вызов, происходит передача адреса памяти этой программы для осуществления вызова в ядро.
Вовремя функционирования ОС, могут появиться исключительные операции, приводящие к неработоспособности, которые возникают при попытке выполнить недопустимую команду, обращение без права доступа к ресурсу, обращение к несуществующему кластеру в памяти. Исключительные операции могут появляться так же и при синхронном режиме работы главного компьютерного программного обеспечения.
Как производится загрузка ОС
Процесс от загрузки до запуска операционных систем можно разделить на три этапа:
Этап первый. ПЗУ системного блока проводит проверку да диске наличие программы-загрузчика ОС и предаёт работу ОЗУ.
Этап второй. Программа загрузчик с помощью ОЗУ обращается к базовому модулю ОС и как следствие работа передаётся ему.
Этап третий. Основной загрузчик в базовом модуле запускает загрузку имеющейся операционной системы и только после этого вступает в свои права на управление командному модулю.
Наиболее популярные операционные системы
О наиболее популярных видах операционных систем можно прочитать в одноимённой статье. Разная организация принципов осуществления операций в системах различает и саму операционную систему:
Что такое ОС – это сокращение термина операционная система, что собственно было и продемонстрированно в статье. Вот какую ОС предпочесть, это дело выбора каждого, хотя большинство производителей диктуют свои правила продавая компьютеры с уже предустановленной операционной системой.
Что такое операционная система — Плюсы и минусы всех ОС [2019]
Начинающие пользователи редко когда могут ответить на вопрос о том, что такое операционная система. Все знают о том, что существует такое понятие, и у всех из нас на компьютере стоит именно ОС, но объяснить, что это вообще значит могут лишь единицы. Поэтому сегодня мы ответим на этот вопрос. После прочтения данного материала вы будете знать все самые основные сведения о данном понятии.
Содержание:
Определение
Операционная система – это набор программ, которые управляют компьютером, смартфоном или другим устройством.
Очень просто. Не правда ли?
К этим программам относятся драйверы, то есть программное обеспечение, которое как бы переводит язык устройств компьютера (например, видеокарты, мыши, жесткого диска и так далее) на язык, понятный всему компьютеру и программам, установленным на нем. Она как бы объединяет все устройства и программы воедино. Это если говорить по-простонародному, а вообще все несколько сложнее. На сегодняшний день операционная система является главной частью любого устройства.
ОС объединяет программы и устройства
Мы видим ОС как рабочий стол со своим определенным интерфейсом. Такой подход дает возможность выполнять различные задачи на наших компьютерах. Так юзер может играть в игры, писать вот такие статьи, сидеть в интернете и тому подобное. Если бы у ПК или ноутбуков, а также мобильных устройств была какая-то одна задача, они бы не нуждались в операционной системе. У них была бы одна программа, как это есть сейчас в стиральных машинах, электрических плитах и других устройствах, которые предназначены для выполнения одной единственной задачи.
к содержанию ↑Работа операционной системы
Важными составляющими современной ОС является следующее:
- Использование файловой системы. Система позволяет пользователю открывать различные файлы и создавать их, а также пользуется ними без ведома человека.
- Пакетный режим. Если говорить просто, это означает, что все программы исполняются по очереди. При этом ОС загружает задачи таким образом, чтобы процессор не был без работы.
- Многозадачность. Это, фактически, развитие идеи пакетного режима. Для того, чтобы процессор мог выполнять несколько задач одновременно, были разработаны новые подходы, в частности, разделение времени.
- Разделение полномочий. Из-за того, что одна программа может вступать в конфликт с другой, было решено дать всем им полномочия. Поэтому некоторые образцы ПО не могут получать доступ, например, к видеокарте или дисководу.
Именно так и работает любая операционная система. Рассмотрим ее функции более подробно.
к содержанию ↑Функции работы ОС
Вот основные задачи, которые выполняет операционная система:
- Выполнение самих программ. Для этого они загружаются в оперативную память. Это своеобразный промежуточный этап между бездействием и выполнением. Все, что записано в оперативную память, довольно быстро стирается – сразу после выполнения.
- Управление оперативной памятью. Она подразумевает деление программ на задачи и загрузка их в ОП и распределение задач по процессам.
- Доступ ко всем устройствам. Речь идет обо всем том, через что компьютер принимает информацию (минимальный набор – мышь, клавиатура) и выдает ее (монитор, принтер и так далее).
- Управление носителями информации. Это всевозможные диски, флешки и так далее. Операционная система может считывать с них данные и записывать ее.
- Интерфейс пользователя. Все описанные выше функции выполняются так. Чтобы это было не просто видно пользователю, а и понятно для него. Юзер должен иметь возможность изменять что-то в программах и их способе действия.
Также ОС сохраняет данные о неполадках, ошибках и так далее. В некоторых случаях она сама может исправить эти проблемы внутренними средствами. Но это происходит крайне редко.
Итак, теоретическую часть мы уже разобрали. Перейдем к практике, то есть к тому, какие бывают операционные системы и чем они отличаются.
Виды операционных систем
В основном, рассматриваемое нами понятие относится к компьютерам, но есть ОС для смартфонов и планшетов. Поэтому сначала мы разберем наиболее популярные системы на ПК и ноутбуки, а затем вкратце затронем и «операционки» на мобильные гаджеты.
к содержанию ↑Microsoft Windows
Самая первая ОС с таким пользовательским интерфейсом, который подразумевает рабочий стол, папки, курсор и все то, к чему мы привыкли. До Виндовс был MS DOS, который представлял собой оболочку для ввода команд. То есть вы видели только черный экран, куда могли вводить команды.
Внешний вид DOS
А потом появилась ОС Windows. Чтобы вы понимали, вот вам внешний вид первой версии данной операционной системы.
Windows 1.0
Согласитесь, в 1985 году это был настоящий бум, взрыв, эмоции! Сейчас, конечно, все намного более яркое, красивое и запоминающееся. На сегодняшний день последней версией является Windows 10. Вот как она выглядит.
Windows 10
Полезная информация:
Если вы не определились какую ОС выбрать обратите внимание на программу EasyBCD. Это удобный и простой инструмент, обеспечивающий управление загрузкой двух и более операционных систем. Утилита предназначена для пользователей разных платформ, начиная с ОС Windows и заканчивая Linux.
Скачать EasyBCD можно на нашем сайте по данной ссылке
Основные плюсы и минусы ОС Windows такие:
Позитив:
- Фирменное меню «Пуск». В нем собраны основные программы, которые пользователь использует чаще всего. Сейчас его можно обновлять, менять внешний вид (плиточный и классический).
- Распространенность. Подавляющее большинство образцов программного обеспечения пишется именно под Windows. Здесь легче всего программировать, заниматься другими разработками и проектами, играть в игры и выполнять иные задачи.
- Есть версии для разных устройств – смартфоны, планшеты, серверы и многое другое.
Негатив:
- Вирусы. Так как это самая популярная ОС, на нее пишется больше всего вредоносного программного обеспечения. Подхватить вирус и в лучшем случае отдать злоумышленникам личные данные очень просто.
- За эту ОС нужно платить, причем довольно немалые суммы денег.
- Приходится делать дефрагментацию для стабильной работы и регулярно чистить систему от мусора.
Согласно некоторым данным, 88% юзеров по всему миру использует Windows.
Apple Mac OS X
Эта операционная система работает только на компьютерах Apple. На обычных ПК и ноутбуках она не запустится. Стоят эти компьютеры немало и это еще один большой недостаток данной ОС.
Apple Mac OS X
Впервые мир увидел Mac OS в 2000 году.
Основные преимущества и недостатки данной ОС такие:
Позитив:
- Есть множество дополнительных функций, которые облегчают работу пользователя.
- Безопасность. Здесь не встает вопрос о том, как защититься от вирусов.
- Стабильность. Та же Windows регулярно перезагружается, появляется так называемый «синий экран» и так далее.
Негатив:
- Стоимость. Средний iMac стоит 10 тыс. долларов США.
- Меньше программ, чем в Виндовс.
- Более слабые видеокарты в компьютерах.
Впрочем, последний минус не мешает профессиональным «звукачам» и людям, которые работают с графикой, использовать именно эти устройства в своей работе.
к содержанию ↑Linux
В 1991 году вышла операционная система Linux, которая сразу же стала конкурировать с Windows. Но позиция на вершине технического Олимпа уже была занята, так что и по сей день пользователи и разработчики отдают свое предпочтение отнюдь не этой ОС.
Linux
Преимущества и недостатки Linux такие:
Позитив:
- Открытость кода. Вы сами можете менять что-то в этой ОС! Это же означает, что система полностью бесплатная.
- Безопасность. Здесь тоже нет вопроса о вирусах.
- Стабильность и меньшая потребность в ресурсах компьютера.
Негатив:
- Сложность. Обычный пользователь вряд ли сможет быстро освоить эту ОС.
- Нет игр и большинства программ. Разве что что-то написано специально под Linux или используется эмулятор.
- Права доступа – вы не будете иметь доступ ко всем ресурсам.
Операционные системы для мобильных устройств
На сегодняшний день наибольшей распространенностью пользуется Android, на втором месте iOS. Есть еще Windows Mobile, но эта система является пережитком прошлого и встречается только на устройствах людей, которым не повезло купить смартфон с предустановленной WM.
Название | Android | iOS | Windows Mobile |
---|---|---|---|
Главная особенность | Можно установить куда угодно, есть даже версии на компьютеры | Подходит только для смартфонов и планшетов Apple | Предустановленная ОС на некоторых не очень качественных аппаратах |
Год выпуска (первая версия) | 2008 (обновляется по сей день) | 2007 (обновляется по сей день) | 2000 (последняя версия вышла в 2010) |
Распространенность | На большинстве устройств | Только в продукции Apple | Очень мало устройств |
Плюсы | Много игр и программ; открытый исходный код; постоянные обновления. | Понятный интерфейс; экономность заряда; защищенность. | Всегда хорошая камера; стабильность и скорость работы; мелкие функции вроде проверки орфографии и полной загрузки фото и видео. |
Минусы | Нужно часто заряжать аппарат; множество настроек; совместимость со старыми устройствами. | Файловая система закрыта и перебросить файлы так же просто, как в Андроид, невозможно; нет настроек пользователя; высочайшая цена. | Мало приложений, те что есть, нестабильны; навигация работает плохо; приложения разбросаны как попало. |
Теперь вы знаете, что такое операционная система и какие бывают ее виды.