Операционная программа что это

Содержание

Введение в операционные системы

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

Лабораторные работы по данному предмету можно найти вот тут:

  • оригинал: pages.cs.wisc.edu/~remzi/OSTEP/Homework/homework.html
  • оригинал: github.com/remzi-arpacidusseau/ostep-code
  • моя личная адаптация: github.com/bykvaadm/OS/tree/master/ostep
  • Часть 3: Введение в планировщик
  • Часть 1: Intro
  • Часть 2: Абстрация: процесс
  • Часть 3: Введение в API процессов
  • Часть 4: Введение в планировщик
  • Часть 5: Планировщик MLFQ

Работа программы

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

Операционные Системы | Windows, Linux, MacOS | История операционных систем | Сравнение ОС

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

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

Фон-Неймановская модель вычисления

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

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

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

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

Операционные системы, урок 1: Что такое компьютер и операционная система

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

Для того чтобы позволять пользователям давать команды операционной системе и таким образом использовать возможности виртуальной машины (такие как: запуск программы, выделение памяти, доступ к файлу и так далее), операционная система предоставляет некоторый интерфейс, называемый API (application programming interface) и к которому можно делать вызовы (call). Типичная операционная система дает возможность сделать сотни системных вызовов.

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

Виртуализация CPU

Рассмотрим следующую программу:
(https://www.youtube.com/watch?v=zDwT5fUcki4)

image

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

Запустим эту программу, и передадим ей аргументом символ “А”. Результат получается не особо интересный — система просто выполняет программу, которая периодически выводит на экран символ “А”.

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

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

Подобная картина порождает много вопросов, например, если несколько программ желают запуститься одновременно, то какая именно будет запущена? За этот вопрос отвечают “политики” ОС. Политики используются во многих местах ОС и отвечают на подобные вопросы, а так же являются базовыми механизмами, которые ОС воплощает. Отсюда и роль ОС как ресурсного менеджера.

Виртуализация памяти

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

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

Вызов malloc()

Рассмотрим следующую программу, которая выделяет область памяти, используя вызов malloc() (https://youtu.be/jnlKRnoT1m0):

Читайте также:
Что за программа показывает на кого ты похож

image

Программа делает несколько вещей. Во-первых, выделяет некоторый объем памяти (строка 7), затем выводит адрес выделенной ячейки (строка 9), записывает ноль в первый слот выделенной памяти. Далее программа входит в цикл, в котором инкрементирует значение, записанное в памяти по адресу в переменной “p”. Также она выводит идентификатор процесса самого себя.

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

image

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

Согласованность

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

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

Рассмотрим следующую программу:

image

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

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

image

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

Поскольку все эти инструкции не осуществляются атомарно (все одновременно), такие странные вещи могут происходить. Эта проблема называется в программировании race condition — состояние гонки. Когда неизвестные силы в неизвестный момент могут повлиять на выполнение каких-либо ваших операций.

  • перевод с английского
  • операционные системы
  • linux
  • Системное администрирование
  • Системное программирование
  • *nix
  • C
  • Инженерные системы

Источник: habr.com

Операционная система — зачем она нужна на компьютере

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

Kwork.ru - услуги фрилансеров от 500 руб.

Что такое Операционная Система?

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

Загрузка операционной системы.

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

  • Выполняет тесты, чтобы убедиться, что все работает правильно.
  • Проверяет наличие нового оборудования.
  • Запускает операционную систему.

экран загрузки windows

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

рабочий стол windows7

Типы операционных систем

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

Рассмотрим три наиболее распространённые ОС для персональных компьютеров Microsoft Windows, Apple macOS, и Linux.

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

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

У каждого GUI свои стили, даже версии ОС отличаются стилем и оформлением. Но, это никак не затрудняет работу на компьютере, наоборот, только делает её проще.

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

Microsoft Windows

Корпорация Microsoft создала операционную систему Windows в середине 1980-х годов. На протяжении многих лет, было много разных версий этой ОС. Современные ПК работают на 10 версии ОС, но можно встретить компьютеры, которые работают на более ранних версиях, даже на Windows XP. Windows поставляется предустановленные копии на большинство новых компьютеров, что помогло сделать её наиболее популярной операционной системой в мире.

интерфейс windows

Если вы покупаете новый компьютер или обновление до новой версии Windows, вы можете выбрать одну из нескольких версий Windows, таких как Домашняя (Home), Профессиональный (Professional), и Максимальная (Ultimate), которые в свою очередь также могут подразделяться на базовые и расширенные.

Apple macOS

macOS — это линейка операционных систем, созданных компанией Apple Inc. Она поставляется с предустановленной на все новые компьютеры Macintosh. Все последние версии известны как macOS и номер, версия системы. Каждая версия имеет кодовые имена Mountain Lion Горный Лев (2012 г.), Lion Лев (2011 г.), и Snow Leopard Снежный Барс (2009 г.). Apple также предлагает ОС под названием OS X Server, которая предназначена для работы на серверах.

Читайте также:
Com Android providers downloads ui что это за программа

рабочий стол macOS

По статистике доля macOS на рынке операционных систем составляет — 7.5% а начиная с января 2013 года – и того меньше. А вот процент пользователей операционной системы Windows (свыше 90%). Одна из причин этого заключается в том, что компьютеры Apple стоят дороже и не имеют такой совместимости, как компьютеры с ОС Windows, с другими программными продуктами. В нашей стране это наиболее актуальная причина. Однако, многие люди, попробовав в работе компьютеры Apple, предпочитают именно эти их и эту операционную систему.

Linux

Linux (произносится Линукс) — семейство open source операционных систем, что означает открытый программный код, они могут быть изменены и доработаны, а распространяются бесплатно с готовым набором программ для пользования. Это очень отличается от закрытого программного обеспечения, такого как Windows и macOS, которое могут изменить только в компании разработчика. Очевидно, что преимущества Linux, в том, что она бесплатна и есть много разных дистрибутивов* (или версии). Каждый дистрибутив имеет разные стили, и самым популярным из них относятся к Ubuntu, Mint, и Fedora.

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

рабочий стол linux

Linux носит своё название в честь Линус Торвальдс (Linus Torvalds), который создал ядро Linux в 1991 году. Ядро — это компьютерный код, который образует центральную часть операционной системы.

И снова прибегнем к статистике, доля Linux менее 1% на рынке операционных систем. Однако не стоит забывать, что операционные системы на базе Linux для серверов являются лидерами среди конкурентов.

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

Операционные системы для мобильных устройств

Мобильные устройства такие, как смартфоны, планшетные компьютеры и mp3-плееры отличаются от настольных и портативных компьютеров не только технической частью, но и программной. На них устанавливают и операционными системами, которые предназначены специально для мобильных устройств. Примеры мобильных операционных систем: Apple iOS, Google Android и Windows Phone.

Мобильная ОС

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

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

Друзья, поддержите нас! Поделитесь статьёй в социальных сетях:

Источник: rede-pc.ru

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

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

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

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

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

Каковы причины смены ОС в компании?

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

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

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

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

Каталог Операционных систем

Операционная система реального времени (ОСРВ)

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

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

Архитектура операционной системы

Основная статья: Архитектура операционной системы

Многозадачность и распределение полномочий требуют определённой иерархии привилегий компонентов самой ОС. В составе ОС различают три группы компонентов:

  • ядро, содержащее планировщик; драйверы устройств, непосредственно управляющие оборудованием; сетевую подсистему, файловую систему;
  • системные библиотеки и
  • оболочку с утилитами.

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

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

Читайте также:
Сервер pop что это за программа

Функции

Основная статья: Функции операционной системы

Основные функции (простейшие ОС):

  • Загрузка приложений в оперативную память и их выполнение;
  • Стандартизованный доступ к периферийным устройствам (устройства ввода-вывода);
  • Управление оперативной памятью (распределение между процессами, виртуальная память);
  • Управление доступом к данным на энергонезависимых носителях (таких как Жёсткий диск, Компакт-диск и т. д.), как правило с помощью файловой системы;
  • Пользовательский интерфейс;
  • Сетевые операции, поддержка стека протоколов

Эволюция операционных систем и основные идеи

Основная статья: Эволюция операционных систем

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

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

40-е годы. Первые цифровые вычислительные машины без ОС. Организация вычислительного процесса решается программистом с пульта управления.

50-е годы. Появление прообраза ОС — мониторных систем, реализующих систему пакетной обработки заданий.

1965-1980 г.г. Переход к интегральным схемам. IBM/360. Реализованы практически все основные концепции, присущие современным ОС: разделение времени и многозадачность, разделение полномочий, реальный масштаб времени, файловые структуры и файловые системы. Реализация мультипрограммирования потребовала внесения очень важных изменений в аппаратуру компьютера: привилегированный и пользовательский режимы, средства защиты областей памяти, развитой системы прерываний.

Конец 70-х. Создан рабочий вариант стека протоколов TCP/IP. В 1983 году он был стандартизирован. Независимость от производителей, гибкость и эффективность, доказанные успешной работой Интернет, сделала этот стек протоколов основным стеком для большинства ОС.

80-е годы. Появление персональных компьютеров. Бурный рост локальных сетей. Поддержка сетевых функций стала необходимым условием. Приняты основные стандарты на коммуникационные технологии локальных сетей: Ethernet, Token Ring, FDDI.

Это позволило обеспечить совместимость сетевых ОС на нижних уровнях.

Начало 90-х. Практически все ОС стали сетевыми. Появились специализированные сетевые ОС (например IOS, работающая в маршрутизаторах)

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

ОС на мировом рынке

Основная статья: Операционные системы (мировой рынок)

С 1990-х наиболее распространёнными операционными системами для персональных компьютеров и серверов являются:

  • ОС семейства MicrosoftWindows и Windows NT;
  • ОС семейства Mac OS и Mac OS X;
  • системы класса UNIX, и Unix‐подобные (особенно GNU/Linux).

ОС для корпоративного сектора

Основная статья: ОС для корпоративного сектора

Эффективная работа IT-инфраструктуры любой современной компании невозможна без грамотно выбранной серверной операционной системы.

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

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

Операционные системы семейства Windows

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

  • Windows 2000
  • Windows Server 2003
  • Windows Server 2008

Операционные системы семейства UNIX

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

Большинство российских серверов работают под управлением тех или иных клонов от Unix. По данным выборочного исследования, проведенного порталом RuMetrika (данные за 2006 г. на российских серверах безусловно лидирует Free BSD (53%), на втором месте Linux (32%) , количество серверов, на которых установлена ОС Windows составило 9%, реже встречается Solaris — всего 5%.

Распределение серверных ОС в России и в мире 2006

«Unix», стандартизация ОС и POSIX

Основная статья: «Unix», стандартизация ОС и POSIX

Задуманная и реализованная в 1969 году Кеном Томпсоном при участии нескольких коллег (включая Денниса Ричи и Брайана Кернигана), ОС «Unix» («Unix»; первоначально «UNICS», что обыгрывало название «MULTICS») вобрала в себя многие черты более ранних ОС, но обладала целым рядом свойств, отличающих её от большинства предшественниц:

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

Благодаря конкурентности реализаций архитектура ОС «Unix» стала вначале фактическим отраслевым стандартом, а затем обрела статус и стандарта юридического — ISO/IEC 9945.

ОС, следующие стандарту или опирающиеся на него, называют «POSIX-совместимыми»

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

Самым заметным эффектом существования этого стандарта стало эффективное разворачивание Интернета в 90-х годах.

«Post Unix» архитектуры ОС

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

Позднее на основе «Plan9» в Испании были разработаны ОС «Off++» и «Plan B», носящие экспериментальный характер.

К попыткам создать постюниксовскую архитектуру можно также отнести разработку системы программирования и операционной среды «Оберон» в Швейцарском федеральном технологическом институте (ETH Zurich) под руководством проф. Никлауса Вирта.

Источник: www.tadviser.ru

Операционная программа что это

МЕРОПРИЯТИЯ

Сбер Java Meetup

15 декабря Онлайн Бесплатно

F*ckup Meetup 2022

14 декабря Онлайн Бесплатно

Комментарии

Популярные По порядку

Не удалось загрузить комментарии.

ВАКАНСИИ

Golang-разработчик

от 250000 RUB

QA Junior

Санкт-Петербург, от 15000 RUB до 45000 RUB

С++ разработчик

Москва, от 300000 RUB

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ

Монолитная vs Микросервисная архитектура

Часто я встречаю статьи о том, что же лучше. В этой я собираюсь выразить свое мнение.

4 лучших бесплатных книг по C#

Предлагаем вашему вниманию подборку самых полезных бесплатных книг по изучению C# — одного из самых популярных и востребованных языков программирования во всём мире.

3 лучших книги по объектно-ориентированному программированию

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

Источник: proglib.io

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru