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

Содержание

Назначение и основные функции операционных систем. Состав операционной системы

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

Операционная система (ОС) – это комплекс взаимосвязанных системных программ для организации взаимодействия пользователя с компьютером и выполнения всех других программ. ОС относятся к составу системного программного обеспечения и являются основной его частью. Операционные системы: MS DOS 7.0, Windows Vista Business, Windows 2008 Server, OS/2, UNIX, Linux.

Основные функции ОС:

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

Дополнительные функции:

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

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

В общем случае в состав ОС входят следующие модули:

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

Драйвер устройства (device driver) – специальная программа, обеспечивающая управление работой устройств и согласование информационного обмена с другими устройствами.

Командный процессор (command processor) – специальная программа, которая запрашивает у пользователя команды и выполняет их (интерпретатор программ).

Интерпретатор  команд отвечает за загрузку приложений и управление информационным потоком между приложениями.

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

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

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

Примечание

Состав модулей ОС, а также их количество зависит от семейства и вида ОС. Так, например, в ОС MS DOS отсутствует модуль, обеспечивающий графический пользовательский интерфейс.

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

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

Модули ядра выполняют следующие базовые функции ОС: Управление процессами, Управление системой прерываний, Управление памятью, управление устройствами ввода-вывода, Функции, решающие внутрисистемные задачи организации вычислительного процесса: переключение контекстов, загрузка/вы­грузка страниц, обработка прерываний. Эти функции недоступны для приложе­ний. Функции, служащие для поддержки приложений, создавая для них так называемую прикладную программную среду.

Приложения могут обращаться к ядру с запросами – системными вызовами – для выполнения тех или иных действий: для открытия и чтения файла, вывода графической информации на дисплей, получения системного времени и т.д. Функции ядра, которые могут вызываться приложениями, образуют интерфейс прикладного программирования – API (Application programming interface).

Пример. 
Базовый код API Win32 содержится в трех библиотеках динамической загрузки (Dynamic Link Library, DLL): USER32, GDI32 и KERNEL32.

Kernel — модуль Windows, который поддерживает низкоуровневые функции по работе с файлами и управлению памятью и процессами. Этот модуль обеспечивает сервис для 16- и 32-разрядных приложений.

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

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

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

Примеры вспомогательных модулей:

  • Программа архивирования данных.
  • Программа дефрагментации диска.
  • Текстовый редактор.

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

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

системные обрабатывающие программы – текстовые или графические редакторы, компиляторы, компоновщики, отладчики.

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

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

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

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

Примечание

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

Объектами ядра ОС являются:

  • Процессы (рассмотрено в теме 2.3).
  • Файлы.
  • События.
  • Потоки (рассмотрено в теме 2.3).
  • Семафоры – объекты, позволяющие войти в заданный участок кода не более чем n потокам.
  • Мьютексы – одноместные семафоры, служащие в программировании для синхронизации одновременно выполняющихся потоков.
  • Файлы, проецируемые в память.

22 — Назначение и функции операционной системы

·                    Лекция 22. Назначение и функции операционной системы.

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

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

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

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

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

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

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

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

Рекомендуемые файлы

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

Основные характеристики операционной системы UNIX Операционная система UNIX разработана в 70-х годах Кеном Томпсоном и Деннисом Ритчи в Bell Laboratory и первоначально предназначалась для проведения исследовательских работ. Однако концептуальная целостность системы и целый ряд новых нетрадиционных и прогрессивных решений, заложенных в нее при создании, показали преимущества UNIX по сравнению с другими операционными системами этого класса. Система UNIX быстро распространилась и сейчас активно используется на многих вычислительных установках. В нашей стране аналогом операционной системы UNIX является ИНМОС. Сначала эта система была ориентирована на СМ ЭВМ, а затем перенесена и в сферу ЕС ЭВМ. К несомненным достоинствам UNIX следует отнести:

— концептуальное единство

— простоту

— инструментальность

— мобильность

— эффективность

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

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

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

— утилиты различного назначения

— средства работы с текстами

— средства поддержки разработок программного обеспечения

— средства генерации программ анализа

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

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

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

Недостатки системы:

— не поддерживается режим реального времени

— слабая устойчивость к аппаратным сбоям

— снижение эффективности при решении однотипных задач

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

Основные характеристики операционной системы MS-DOS Операционная система MS-DOS (дисковая операционная система фирмы Microsoft), была разработана в 1981 г. Билом Гейтсом — президентом фирмы Microsoft, одновременно с машинами типа IBM PC и стала для них доминирующей. К настоящему времени разработано несколько версий системы. MS-DOS во многом напоминает по своим возможностям ОС UNIX. Предоставляемые MS DOS возможности обеспечивают, с одной стороны, удобный доступ к имеющимся прикладным пакетам и программам для непрофессиональных пользователей, с другой стороны, создают хорошую среду для разработки программного обеспечения. MS DOS является стандартом для 16-разрядных микро ЭВМ. В отличие от СР/М MS-DOS обеспечивает организацию многоуровневых каталогов, имеет более развитый командный язык.

Структура MS-DOS.

Операционная система MS-DOS состоит из трех основных подсистем:

— модуль взаимодействия с базовой системой ввода-вывода (файл IO.SYS)

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

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

При получении управления программой начальной загрузки просматривается оглавление диска — проверяется, что первые два файла — это IO.SYS и MSDOS.SYS. Если они не обнаружены, на экран выдается сообщение об ошибке, если обнаружены, оба файла считываются в оперативную память и управление передается в модуль взаимодействия с базовой системой ввода-вывода (IO.SYS).

Подпрограмма инициализации (начала работы) в IO.SYS определяет состояние оборудования, приводит в действие дисковую систему и подключенные устройства, загружает драйверы устройств и устанавливает значения специальных управляющих блоков, связанных с обработкой прерываний. Затем она выполняет настройку адресов в ядре MS DOS и передает ему управление. Ядро MS DOS инициализирует свои внутренние рабочие таблицы, создает управляющие таблицы и возвращает управление модулю взаимодействия с BIOS. Последнее действие IO.SYS — загрузка командного процессора по адресу, установленному подпрограммой инициализации ядра MS DOS. Затем управление передается COMMAND. COM. Модуль взаимодействия с базовой системой ввода/вывода реализует набор операций работы с дисками и устройствами ввода/вывода. Только эта часть MS DOS непосредственно взаимодействует с внешними устройствами, только она зависит от особенностей и характеристик внешних устройств, используемых в конкретных компьютерах. В ней определена логика взаимодействия с устройствами ввода-вывода адресов подключения, набор команд контроллера дисков и т. д. Все другие компоненты MS DOS общаются с внешним миром только через модуль взаимодействия с BIOS.

Пользователь из своих прикладных программ может обращаться к некоторым MS DOS командам. Имеются программы для ввода с клавиатуры, для вывода на терминал и на печать, для формирования блоков управления файлами, управления памятью, обработки даты и времени, операций над дисками, каталогами и файлами. Ядро MS DOS реализует все функции, связанные с файловой организацией информации на дисках, управлением дисководами, распределением пространства и работой с их справочниками. MS DOS размещает (форматирует) все диски и дискеты с размером сектора 512 байт. Область для MS DOS (вся дискета или раздел на твердом диске) распределена следующим образом:

— блок начальной загрузки

— таблица размещения файлов

— копия таблицы размещения файлов

— корневой каталог

— область данных

Файлам выделяется пространство в области данных по мере необходимости, когда происходит фактическая запись; предварительного распределения не производится. Пространство выделяется порциями, называемыми кластерами. На односторонних дискетах кластер равен одному блоку; на двухсторонних каждый кластер состоит из двух блоков. Размер кластера для твердого диска определяется при разметке командой FORMAT и зависит от размера раздела MS DOS.

Таблица размещения файлов (File Allocation Table — FAT) связывает кластеры одного файла в цепочку.

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

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

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

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

Windows 3. 1 и Windows 3. 11 По сути дела Windows 3.1 и 3.11 является всего-навсего надстройкой над DOS, однако между ними существуют серьёзные различия — именно они позволяют называть Windows операционной системой. Графический интерфейс, как оказывается здесь не главное.

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

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

Большим преимуществом Windows 3.11 стала возможность работы в одно-ранговой сети или с выделенным сервером. Теоретически, можно забыть про приобретение специального сетевого программного обеспечения и обойтись только средствами Windows 3.11. Однако на практике в локальной сети всё-таки лучше ставить специальное сетевое ПО, а уже поверх него — Windows 3.11. Тем более что в Windows предусмотрена поддержка не только своей сети, но и других сетевых протоколов.

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

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

По своим возможностям Windows значительно превосходит DOS, но и требования к аппаратным ресурсам компьютера предъявляет немалые. Так, для работы в защищённом режиме компьютер должен быть оснащён как минимум 386-м процессором, а уж памяти Windows потребляет исходя из принципа “чем больше, тем лучше”. И если DOS на “двушке” с мегабайтом памяти работала быстро и уверенно, то Windows, даже версии 3.0, на такой машине работает крайне медленно.

Сегодня совмещение DOS + Windows на персональных компьютерах встречается наиболее часто; для Windows разработано несметное количество приложений, игр и

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

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

Правда преемственность предыдущих версий Windows только этим не ограничивается: Windows 95 имеет много общего со своими предшественницами. Она устанавливается, по сути дела, поверх MS-DOS, и, честно говоря безразлично, что она пишет в ответ на команду “ver” в режиме DOS:MS-DOS version x.xx или Windows 95.

Несмотря на то что Windows 95 разрекламирована как полноценная 32-разрядная операционная система, в действительности же она имеет 16-разрядное ядро. Как это ни прискорбно, для разработки 32-разрядных приложений необходимо запускать специальные утилиты — аналогично тому, как в Windows 3.11 ставился модуль Win32S. (Кстати, это и есть тот же Win32S, только видоизменённый для Windows 95)

Из всех усовершенствований, реализованных в Windows 95, для повышения производительности работы пользователя, вероятно, важнее всего значительные усовершенствования в интерфейсе. Изменения в нём, по сравнению с Windows 3.x в самом деле поразительны, но не меньше бросается в глаза то, как много в нем заимствований из Mac OS и OS/2.

Например:

— при нажатии правой кнопки мыши появляется контекстно-зависимое меню (OS/2).

— корзина “ Recicle Bin “, аналог Мусорного Ведра (“ Trasch “ Mac OS) и т. д.

— программы, документы и ярлыки (указатели на другие файлы могут размещаться на “Рабочем столе “ (OS/2)).

Поддержка сетевых протоколов в Windows 95 немного расширилась по сравнению с предыдущими версиями Windows: например, появилась поддержка протокола TCP/IP; по отношению к локальным сетям политика не претерпела изменений. Сохранился свой протокол обмена между компьютерами и возможность поддержки других сетевых протоколов.

Новая ОС не только выполняет подавляющее большинство существующих программ для Windows 3.х и DOS, но и совместима с драйверами реального режима для этих систем. Использование таких драйверов может ослабить устойчивость работы 32-разрядной системы, зато устраняет сложности, возникающие из-за отсутствия нужного драйвера для того или иного периферийного устройства. Эту проблему никак не удаётся решить ни в Windows NT ни в OS/2 Warp.

Требования Windows 95 к аппаратному обеспечению несколько выросли по сравнению с Windows 3.11. В первую очередь они коснулись объёма оперативной памяти, необходимой для нормальной работы.

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

OS/2 Операционная система OS/2, разработанная фирмой IBM, даже в ранних версиях зарекомендовала себя как весьма мощная ОС. Думаю, что не ошибусь, сказав, что OS/2 стала первой реально многозадачной операционной системой на персоналках, к тому же в своей основе она является объектно-ориентированной. В общем-то, складывается такое впечатление, что если Windows разрабатывалась начиная с интерфейса, то OS/2 создавалась, как и положено операционным системам, начиная с ядра. OS/2 является действительно 32-разрядной операционной системой, и ей не требуется никаких дополнений для работы с 32- разрядными приложениями.

Апологеты Windows довольно долго обвиняли OS/2 в том, что она не “понимает” программ, написанных для Windows, — что и говорить, их число огромно, а некоторые из них уникальны. Уже в версии 2.0 программисты IBM исправили свою ошибку и включили в OS/2 сессию Windows. И сделали они это, надо отдать должное, весьма неплохо: Windows-приложения стали работать на порядок быстрее (кстати, DOS приложения под OS/2 тоже работают быстрее, нежели под DOS).

Первая версия OS/2 вообще не имела графического интерфейса (presentation manager) — он появился относительно недавно. Правда, у ранних версий этой ОС и запросы к аппаратному обеспечению сравнительно невысоки. Так что если вам нужна реальная многозадачность, но денег на мощный компьютер не хватает, то ранние версии OS/2 — это неплохой вариант решения данной проблемы. Более поздние версии OS/2 получили графический интерфейс. И хотя интерфейс OS/2 иногда обвиняют в том, что с ним не возможно работать, многие не склонны разделять это мнение; некоторые пользователи, напротив, устанавливают в Windows программу, реализующую интерфейс от OS/2.

Основное достоинство OS/2 — это, несомненно, возможность работать в режиме разделения времени. Она позволяет выполнять вам несколько задач одновременно: например, форматировать дискету и одновременно компилировать программу. При этом выполнение задач почти не замедляется.

Работа с сетями в OS/2 ориентирована в первую очередь на поддержку протокола TCP/IP, однако система неплохо работает и с другими протоколами, например IPX.

Нельзя не упомянуть и о том, что недавно была выпущена локализованная версия OS/2 Warp 3.0. Теперь стало проще разбираться в многочисленных настройках самой OS/2, а так же сеансов DOS и Windows.

Само собой разумеется, что широкие возможности OS/2 обходятся пользователю недёшево. И хотя IBM объявила, что OS/2 Warp работает на 386-м компьютере с четырьмя мегабайтами оперативной памяти, специалисты замечают: если вы хотите, чтобы OS/2 работала без проблем, помножьте все аппаратные требования, которые указаны в руководстве, на два.

В целом же, кто имел раньше дело с Win 95, NT и Mac OS сочли OS/2 наименее удобной в работе среди рассматриваемых ОС. Одним из очень больших недостатков является например то, что Warp позволяет удалять файлы простым перемещением их на пиктограмму Shredder (“Дробилка”), однако по умолчанию она не может восстановить файл, который был стёрт ошибочно. Она не выдаёт предупреждений при попытке удаления жизненно важных системных файлов.

OS/2 Warp 3.0 остаётся привлекательной для тех, кто любит настраивать интерфейс по своему вкусу и кому не требуется очень много готовых прикладных пакетов. Высококачественные средства программирования, имеющиеся в данной ОС, обеспечивают этой системе успех у фирм, разрабатывающих собственное программное обеспечение для внутреннего пользования.

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

Windows 98 Windows 98 позиционируется компанией Microsoft как обновление для Windows 95. Сама Microsoft настаивает на том, что, не будучи «революционно новой», очередная ОС обеспечивает прирост производительности системы и большую стабильность в работе.

Кроме того, в Windows 98 реализован ряд новых возможностей, позволяющих, к примеру, работать с USB-устройствами, DVD-дисководами и т.д.

В Windows 98 значительно богаче набор средств для диагностики и разрешения конфликтов, чем в Windows 95, включая Version Conflict Manager и Maintenance Wizard. Microsoft предполагает, что благодаря этим средствам уменьшение числа обращений пользователей к службам технической поддержки.

Добавлена версия Internet Explorer 4.0. Windows 98 улучшает качество воспроизведения графики, звука и мультимедийных приложений, созданных по новейшим технологиям.

Через некоторое время появилась на свет вторая редакция популярной операционной системы Windows 98 (полное название версии 4.10.2222). Windows 98 Second Edition – скорее, сборник апдейтов и мелких дополнений, чем что-то революционно новое.

Во-первых, это новый Explorer версии 5.0.

Во-вторых, в новой редакции системы появился прокси-сервер ICS (Internet Connection Sharing — совместное использование Internet), который позволяет в небольшой локальной сети организовать совместный доступ в Интернет при помощи одного модема.

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

В четвертых это Service Pack, то есть сборник апдейтов и устранений ошибок предыдущей версии Windows.

В-пятых, в систему введена поддержка IEEE 1394 и ACPI, а также улучшена поддержка USB.

Преимущества:

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

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

Поддержка аппаратных средств нового поколения. Использование преимуществ новейших стандартов и технологий, таких как шина USB, DVD и IEEE 1394, расширение возможностей за счет подключения к одному компьютеру нескольких мониторов,  

Windows NT С такими операционными системами, как Windows NT, рядовому пользователю приходится сталкиваться довольно редко: разве что где-нибудь на работе или на выставке. Несмотря на то что Windows NT названием и интерфейсом похожа на другие ОС корпорации Microsoft, она значительно от них отличается — Windows NT предназначена в первую очередь для крупных сетей. Windows NT, в отличие от Windows 3.11, является полноценной 32-разрядной операционной системой с широкими возможностями; благодаря развитым сетевым возможностям она может использоваться при интеграции нескольких сетей.

Система не поддерживает идеологию Plug&Play. Однако, по целому ряду причин для некоторых пользователей именно эта ОС является наилучшей. Если характер вашей работы таков, что любая порча данных может обойтись очень дорого, то серьёзные меры по обеспечению устойчивости и безопасности, реализованные в Windows NT могут быть спасением. Windows NT — система скорее для корпоративных, чем для домашних пользователей. В этой промышленной версии Windows фирмы Microsoft основной упор сделан на безопасность и надёжность в ущерб всему остальному, в том числе и удобству пользователя.

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

Операционная система Windows 2000 Professional объединяет присущую Windows 98 простоту использования в Интернете, на работе, в пути, с присущими Windows NTуправляемостью, надежностью и безопасностью.

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

Windows 2000 Datacenter Server является самой производительной и полнофункциональной серверной операционной системой из всех, когда-либо предлагавшихся корпорацией Microsoft. Эта система поддерживает до 64 ГБ физической памяти, а также симметричную мультипроцессорную обработку с использованием до 32 процессоров. Ее стандартные компоненты обеспечивают 4-узловую кластеризацию и балансировку нагрузки. Она оптимизирована для работы с большими хранилищами данных, эконометрического анализа, моделирования крупномасштабных процессов в науке и технике, оперативной обработки транзакций и объединения серверов

Служба каталогов Microsoft Windows 2000 Active Directory является одним из самых важных новшеств операционной системы Windows 2000. Служба Active Directory значительно упрощает управление системой, усиливает систему безопасности и расширяет возможности интеграции с другими платформами. Ключевой особенностью, обеспечивающей интеграцию, является возможность синхронизации информации, хранимой в каталоге Active Directory, с другими хранилищами информации, в том числе со службой каталогов Novell Directory Services (NDS) и системными базами данных.

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

В Windows 2000 разработчики не только постарались учесть опыт создания NT-систем предыдущего поколения, сохранив все их традиционные достоинства, но и включили в нее много полезных наработок из привычной в своей доступности и простоте Windows 9x, как бы сблизив эти две разные системы.

Главное же и важнейшее ее достоинство для нас с вами – это совместимость с большинством программ Windows 9x. При этом надежность Windows 2000 на порядки выше, чем у Windows 9x.

Устойчивость работы Windows 2000 объясняется не только тем, что DOS в ней отсутствует – система полностью 32-х разрядная, но и тем, что в ней, в отличие от Windows 9x, применена так называемая вытесняющая многозадачность.

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

По сравнению с Windows NT, новая операционная система не только значительно облагорожена приятным внешним видом пользовательского интерфейса, который не вызовет никаких проблем у тех, кто видел Windows 9x, но и заметно улучшена поддержка широкого спектра нового оборудования. Система воспринимает без проблем и Plug and Play, USB, IEEE, ACPI, AGP, MMX, и даже FAT32.

Рекомендуем посмотреть лекцию «1. Виды потребителей воды».

Таким образом, наконец-то появилась операционная система, которая хоть как-то может заменить нам “капризного” монополиста Windows 9x, позволив при этом не расстаться с любимыми программами. В большинстве случаев программы под Windows 2000 работают даже быстрее, чем под Windows 9x.

Главный недостаток Windows 2000 – большая требовательность к аппаратной конфигурации персонального компьютера, значительно превышающая запросы Windows 9x. И хотя Microsoft и заявляет, что минимум для нее – Pentium 133, 32Mb RAM, 2Гб HDD, на деле же — это характеристики машины, на которую Windows 2000 можно установить, но не работать.

В жизни же, рекомендуется как минимум 96Mb ОЗУ, при которых уже можно более-менее комфортно работать, лучше 128Мб и выше.

Процессор необходим не хуже Pentium 233МГц. 650 свободных мегабайт на жестком диске, как написано в руководстве Microsoft, также едва-едва хватит под саму операционную систему – под раздел с ОС надо отвести минимум 2-4Гб, иначе системные программы придется ставить в другие разделы.


·                     

 

2.1.1 Функции операционной системы персонального компьютера

Персональный компьютер состоит из аппаратных и программных компонентов. К последним относятся:

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

Рисунок 2‑1. Программные и аппаратные компоненты компьютера (Источник: Learning Materials for Information Technology Professionals (EUCIP-Mat))

Рисунок 2‑2. Предоставление аппаратных ресурсов приложениям (Источник: Learning Materials for Information Technology Professionals (EUCIP-Mat))

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

К типичным функциям ОС персонального компьютера относятся:

  • Пользовательская среда для работы с устройствами
  • Автоматическая настройка устройств ввода/вывода
  • Программный интерфейс обращения к устройствам
  • Среда создания приложений
  • Распределение ресурсов (ЦПУ, ОЗУ, файловая система, итд.)
  • Поддержка компьютерных сетей (протоколы, веб-обозреватель)
  • Средства безопасности (аутентификация, сетевой экран, ACL файловой системы, шифрование, настройка пользовательских ограничений и установки).

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

Ввиду этого, работу по развитию ОС можно разделить на следующие категории:

  • Миркоядерная архитектура (Microkernel architecture) — компактное ядро, к которому подключаются дополнительные компоненты.
  • Многопоточность (Multithreading) - позволяет разбивать процессы на потоки, выполняющиеся параллельно.
  • Симметричная многопроцессорная обработка (Symmetric multiprocessing) — процессоры делят основную память и устройства ввода/вывода и могут в равной степени исполнять все процессы.
  • Объектно-ориентированный дизайн - упрощает добавление компонентов к микроядру, разработку инструментов и отладку самой ОС.
  • Монитор виртуальных машин (Hypervisor) - программа, встроенная в слой между аппаратурой и ядром, позволяющая одновременное выполнение нескольких операционных систем на одном и том же компьютере.

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


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

Windows 7 ее основные функции — Информатика, информационные технологии

КОНТРОЛЬНАЯ РАБОТА

по дисциплине «ИНФОРМАТИКА»

Выполнил(а): студент(ка) _1____ курса

инженерного факультета заочного отделения

по направлению подготовки ______________

_______________________________________

_______________________________________

Ф.И.О. студента (полностью)

Шифр: ________________________________

Чебоксары 2016

СОДЕРЖАНИЕ

Задание 1. 3

Задание 2. 4

Задание 3. 13

Задание 4. 16

Задание 5. 18

Задание 6. 19

Задание 7. 19

Задание 8. 21

Задание 9. 22

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ… 23

Задание 1.

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

Компьютер на базе X86, версия 5.1.2600 Service Pack3 сборка 2600. Имя операционной системы Microsoft Windows XP Professional. Изготовитель ОС Microsoft Corporation. Процессор x86 family 6 Model 23 Stepping 10

Задание 2.

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

Назначение операционной системы

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

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

Windows 7 ее основные функции

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

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

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

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

  • Программа Блокнот. Это простейший текстовый редактор, который можно использовать для просмотра текстовых файлов. Для создания текстовых документов используется редко.
  • Графический редактор Paint.

Используется для обучения работе с графическими объектами перед изучением профессиональных графических редакторов.

  • Текстовый процессор WordPad.

Служит для создания, редактирования и просмотра текстовых документов. Является упрощенным вариантом текстового процессора Word.

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

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

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

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

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

Статьи к прочтению:

10 СКРЫТЫХ ФУНКЦИЙ WINDOWS, О КОТОРЫХ СТОИТ ЗНАТЬ


Похожие статьи:

Современные операционные системы. Назначения, состав и функции. Перспективы развития.

Федеральное государственное автономное образовательное учреждение высшего профессионального образования «СИБИРСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ» Институт нефти и газа Кафедра геофизики РЕФЕРАТ Современные операционные системы. Назначения, состав и функции. Перспективы развития. Преподаватель Е.Д. Агафонов подпись, дата Студент НГ15-04 081509919 И.О. Старостин подпись, дата Красноярск 2016

СОДЕРЖАНИЕ Введение 1 Назначение операционных систем 1.1 Понятие об операционной системе 1.2 Взаимодействие пользователя с компьютером 1.3 Использование ресурсов 1.4 Облегчение процессов вычислительной системы 1.5 Возможность развития 2 Функции операционной системы 2.1 Управление процессами 2.2 Управление памятью 2.3 Защита памяти 2.4 Управление файлами 2.5 Управление внешними устройствами 2.6 Защита данных и администрирование 2.7 Интерфейс прикладного программирования 2.8 Пользовательский интерфейс 3 Состав операционной системы 3.1 Ядро 3.2 Командный процессор 3.3 Драйверы устройств 3.4 Утилиты 3.5 Справочная система 4 Перспективы развития Заключение Список сокращений Список использованных источников 2 3 4 4 4 5 6 6 6 7 7 7 8 8 8 9 9 9 9 9 10 10 10 11 12 13 14

ВВЕДЕНИЕ В эпоху бурного развития компьютерных технологий, удивительных открытий, мгновенной передачи информации в любую точку планеты, мы совсем не испытываем дискомфорта при «общении» с техникой. Благодаря чему мы с такой легкостью можем обращаться с технологиями, устройство которых загадка для большинства людей? Есть ли ограничения или наоборот, огромные перспективы? Целью работы является знакомство с основными понятиями, описывающими принцип работы современных вычислительных устройств за счет операционных систем. Задачи работы: — ознакомиться с назначением операционных систем; — изучить возможности и функционал современных ОС; — подробно изучить строение операционных систем; — дать приблизительную оценку перспектив в развитии индустрии. 3

1 Назначение операционных систем В наше время существует огромное множество типов операционных систем, имеющих различные области применения. В таких условиях можно выделить четыре основных критерия, описывающих назначение ОС. 1.1 Понятие об операционной системе Операционная система (ОС) — комплекс взаимосвязанных программ, предназначенных для управления ресурсами вычислительного устройства. Благодаря этим программам происходит организация взаимодействия с пользователем. Управление памятью, процессами, и всем программным и аппаратным обеспечением устраняет необходимость работы непосредственно с дисками и предоставляет простой, ориентированный на работу с файлами интерфейс, скрывает множество неприятной работы с прерываниями, счетчиками времени, организацией памяти и другими компонентами. [1] 1.2 Взаимодействие пользователя с компьютером Организация удобного интерфейса, позволяющая пользователю взаимодействовать с аппаратурой компьютера за счет некой расширенной виртуальной машины, с которой удобнее работать и которую легче программировать. Вот перечень основных сервисов, предоставляемых типичными операционными системами. Разработка программ, где ОС представляет программисту разнообразные инструменты разработки приложений: редакторы, отладчики и т.п. Ему не обязательно знать, как функционируют различные электронные и электромеханические узлы и устройства компьютера. Часто пользователь может обойтись только мощными высокоуровневыми функциями, которые представляет ОС. Также, для запуска программы нужно выполнить ряд действий: загрузить в основную память программу и данные, инициализировать устройства вводавывода и файлы, подготовить другие ресурсы. ОС выполняет всю эту работу вместо пользователя. ОС дает доступ к устройствам ввода-вывода. Каждое устройство требует свой набор команд для запуска. ОС предоставляет пользователю единообразный интерфейс, который опускает все детали и дает программисту доступ к устройствам ввода-вывода через простейшие команды чтения и записи. При работе с файлами управление со стороны ОС предполагает не только глубокий учет природы устройства ввода-вывода, но и знание структур данных, записанных в файлах. Многопользовательские ОС, кроме того, обеспечивают механизм защиты при обращении к файлам. ОС управляет доступом к совместно используемой или общедоступной вычислительной системе в целом, а также к отдельным системным ресурсам. Она обеспечивает защиту ресурсов и данных от несанкционированного использования и разрешает конфликтные ситуации. 4

Обнаружение ошибок и их обработка — это еще один очень важный момент в назначении ОС. При работе компьютерной системы могут происходить разнообразные сбои за счет внутренних и внешних ошибок в аппаратном обеспечении, различного рода программных ошибок (переполнение, попытка обращения к ячейке памяти, доступ к которой запрещен и др.). В каждом случае ОС выполняет действия, минимизирующие влияние ошибки на работу приложения (от простого сообщения об ошибке до аварийной остановки программы). И, наконец, учет использования ресурсов. ОС имеет средства учета использования различных ресурсов и отображения параметров производительности вычислительной системы. Эта информация важна для настройки (оптимизации) вычислительной системы с целью повышения ее производительности. [1] 1.3 Использование ресурсов Организация эффективного использования ресурсов компьютера. ОС также является своеобразным диспетчером ресурсов компьютера. К числу основных ресурсов современных вычислительных систем относятся основная память, процессоры, таймеры, наборы данных, диски, накопители на МЛ, принтеры, сетевые устройства, и др. Перечисленные ресурсы определяются операционной системой между выполняемыми программами. В отличие от программы, которая является статическим объектом, выполняемая программа – это динамический объект, который называется процессом и является базовым понятием современных ОС. Управление ресурсами вычислительной системы с целью наиболее эффективного их использования является вторым назначением операционной системы. Критерии эффективности, в соответствии с которыми ОС организует управление ресурсами компьютера, могут быть различными. Например, в одном случае наиболее важным является пропускная способность вычислительной систем, в другом – время ее реакции. Зачастую ОС должны удовлетворять нескольким, противоречащим друг другу критериям, что доставляет разработчикам серьезные трудности. Управление ресурсами включает решение ряда общих, не зависящих от типа ресурса задач. Планирование ресурса – определение процесса, для которого необходимо выделить ресурс. Здесь предопределяется, когда и в каком качестве должен выделиться данный ресурс. Удовлетворение запросов на ресурсы – выделение ресурсов процессам; мониторинг состояния и учет использования ресурса – поддержание оперативной информации о задействовании ресурса и использовании его доли. Разрешение конфликтов между процессами, претендующими на один и тот же ресурс. Для решения этих общих задач управления ресурсами разные ОС используют различные алгоритмы, что в итоге и определяет облик ОС в целом, включая характеристики производительности, область применения и даже пользовательский интерфейс. [1] 1.4 Облегчение процессов вычислительной системы 5

Облегчение процессов эксплуатации аппаратных и программных средств вычислительной системы. Ряд операционных систем имеет в своем составе наборы служебных программ, обеспечивающие резервное копирование, архивацию данных, проверку, очистку и дефрагментацию дисковых устройств и др. Кроме того, современные ОС имеют достаточно большой набор средств и способов диагностики и восстановления работоспособности системы. Сюда относятся: — диагностические программы для выявления ошибок в конфигурации операционной системы; — средства восстановления последней работоспособной конфигурации; — средства восстановления поврежденных и пропавших системных файлов и др. [1] 1.5 Возможность развития Современные ОС организуются таким образом, что допускают эффективную разработку, тестирование и внедрение новых системных функций, не прерывая процесса нормального функционирования вычислительной системы. Большинство операционных систем постоянно развиваются (нагляден пример Windows). Происходит это в силу следующих причин. [1] Для удовлетворения пользователей или нужд системных администраторов ОС должны постоянно предоставлять новые возможности. Например, может потребоваться добавить новые инструменты для контроля или оценки производительности, новые средства ввода-вывода данных (речевой ввод). Другой пример – поддержка новых приложений, использующих окна на экране дисплея. [1] В каждой ОС есть ошибки. Время от времени они обнаруживаются и исправляются. Отсюда постоянные появления новых версий и редакций ОС. Необходимость регулярных изменений накладывает определенные требования на организацию операционных систем. Очевидно, что эти системы должны иметь модульную структуру с четко определенными межмодульными связями. Важную роль играет хорошая и полная документированность системы. [1] 2 Функции операционной системы Функции ОС обычно группируются либо в соответствии с типами локальных ресурсов, которыми управляет ОС, либо в соответствии со специфическими задачами, применимыми ко всем ресурсам. Совокупности модулей, выполняющих такие группы функций, образуют подсистемы операционной системы. Наиболее важными подсистемами управления ресурсами являются подсистемы управления процессами, памятью, файлами и внешними устройствами, а подсистемами, общими для всех ресурсов, являются подсистемы пользовательского интерфейса, защиты данных и администрирования. [2] 6

2.1 Управление процессами Подсистема управления процессами непосредственно влияет на функционирование вычислительной системы. Для каждой выполняемой программы ОС организует один или более процессов. Каждый такой процесс представляется в ОС информационной структурой (таблицей, дескриптором, контекстом процессора), содержащей данные о потребностях процесса в ресурсах, а также о фактически выделенных ему ресурсах (область оперативной памяти, количество процессорного времени, файлы, устройства ввода-вывода и др.). В современных мультипрограммных ОС может существовать одновременно несколько процессов, порожденных по инициативе пользователей и их приложений, а также инициированных ОС для выполнения своих функций (системные процессы). Поскольку процессы могут одновременно претендовать на одни и те же ресурсы, подсистема управления процессами планирует очередность выполнения процессов, обеспечивает их необходимыми ресурсами, обеспечивает взаимодействие и синхронизацию процессов. [2] 2.2 Управление памятью Подсистема управления памятью производит распределение физической памяти между всеми существующими в системе процессами, загрузку и удаление программных кодов и данных процессов в отведенные им области памяти, а также защиту областей памяти каждого процесса. Стратегия управления памятью складывается из стратегий выборки, размещения и замещения блока программы или данных в основной памяти. Соответственно используются различные алгоритмы, определяющие, когда загрузить очередной блок в память, в какое место памяти его поместить и какой блок программы или данных удалить из основной памяти, чтобы освободить место для размещения новых блоков. Одним из наиболее популярных способов управления памятью в современных ОС является виртуальная память. Реализация механизма виртуальной памяти позволяет программисту считать, что в его распоряжении имеется однородная оперативная память, объем которой ограничивается только возможностями адресации, предоставляемыми системой программирования. 2.3 Защита памяти Нарушения защиты памяти связаны с обращениями процессов к участкам памяти, выделенной другим процессам прикладных программ или программ самой ОС. Средства защиты памяти должны пресекать такие попытки доступа путем аварийного завершения программы-нарушителя. 2.4 Управление файлами Функции управления файлами сосредоточены в файловой системе ОС. Операционная система виртуализирует отдельный набор данных, хранящихся на внешнем накопителе, в виде файла – простой неструктурированной 7

последовательности байтов, имеющих символьное имя. Для удобства работы с данными файлы группируются в каталоги, которые, в свою очередь, образуют группы – каталоги более высокого уровня. Файловая система преобразует символьные имена файлов, с которыми работает пользователь или программист, в физические адреса данных на дисках, организует совместный доступ к файлам, защищает их от несанкционированного доступа. [4] 2.5 Управление внешними устройствами Функции управления внешними устройствами возлагаются на подсистему управления внешними устройствами, называемую также подсистемой вводавывода. Она является интерфейсом между ядром компьютера и всеми подключенными к нему устройствами. Спектр этих устройств очень обширен (принтеры, сканеры, мониторы, модемы, манипуляторы, сетевые адаптеры, АЦП разного рода и др.), сотни моделей этих устройств отличаются набором и последовательностью команд, используемых для обмена информацией с процессором и другими деталями. Программа, управляющая конкретной моделью внешнего устройства и учитывающая все его особенности, называется драйвером. Наличие большого количества подходящих драйверов во многом определяет успех ОС на рынке. Созданием драйверов занимаются как разработчики ОС, так и компании, выпускающие внешние устройства. ОС должна поддерживать четко определенный интерфейс между драйверами и остальными частями ОС. Тогда разработчики компаний-производителей устройств ввода-вывода могут поставлять вместе со своими устройствами драйверы для конкретной операционной системы. [4] 2.6 Защита данных и администрирование Безопасность данных вычислительной системы обеспечивается средствами отказоустойчивости ОС, направленными на защиту от сбоев и отказов аппаратуры и ошибок программного обеспечения, а также средствами защиты от несанкционированного доступа. Для каждого пользователя системы обязательна процедура логического входа, в процессе которой ОС убеждается, что в систему входит пользователь, разрешенный административной службой. Корпорация Microsoft, например, в своем последнем продукте Windows 10 предлагает пользователю вход в систему через распознавание внешности. Это должно повысить безопасность и сделать вход в систему быстрее. [6] А вот Google обещает нам в новой версии своей ОС для смартфонов Android 6.0 доступ к устройству и подтверждение покупок через сканер отпечатка пальца, если для того пригодно устройство. [7] Администратор вычислительной системы определяет и ограничивает возможности пользователей в выполнении тех или иных действий, т.е. определяет их права по обращению и использованию ресурсов системы. Важным средством защиты являются функции аудита ОС, заключающегося в фиксации всех событий, от которых зависит безопасность системы. Поддержка отказоустойчивости вычислительной системы реализуется на основе 8

резервирования (дисковые RAID-массивы, резервные принтеры и другие устройства, иногда резервирование центральных процессоров, в ранних ОС – дуальные и дуплексные системы, системы с мажоритарным органом и др.). Вообще обеспечение отказоустойчивости системы – одна из важнейших обязанностей системного администратора, который для этого использует ряд специальных средств и инструментов. [2] 2.7 Интерфейс прикладного программирования Прикладные программисты используют в своих приложениях обращения к операционной системе, когда для выполнения тех или иных действий им требуется особый статус, которым обладает только ОС. Возможности операционной системы доступны программисту в виде набора функций, который называется интерфейсом прикладного программирования (Application Programming Interface, API). Приложения обращаются к функциям API с помощью системных вызовов. Способ, которым приложение получает услуги операционной системы, очень похож на вызов подпрограмм. Способ реализации системных вызовов зависит от структурной организации ОС, особенностей аппаратной платформы и языка программирования. В ОС UNIX системные вызовы почти идентичны библиотечным процедурам. [1] 2.8 Пользовательский интерфейс ОС обеспечивает удобный интерфейс не только для прикладных программ, но и для пользователя (программиста, администратора, пользователя). На данный момент производители предлагают нам множество функций, призванных облегчить нашу работу с устройствами и сэкономить время. В качестве примера я опять хочу привести Windows 10. Microsoft помогает пользователю обеспечить беспрепятственную работу всех его устройств (естественно от Microsoft) , за счет общей ОС. Тут и мгновенная передача данных с одного устройства на другое, и общие уведомления, которые с такой функцией никак не пропустишь. [6] «Эффективная, организованная работа» – это практически слоган для каждого производителя ОС. Работа с заметками прямо на веб-страницах, новые многооконные режимы, несколько рабочих столов – все это мы видим уже как несколько лет, а у разработчиков еще много идей. [6] 3 Состав операционной системы Современные операционные системы имеют сложную структуру, состоящую из множества элементов, где каждый из них выполняет определенные функции по управлению процессами и распределению ресурсов. 3.1 Ядро 9

Ядро ОС – центральная часть операционной системы, обеспечивающая приложениям координированный доступ к файловой системе, и обмену файлами между ПУ. [4] 3.2 Командный процессор Программный модуль ОС, ответственный за чтение отдельных команд или же последовательности команд из командного файла, иногда называют командным интерпретатором. [4] 3.3 Драйверы устройств К магистрали компьютера подключаются различные устройства (дисководы, монитор, клавиатура, мышь, принтер и др.). Каждое устройство выполняет определенную функцию, при этом техническая реализация устройств существенно различается. В состав операционной системы входят драйверы устройств, специальные программы, которые обеспечивают управление работой устройств и согласование информационного обмена с другими устройствами, а также позволяют производить настройку некоторых параметров устройств. Каждому устройству соответствует свой драйвер. [4] 3.4 Утилиты Дополнительные сервисные программы (утилиты) – вспомогательные компьютерные программы в составе общего программного обеспечения, делающие удобным и многосторонним процесс общения пользователя с компьютером. [4] 3.5 Справочная система Для удобства пользователя в состав операционной системы обычно входит также справочная система. Справочная система позволяет оперативно получить необходимую информацию как о функционировании операционной системы в целом, так и о работе ее отдельных модулей. [4] 4 Перспективы развития В настоящее время наблюдается значительное повышение надежности, безопасности и отказоустойчивости ОС; сближение по возможностям ОС для настольных компьютеров и ОС для мобильных устройств. Тенденция к проектам по ОС с открытым кодом – это очень выгодное направление в развитии ОС, так как фирмам-разработчикам необходимы новые идеи, которые им могут предложить молодые программисты. 10

Огромное значение имеет спрос на корпоративные операционные системы, для которых характерны высокая степень масштабируемости, поддержка сетевой работы, развитые средства обеспечения безопасности, способность работать в гетерогенной среде, наличие средств централизованного администрирования и управления. Здесь то и требуется возможность обработки огромного объема данных. [3] Кто-то делает ставку на облачные хранилища, и прогнозирует «вымирание» ОС вовсе. Даже при том, что мы пользуемся облаками, такая перспектива не кажется возможной в ближайшие годы. Я наблюдаю стремление разработчиков к повышению производительности за счет более разумного использования ресурсов (Windows 10 запускается на 28% быстрее, нежели Windows 7), надежности и удобства в использовании. Будь то голосовое управление или различные уникальные нововведения в интерфейс для более дружелюбного взаимодействия. [5] [7] 11

ЗАКЛЮЧЕНИЕ Как мы смогли понять, операционные системы играю колоссальную роль во взаимосвязи пользователя и железа. Самым главным является то, что прогресс не стоит на месте, с каждым днем разрабатываются все более мощные машины, объем обрабатываемых данных растет, вместе с этим также развиваются и совершенствуются ОС, появляются новые идеи для более удобного и эффективного применения накопленных знаний. ОС по своему функционалу двигаются в сторону обеспечения интуитивного взаимодействия пользователя и устройства. 12

СПИСОК СОКРАЩЕНИЙ АЦП – аналого-цифровой преобразователь; ОС – операционная система; ПУ – периферийное устройство. 13

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 1 Назаров, С. В. Современные операционные системы: учебное пособие / С. В. Назаров, А. И. Широков. — Москва : Национальный Открытый Университет «ИНТУИТ», 2012. — 367 с. 2 Грошев, С. Основные понятия ОС [Электронный ресурс] : Наука и образование / МГТУ им. Н.Э. Баумана — Электрон. журн. — Москва : ФГБОУ ВПО «МГТУ им. Н.Э. Баумана» 2015. — Режим доступа: http://technomag.bmstu.ru/doc/48639.html 3 Перспективы операционных систем и сетей [Электронный ресурс] : национальный открытый университет «ИНТУИТ». — Москва: 2015 — Режим доступа: http://www.intuit.ru/studies/courses/641/497/lecture/11328 4 Архитектура, назначение и функции операционных систем [Электронный ресурс] : Лекция 1 / Национальный открытый университет «ИНТУИТ» — Москва, 2015. — Режим доступа: http://www.intuit.ru/studies/courses/631/487/lecture/11048 5 Даровский, Н. Н. Перспективы развития операционных систем [Электронный ресурс] / Н. Н. Даровский // интернет-портал Web-3. — 2015. — Режим доступа: http://system.web-3.ru/windows/?act=full&id_article=12055 6 Компоненты Windows 10 [Электронный ресурс] : официальный сайт разработчика / Microsoft Corporation — 2016. — Режим доступа: https://www.microsoft.com/ru-ru/windows/features?section=familiar 7 Android 6.0 Marshmallow [Электронный ресурс] : официальный сайт разработчика / Google Corp. — 2016. — Режим доступа: https://www.android.com/intl/ru_ru/versions/marshmallow-6-0/ 14

Наука и Образование: научно-техническое издание: Основные понятия ОС

автор: Грошев С.

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

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

Назначение, функции и характеристики операционных систем

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

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

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

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

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

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

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

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

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

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

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

Переносимость. Новшества в аппаратном обеспечении возникают быстро и часто непредсказуемо. Например, RISC (Reduced Instructions Set Computer — компьютеры с сокращенным набором команд) — процессоры существенно отличаются от традиционных CISC (Complex Instruction Set Computer – компьютеры со сложным набором команд). Если операционная система написана на переносимом языке — это позволяет быстрее переходить от одной архитектуры компьютеров к другой, то есть использовать всю операционную систему целиком на машине с другим процессором или конфигурацией при минимальных изменениях исходного текста. Хотя операционные системы часто делят на «переносимые» и «непереносимые», строго говоря, переносимость в той или иной степени свойственна всем им. Вопрос не в том, можно ли перенести программу, поскольку, как правило, в конечном счете, это можно сделать, а в том, насколько сложно это сделать. Поэтому большинство современных операционных систем пишутся на языках высокого уровня, обладающих высокой переносимостью.

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

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

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

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

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

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

Вычислительные ресурсы и операционная система

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

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

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

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

Рассмотрим основные ресурсы, которыми управляет операционная система (Рис. 1.1). Кроме обеспечения связи прикладных программ с аппаратными средствам компьютера, большинство операционных систем обеспечивают распределение вычислительных ресурсов между пользователями и процессами. Таких ресурсов несколько, но самыми важными вычислительными ресурсами являются время процессора и оперативная память. Часть операционной системы находится в оперативной памяти. В эту часть входит ядро, содержащее основную часть наиболее часто используемых функций. В зарубежной литературе и ряде отечественных изданий вместо ядра используется английский термин – kernel. Также в оперативной памяти находятся и некоторые другие компоненты операционной сис­темы, использующиеся в данный момент времени.

Вычислительные ресурсы

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

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

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

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

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

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

Система с одной очередью

Дисциплина обслуживания с несколькими очередями позволяет сократить потери времени на переключение процессов. Приоритет очереди убывает с возрастанием ее номера. Вновь поступающий запрос ставиться в конец очереди, имеющей старший приоритет (Рис. 1.3).

В такой системе подлежит обслуживанию запрос из начала очереди с номером m, если очереди с меньшим номером пусты. Если за выделенный квант времени обслуживание не завершено, процесс переходит в конец очереди m+1. Таким образом, квант времени, выделяемый процессу, возрастает с увеличением номера очереди по правилу:

Km = K 2m

где    Km — квант, выделяемый программе из очереди m,

          K – квант, выделяемый для процесса из первой очереди.

Система с несколькими очередями

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

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

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

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

— Запоминание состояния прерываемой программы и осуществление перехода к прерывающей программе.

— Восстановление состояния прерванной программы и возврат к ней.

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

Для оценки эффективности систем прерывания могут быть использованы следующие характеристики:

— Общее количество обрабатываемых запросов прерывания.

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

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

Время реакции обозначено tp. Для одного и того же запроса задержки в исполнении прерывающей программы зависят от того, сколько программ с большим приоритетом ждет обслуживания. Поэтому время реакции определяют для запроса с наивысшим приоритетом. Время tзописывает интервал, необходимый для запоминания состояния прерываемой программы. Восстановление состояния прерванной программы по окончании прерывания занимает время tв. Затраты времени на переключение программ или издержки прерывания равны суммарному расходу времени на запоминание и восстановление состояния программы: ttз+tв.

Рис. 1.4. Процесс прерывания

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

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

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

Операционные системы с мультипроцессорной обработкой делятся на две категории – с асимметричной либо симметричной обработкой (Рис. 1.5, слева). Операционные системы с асимметричной мультипроцессорной обработкой (ASMP — ASymmetric MultiProcessing,) обычно выбирают для исполнения собственного кода один и тот же процессор, например, А, в то время как другие процессоры выполняют только пользовательские задачи. Так как код операционной системы исполняется на одном процессоре, то систему ASMP довольно просто создать, усовершенствовав существующую однопроцессорную операционную систему.

Виды мультипроцессорной обработки

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

Системы с симметричной мультипроцессорной обработкой (SMP — Symmetric MultiProcessing,) позволяют коду операционной системы выполняться на любом свободном процессоре или на всех процессорах одновременно, причем каждому из процессоров доступна вся память (Рис. 1.5, справа). Такой подход полнее реализует возможности нескольких процессоров, так как сама операционная система может использовать значительную часть процессорного времени компьютера, в зависимости от того, какие приложения на нем исполняются. Исполнение операционной системы только на одном процессоре, как в случае ASMP, может сильно загружать его, в то время как остальные простаивают, что уменьшит производительность системы. При увеличении числа процессоров в системе возрастает вероятность того, что узким местом станут именно действия, выполняемые самой операционной системой. Помимо равномерного распределения системной загрузки, системы SMP сокращают время простоя из-за неисправностей, так как при сбое одного процессора код операционной системы может исполняться на других процессорах. Наконец, поскольку симметричная аппаратура реализуется разными производителями сходным образом, имеется возможность создания переносимой операционной системы с SMP.

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

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

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

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

На следующем уровне иерархии располагается так называемая кэш-память. Это буферная память между основной памятью компьютера и процессором. Необходимость в такой памяти возникает из-за большой разницы в скорости работы процессора и основной памяти. Кэш-память может располагаться вне центрального процессора, но в большинстве современных систем, данный вид памяти расположен прямо на кристалле центрального процессора. Емкость кэш-памяти в разных системах колеблется от 64 до 4096 мегабайт. Скорость работы данного вида памяти или равна скорости работы процессора или составляет половину от этой скорости для удешевления системы.

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

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

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

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

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

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

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

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

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

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

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

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

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

 

 

 

 

 

 

 

 

 

 

Сравнение операционных систем Mac OS, Linux и Windows

Споры о том, какая из этих операционных систем лучше, наверное, не прекратятся никогда. Самыми распространенными и популярными среди ОС считаются Windows, Linux и Mac OS. Попробуем сравнить их.

Начнем с того, что Linux принадлежит к семейству открытых и свободных систем. Что это значит? Вы можете совершенно бесплатно, а главное, законно произвести установку ОС на своем ПК или ноутбуке. В свою очередь Mac OS и Windows относятся к закрытому (проприетарному) семейству операционных систем. Их копии необходимо приобретать для установки. Широко распространены пиратские версии.

Windows. Еще недавно самая распространенная операционная система. По данным статистики, она установлена на 85% устройств: планшеты, ноутбуки, компьютеры. Используются как дома, так и на предприятиях. С распространением мобильных устройств – смартфонов, Linux начала теснить Windows. Ведь именно она стал основой для Android.
Самые главные плюсы – отличная совместимость и распространенность.

Linux из семейства операционных систем Unix. Однако существуют различные дистрибутивы, которые имеют ядро в зависимости от версии, и заточены под определенные цели. Они подходят и для работы на десктопах для домохозяйкам, и для мощных кластерных серверных систем.Более 80% серверов в Интернете работают на базе одного из дистрибутивов Linux, FreeBSD или другой Unix-подобной системы. Про основу под Android мы сказали выше.

Достоинство – оперативная доработка недочетов и неточностей благодаря открытому исходному коду.

Mac OS. Система, которая была разработана компанией Apple. Это сопутствующее ПО для выпускаемых этой корпорацией устройств. Основана на FreeBSD, исходный код закрыт. В настоящий момент занимает менее 20% рынка и считается второй по популярности.

Преимущества – стабильность и производительность.

Сравним ОС по нескольким параметрам.

  • Системные требования. Конечно, на данный параметр сейчас обращают гораздо меньшее внимание, чем каких-нибудь 7–8 лет назад. Однако количество приложений, которым для работы необходимы серьезные ресурсы, увеличивается. Это значит, что и свободное место на вашем ПК или другом устройстве будет не лишним.

    Windows. Для стабильной работы системы последних версий вам понадобится процессор с двумя ядрами, 1 Гб оперативки (а если берете 64-битный дистрибутив, то еще больше), не самая плохая видеокарта.

    Linuх. Здесь ситуация проще. Достаточно одноядерного процессора, 256 Мб оперативки (сразу приготовьтесь докупить планку) и абсолютно любой видеокарты. Естественно, этого будет недостаточно для быстрой работы приложений и легкого серфинга в Интернете. Но минимальные требования именно такие. Отметим, что плюсом будет модуль ядра Zram, который позволяет сжимать данные с помощью zip перед сохранением в оперативной памяти.

    Mac OS. Так как система закрыта, то однозначного вывода сделать не получится. Теоретически данную ОС получится запустить с 512 Мб оперативки, одноядерным процессором с частотой 1 ГГц и 9 свободными Гб памяти на жестком диске.

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

    Windows. Считается, что это ОС наиболее уязвимая. Это можно объяснить очень просто: над последними версиями работают менее квалифицированные сотрудники. Подобное подтверждается многочисленными ошибками в коде. Если вспомнить Windows NT и Windows XP, то процесс разработки был организован хорошо, отсюда и стабильность. Именно поэтому хакеры придумывают все новые и новые  вирусы под эту оболочку. Также специалисты из Microsoft устраняют крайне мало уязвимостей, а если делают это, то через месяц или больше.  

    Linux. Если посмотреть на Linux, то «дыры» латаются за считанные часы. Все продукты семейства Unix имеют очень мало изъянов. Есть возможность шифрования данных, но чтобы это выполнять, потребуются определенные навыки. Что касается всплывающих блокираторов – про них можно забыть.

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

  • Процесс установки и настройки ОС. Тут сравниваемые проявляют себя по-разному: кто-то «настроен дружелюбно», а кто-то доставит немало хлопот.

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

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

    Mac OS. Процесс установки можно сравнить с аналогичной операцией у Windows. Чтобы настроить систему, используются уже готовые программы System Preferences.  

  • Стабильность. Рассмотрим различия в процессе работы.

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

    Linux. Пожалуй, самая стабильная система из всех троих.

    Mac OS. Сбои случаются примерно с той же периодичностью, что и у Windows. Это чаще всего происходит из-за использования несовместимых со стандартами Apple программи.

  • Поддержка ПО. Сейчас сравним, как «относятся» к стороннему софту представленные операционные системы.

    Windows. Так как данная ОС самая распространенная, то и ПО чаще всего пишется именно под нее. Можно найти очень много платного и бесплатного софта.

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

    Mac OS. Программ достаточное количество. Минус – устанавливать их можно только из AppStore.

  • Удобство в использовании. Все разработчики стремятся сделать свои продукты максимально простыми и доступными в применении, но не у всех это получается.

    Windows. Тут без вопросов. Интерфейс понятен (если не считать Windows 8). Работа за компьютером не вызывает сложностей.

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

    Mac OS. Тоже удобная и простая система, в ней учитываются все мелочи. Работа с ней будет понятна даже непосвященному.

  • Вместо заключения. Хочется отметить, что выбор должен основываться на запросах. Определитесь, что вам нужно. Windows простая и понятная система, которая идеально подойдет начинающему пользователю. Mac OS отлично оптимизирована, приятна в работе, производительна. Linux активно развивается, ее применяют уже «вооруженные» люди и профильные специалисты, также и все чаще устанавливают на домашние компьютеры. Берите то, что подходит вам. От себя рекомендуем пройти курс «Системный администратор Linux»​ в нашей Академии.  

    Необходимость и функции операционных систем

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

    Необходимость операционной системы:

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

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

    • Управление процессором : Это касается управления центральным процессором (ЦП). Операционная система заботится о распределении процессорного времени для различных процессов. Когда процесс завершает свою обработку ЦП после выполнения в течение отведенного периода времени, это называется планированием. В операционных системах используются различные методы планирования:
      1. Сначала кратчайшее задание (SJF ) : Сначала планируется процесс, для которого требуется наименьшее время ЦП.
      2. Циклическое планирование : Каждому процессу циклически назначается фиксированное время выполнения ЦП.
      3. Планирование на основе приоритета ( без вытеснения ) : В этом планировании процессы планируются в соответствии с их приоритетами, т. Е. Процесс с наивысшим приоритетом планируется первым. Если приоритеты двух процессов совпадают, то запланируйте их по времени прибытия.
    • Управление устройствами:
      Операционная система взаимодействует с оборудованием и подключенными устройствами и поддерживает баланс между ними и ЦП.Это тем более важно, потому что скорость обработки ЦП намного выше, чем у устройств ввода-вывода. Чтобы оптимизировать процессорное время, операционная система использует два метода — буферизацию и буферизацию.
    • Буферизация:
      В этом методе входные и выходные данные временно сохраняются во входном буфере и выходном буфере. После того, как сигнал для ввода или вывода отправляется в ЦП или из него соответственно, операционная система через контроллер устройства перемещает данные из устройства ввода во входной буфер, а для устройства вывода — в выходной буфер.В случае ввода, если буфер заполнен, операционная система отправляет сигнал программе, которая обрабатывает данные, хранящиеся в буфере. Когда буфер становится пустым, программа сообщает операционной системе о перезагрузке буфера, и операция ввода продолжается.
    • Буферизация (одновременная периферийная работа в сети) :
      Это метод управления устройством, используемый для обработки различных задач на одном устройстве ввода / вывода. Когда в сети есть несколько пользователей, совместно использующих один и тот же ресурс, существует вероятность того, что несколько пользователей могут дать ему команду в один и тот же момент времени.Таким образом, операционная система временно хранит данные каждого пользователя на жестком диске компьютера, к которому подключен ресурс. Отдельному пользователю не нужно ждать завершения процесса выполнения. Вместо этого операционная система отправляет данные с жесткого диска на ресурс один за другим.
      Пример: принтер
    • Управление памятью :
      В компьютере и ЦП, и устройства ввода-вывода взаимодействуют с памятью. Когда программа должна быть выполнена, она загружается в основную память до завершения выполнения.После этого пространство памяти освобождается и становится доступным для других программ. Общие методы управления памятью, используемые операционной системой, — это разбиение на разделы и виртуальная память.
    • Разбиение на разделы:
      Общая память разделена на несколько разделов одинакового или разных размеров. Это помогает разместить в памяти несколько программ. Раздел может быть фиксированным, т. Е. Остается неизменным для всех программ в памяти или переменной, т. Е. Память выделяется, когда программа загружается в память.Последний подход вызывает меньшую потерю памяти, но со временем может стать фрагментированным.
    • Виртуальная память :
      Это метод, используемый операционными системами, который позволяет пользователю загружать программы, размер которых превышает размер основной памяти компьютера. В этом методе программа выполняется, даже если полная программа не может быть загружена в основную память, что приводит к эффективному использованию памяти.
    • Управление файлами:
      Операционная система управляет файлами, папками и системами каталогов на компьютере.Любые данные на компьютере хранятся в виде файлов, и операционная система хранит информацию обо всех из них с помощью таблицы размещения файлов (FAT). FAT хранит общую информацию о файлах, такую ​​как имя файла, тип (текстовый или двоичный), размер, начальный адрес и режим доступа (последовательный / индексированный последовательный / прямой / относительный). Файловый менеджер операционной системы помогает создавать, редактировать, копировать, выделять память для файлов, а также обновляет FAT. Операционная система также заботится о том, чтобы файлы открывались с соответствующими правами доступа для их чтения или редактирования.

    Вниманию читателя! Не прекращайте учиться сейчас. Получите все важные концепции теории CS для собеседований SDE с помощью курса CS Theory Course по приемлемой для студентов цене и будьте готовы к работе в отрасли.

    9.2 Операционные системы — Информационные системы

    Цели обучения

    Изучив этот раздел, вы сможете сделать следующее:

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

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

    Некоторые фирмы, такие как Apple и Nintendo, разрабатывают собственные проприетарные ОС для своего оборудования. Microsoft продает операционные системы всем, от Dell до производителя банкоматов Diebold (послушайте знакомый звуковой сигнал ошибки Windows на некоторых банкоматах). И есть множество специализированных фирм, таких как Wind River (приобретенная Intel), которые помогают фирмам разрабатывать операционные системы для всех видов устройств, которые не обязательно выглядят как ПК, включая автомобили, системы редактирования видео и истребители. панели управления.

    Любой, кто использовал ПК и Mac и заметил различия между этими платформами, может получить представление о том, что делает операционная система. Даже для программ, которые в остальном идентичны для этих двух систем (например, браузер Firefox), видны различия в субтитрах. Элементы экрана, такие как меню, полосы прокрутки и границы окон, на Mac выглядят иначе, чем в Windows. То же самое и с диалоговыми окнами, которые появляются при печати или сохранении.

    Эти элементы выглядят и ведут себя по-разному, потому что каждая из этих функций касается аппаратного обеспечения, и команда разработчиков Microsoft Windows создала систему, сильно отличающуюся от своих аналогов Macintosh в Apple.Элементы графического интерфейса пользователя (UI), такие как полосы прокрутки и меню, отображаются на оборудовании дисплея компьютера. Файлы сохраняются на аппаратном обеспечении жесткого диска или другого запоминающего устройства. Большинство операционных систем также включают панели управления, управление файлами рабочего стола и другие вспомогательные программы для работы напрямую с такими аппаратными элементами, как устройства хранения, дисплеи, принтеры и сетевое оборудование. Macintosh Finder и Windows Explorer являются примерами компонентов этих операционных систем.Единый внешний вид, функции и функциональные возможности, которые операционные системы обеспечивают в различных программах, помогают пользователям легче изучать новое программное обеспечение, что снижает затраты на обучение и снижает количество ошибок оператора. На рисунке 9.2 показаны сходства и различия.

    Рисунок 9.2

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

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

    Аналогичным образом, когда Apple предоставила разработчикам общий набор надежных, простых в использовании стандартов для iPhone и (через App Store) простой способ для пользователей установить эти приложения поверх ОС iPhone / iPod touch, программное обеспечение бурно развивалась, и Apple стала самым универсальным мобильным вычислительным устройством на рынке 1 . В случае Apple около пятидесяти тысяч приложений стали доступны через App Store менее чем за год. Хорошая платформа разработки ОС и программного обеспечения может стимулировать сетевые эффекты (см. Главу 6 «Понимание сетевых эффектов»).Несмотря на то, что ОС кажется странной, ее эффективный дизайн имеет очень стратегическое значение для бизнеса!

    Рисунок 9.3 Доля рынка операционных систем для настольных, серверных и мобильных телефонов

    Данные предоставлены HitsLink Market Share, Forrester Research, IDC и AdMob 2 .

    Прошивки и встроенные системы

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

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

    Закон

    Мура (см. Главу 5 «Закон Мура: быстрые, дешевые вычисления и что они означают для менеджера») позволяет использовать встроенные системы, и эти системы могут создавать реальную стратегическую ценность. Компания Otis Elevator, подразделение United Technologies, использует встроенные системы в своих продуктах, чтобы предупреждать свои сервисные центры, когда лифты, эскалаторы и движущиеся дорожки компании нуждаются в обслуживании или ремонте.Это предупреждение дает Отису несколько ключевых преимуществ:

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

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

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

    • Операционная система (ОС) управляет аппаратным обеспечением компьютера и предоставляет общий набор команд для написания программ.
    • Большинство вычислительных устройств (серверные компьютеры корпоративного класса, ПК, телефоны, телевизионные приставки, видеоигры, автомобили, Mars Rover) имеют операционную систему.
    • Некоторые продукты используют операционные системы, предоставленные коммерческими фирмами, в то время как другие разрабатывают собственные операционные системы. Другие могут использовать альтернативы с открытым исходным кодом (см. Главу 10 «Программное обеспечение в Flux: частично облачно, а иногда и бесплатно»).
    • Встроенные системы — это компьютерные системы специального назначения, предназначенные для выполнения одной или нескольких специальных функций, и часто встраиваются в обычные продукты, такие как автомобили, кондиционеры и лифты.
    • Встроенные системы могут сделать продукты и услуги более эффективными, надежными, более функциональными, а также могут открыть новые возможности для бизнеса и создать или укрепить ресурсы для достижения конкурентного преимущества.

    Вопросы и упражнения

    1. Что делает операционная система? Зачем вам нужна операционная система? Как операционные системы облегчают работу программиста? Как операционные системы облегчают жизнь конечным пользователям?
    2. Как изменился рынок настольных, серверных и мобильных операционных систем за последние годы? Набирает ли популярность определенные продукты? Как вы думаете, почему это так?
    3. Какие операционные системы используются на ваших устройствах? На вашем персональном компьютере? Ваш мобильный телефон? Телевизионная приставка на телевизоре? Есть ли другие операционные системы, с которыми вы контактируете? Если вы не можете сказать, какая операционная система установлена ​​на каждом из этих устройств, попробуйте поискать в Интернете, чтобы это выяснить.
    4. Для вашего списка в предыдущем вопросе (и в той степени, в которой вы можете) нарисуйте «слоеный пирог» аппаратного / программного обеспечения для этих устройств.
    5. Для этого же списка, как вы думаете, производитель каждого устройства написал все программное обеспечение, которое вы используете на этих устройствах? Можете ли вы добавить или изменить программное обеспечение для всех этих устройств? Почему или почему нет? Каковы будут последствия для стоимости, безопасности, сложности, надежности, обновлений и обновлений, а также привлекательности каждого устройства?
    6. Некоторые банкоматы используют Windows.Почему производитель банкоматов решил строить свои системы на базе Windows? Почему он может захотеть этого избежать? Есть ли другие устройства, отличные от ПК, с которыми вы сталкивались, на которых работала какая-либо форма Windows?
    7. Что такое встроенные системы? Когда компании могут захотеть устанавливать программное обеспечение на чипы, а не на жесткий диск?
    8. Важно понимать, как технологии влияют на стратегию компании и конкурентную среду. Рассмотрим описание использования встроенных систем в лифте Отис. На какие части цепочки создания стоимости это влияет? Как? Рассмотрим «пять сил»: как система влияет на конкурентную среду фирмы? Являются ли эти системы источником конкурентного преимущества? Если нет, объясните, почему нет? Если да, то какие ресурсы для конкурентного преимущества могут создать такие встроенные системы?
    9. Можете ли вы вспомнить другие фирмы, которые могут или используют встраиваемые системы? Приведите примеры и перечислите виды выгод, которые они могут предложить фирмам и потребителям.
    10. Изучите Закон об американцах с ограниченными возможностями 1990 года (или выясните, есть ли в вашей стране аналогичный закон) и последствия этого закона для разработчиков программного обеспечения и операторов веб-сайтов. Были ли успешно предъявлены иски фирмам, когда к их программному обеспечению или веб-сайтам не могли получить доступ пользователи с физическими проблемами? Какие вопросы следует учитывать разработчикам, делая свои продукты более доступными? Каких практик они могут избежать?

    1 Операционная система iPhone и iPod touch является производным от операционной системы Apple Mac OS X.

    2 Данные для настольных, серверных и мобильных телефонов за 2009, 2008 и 2009 годы соответственно. Данные об операционных системах для настольных ПК из Market Share, «Доля рынка операционных систем», 2009 г., http://marketshare.hitslink.com/operating-system-market-share.aspx?qprid=10 данные мобильных телефонов из отчета AdMob Mobile Metrics Report, 2009 г. , http://metrics.admob.com.

    Basics 2: Общие сведения об операционных системах

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

    Посмотрите видео, чтобы узнать об операционных системах.

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

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

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

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

    Три наиболее распространенных операционных системы для персональных компьютеров: Microsoft Windows , Apple Mac OS X и Linux .

    Логотипы Windows, OS X и Linux

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

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

    Графический интерфейс Windows Графический интерфейс OS X

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

    Microsoft Windows

    Microsoft создала операционную систему Windows в середине 1980-х годов. За прошедшие годы появилось много разных версий Windows, но самыми популярными из них являются Windows 7 (выпущена в 2009 году), Windows Vista (2007) и Windows XP (2001).Windows поставляется с предустановленной на большинстве новых ПК, что делает ее самой популярной операционной системой в мире.

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

    Windows 7

    Посетите страницу Microsoft Windows 7, чтобы узнать больше об этой операционной системе.

    Ознакомьтесь с нашими руководствами по Windows 7 и Windows XP для получения дополнительной информации.

    Apple Mac OS X

    Mac OS — это линейка операционных систем, созданная Apple Inc., она предустановлена ​​на всех новых компьютерах Macintosh или Mac. Все последние версии известны как Mac OS X (произносится как Mac O-S Ten), а их конкретные названия версий — Lion (выпущен в 2011 году), Snow Leopard (2009) и Leopard (2007).Apple также предлагает версию под названием Mac OS X Server , предназначенную для работы на серверах.

    По данным StatCounter Global Stats, пользователи Mac OS X составляют 6,3% рынка операционных систем по состоянию на июнь 2011 года — намного меньше, чем процент пользователей Windows (более 90% ). Одна из причин этого в том, что компьютеры Apple обычно дороже. Однако многие люди предпочитают внешний вид Mac OS X.

    Mac OS X Lion

    Чтобы узнать больше о компьютерах Macintosh и OS X, ознакомьтесь с нашим руководством по Mac OS X Lion.

    Linux

    Linux (произносится LINN-ux) — это семейство операционных систем с открытым исходным кодом , что означает, что они могут быть изменены и распространены кем угодно по всему миру. Это сильно отличается от проприетарного программного обеспечения , такого как Windows, которое может быть изменено только компанией-владельцем (Microsoft). Преимущества Linux в том, что это бесплатно , и есть много различных дистрибутивов (или версий), из которых вы можете выбирать.Каждый дистрибутив имеет свой внешний вид, и наиболее популярными из них являются Ubuntu , Mint и Fedora .

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

    По данным StatCounter Global Stats, пользователи Linux составляют менее 1% рынка операционных систем по состоянию на июнь 2011 года.Однако большинство серверов работают под управлением Linux, поскольку его относительно легко настроить.

    Ubuntu Linux

    Чтобы узнать больше о различных дистрибутивах Linux, посетите веб-сайты Ubuntu, Mint и Fedora.

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

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

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

    Apple iOS работает на iPad Системное программное обеспечение

    № 3 (Функции операционной системы — часть 1) — Онлайн-обучение CLF

    Начальный этап: практика поиска Какие два типа пользовательского интерфейса операционной системы?

    Два типа пользовательского интерфейса операционной системы — графический интерфейс пользователя и интерфейс командной строки .

    Графический пользовательский интерфейс может быть основан на WIMP — что это значит?

    на основе WIMP означает, что графический интерфейс пользователя включает окна, значки, меню и указатели.

    Объясните, почему интерфейс командной строки не подходит для обычных пользователей? Интерфейсы командной строки

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

    Назовите два преимущества графических интерфейсов?

    1. Простота использования, особенно для новичка.2. Вам не нужно учить сложные команды.

    Назовите два преимущества интерфейсов командной строки?

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

    Сегодняшнее обучение: Операционная система: функции (что они делают?)

    Краткое напоминание о типах существующих операционных систем, некоторые из которых вы уже использовали:

    • ОС Android • Версии имеют такие псевдонимы, как Jelly Bean и Kit Kat

    • OS X (Apple MAC) • Версии имеют такие прозвища, как «Mountain Lion» и «Snow Leopard»

    • iOS (iPhone / iPad)

    • MS-DOS и Windows

    • Google Chrome OS (на базе Linux)

    • Linux

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

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

    Предоставлено craigndave

    Давайте резюмируем некоторые функции операционной системы, описанные в видео…..

    Функция многозадачности

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

    На компьютере также выполняется множество фоновых процессов.

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

    Функция управления памятью

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

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

    Функция управления периферией

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

    Операционная система должна управлять:

    • Получение ввода и отправка вывода
    • Копирование файлов с диска в основную память
    • Копирование файлов данных обратно во вторичное хранилище

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

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

    Функция управления драйверами устройств

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

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

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

    Операционные системы несут ответственность за «управление памятью», это означает….

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

    Операционные системы несут ответственность за «периферийное управление», это означает…..

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

    Драйверы устройств…

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

    А теперь пройди тест…

    https://bbc.in/3f1MgQV

    Дополнительная литература:

    https://bbc.in/2YhuHq4

    Современная операционная система — обзор

    Реализация CCM

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

    Таблица 7.3. Руководство по внедрению CCM

    33 K

    70 N

    9058 2 ptlen 9082 905 905 длина желаемого тега MAC
    Название проекта Название реализации Функция
    cipher Индекс в таблицы LTC для использования 128-битного шифра, делает CCM независимым от выбора шифра
    ключ Секретный ключ
    keylen Длина ключа в октетах
    uskey Ключ, запланированный ранее, используется для экономии времени за счет неиспользования расписания ключей
    9 нет CCM nonce
    noncelen Длина noncelen в октетах
    заголовок Заголовок или данные AAD
    headerlen
    headerlen168 905 908 905 Pt Обычный текст
    Q Длина открытого текста в октетах
    C ct Зашифрованный текст
    T tag Тег MAC

    Мы позволяем вызывающему абоненту планировать ключ до вызова.На практике это хорошая идея, поскольку она сокращает значительную часть циклов на вызов. Даже если вы не используете LibTomCrypt, вы должны предоставить или использовать этот стиль оптимизации в своем коде.

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

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

    . В этом случае MAXTAGLEN может быть больше 16, если они поддерживают более одного алгоритма.

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

    LibTomCrypt может «перегружать» функции — в данном случае CCM. Если указатель не равен NULL, вычисление выгружается на него автоматически. Таким образом, разработчик может воспользоваться ускорителями, не переписывая свое приложение. Технически это не является частью CCM, поэтому вы можете не смотреть на этот фрагмент, если хотите.

    Здесь мы вычисляем значение L ( q в проекте CCM). L было первоначальным именем этой переменной, поэтому мы использовали его здесь. Мы убеждаемся, что L соответствует как минимум 2 в соответствии со спецификацией CCM.

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

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

    Этот раздел кода создает значение B 0 , необходимое для фазы CBC-MAC CCM. Массив PAD содержит 16 байтов данных CBC для MAC, а CTRPAD, который мы увидим позже, содержит 16 байтов вывода CTR.

    Первый байт (строка 122) блока — это флаги. Мы устанавливаем флаг Adata на основе заголовка , кодируем длину тега путем деления taglen на два, и, наконец, длина длины открытого текста сохраняется.

    Затем одноразовый номер копируется в блок. Мы используем 16- L + 1 байтов одноразового номера, поскольку мы должны хранить флаги и L байтов значения длины открытого текста.

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

    Мы эффективно используем CBC-MAC с обнуленным IV, поэтому первое, что мы должны сделать, это зашифровать PAD. Зашифрованный текст теперь является IV для CBC-MAC остальной части заголовка и данных открытого текста.

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

    Кодирование длины данных заголовка зависит от размера данных заголовка.Если он меньше 65 280 байт, мы используем короткую двухбайтовую кодировку. В противном случае мы испускаем escape-последовательность OxFF FE, а затем четырехбайтовую кодировку. CCM поддерживает заголовки большего размера, но вряд ли вам когда-нибудь понадобится.

    Обратите внимание, что вместо XOR PAD (как IV) против другого буфера мы просто XOR длины в PAD. Это позволяет избежать двойной буферизации, которую нам пришлось бы использовать в противном случае.

    Этот цикл обрабатывает все данные заголовка. Мы не предоставляем никаких оптимизаций LTC_FAST, поскольку заголовки обычно пустые или очень короткие.Каждые 16 байтов данных заголовка мы шифруем PAD для правильной эмуляции CBC-MAC.

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

    Этот код создает начальный счетчик для режима шифрования CTR. Флаги содержат только длину открытого текста. Одноразовый номер копируется так же, как и для CBC-MAC, а остальная часть блока обнуляется.Байты после одноразового номера увеличиваются во время шифрования.

    При шифровании мы обрабатываем все полные 16-байтовые блоки открытого текста, которые у нас есть.

    Счетчик CTR имеет обратный порядок байтов и хранится в конце массива ctr. Этот код увеличивает его на единицу.

    Мы должны зашифровать счетчик CTR, прежде чем использовать его для шифрования открытого текста.

    Этот цикл выполняет XOR 16 байтов открытого текста против панели CBC-MAC, а затем создает 16 байтов зашифрованного текста с помощью XORing CTRPAD против открытого текста.Мы выполняем шифрование вторым (после CBC-MAC), поскольку мы позволяем открытому тексту и зашифрованному тексту указывать на один и тот же буфер.

    Шифрование панели CBC-MAC выполняет необходимую операцию MAC для этого 16-байтового блока открытого текста.

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

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

    Заканчиваем CBC-MAC, если остались байты. Как и при обработке заголовка, мы неявно дополняем нулями, шифруя PAD как есть. На этом этапе PAD теперь содержит значение CBC-MAC, но не тег CCM, поскольку нам все еще нужно его зашифровать.

    Pad CTR для тега CBC-MAC вычисляется путем обнуления последних L байтов счетчика CTR и шифрования его в CTRPAD.

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

    CCM позволяет использовать теги переменной длины от 4 до 16 байтов с шагом 2 байта. Мы шифруем и сохраняем тег CCM путем XOR тега CBC-MAC с последним зашифрованным счетчиком CTR.

    Этот блок обнуляет память в стеке, которая может считаться чувствительной. Мы надеемся, что стек не был переставлен на диск, но эта процедура не дает этой гарантии. При очистке памяти любые дальнейшие потенциальные утечки стека не будут передавать злоумышленнику ключи или промежуточные значения CBC-MAC.Мы выполняем эту операцию только в том случае, если пользователь запросил ее, определив макрос LTC_CLEAN_STACK.

    СОВЕТ

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

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

    В операционных системах, совместимых с POSIX, например, основанных на ядрах Linux и BSD, для облегчения блокировки был предоставлен набор функций, таких как mlock (), munlock (), mlockall () и т. Д.Физическая память в большинстве систем может быть дорогостоящей, поэтому вежливое и корректное приложение будет запрашивать блокировку как можно меньшего объема памяти. В большинстве случаев заблокированная память будет охватывать область, содержащую страниц памяти . В процессорах серии x86 размер страницы составляет четыре килобайта. Это означает, что вся заблокированная память фактически будет заблокирована в размере, кратном четырем килобайтам.

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

    После успешного завершения этой функции у пользователя теперь есть зашифрованный текст (или открытый текст в зависимости от направления) и тег CCM. Хотя функция может быть немного длинной, она красиво объединена в один вызов функции, что делает ее развертывание довольно тривиальным.

    Определение и значение операционной системы

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

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

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

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

    Настольные операционные системы

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

    • Microsoft Windows составляет самую большую долю операционных систем, используемых сегодня.Microsoft распространяет Windows на своей линейке устройств Surface, а также лицензирует программное обеспечение почти всем производителям ПК, включая Dell, HP, Lenovo, Asus и Acer.
    • macOS (ранее Mac OS X) — это операционная система, предназначенная исключительно для устройств Apple. Компания Apple, известная своей закрытой архитектурой, разработала macOS для работы исключительно на своей коллекции ноутбуков и настольных компьютеров Mac.
    • Linux — это операционная система с открытым исходным кодом, которая свободно распространяется для ряда аппаратных платформ.Семейство ОС Linux было разработано в 1990-х годах как производная от коммерческой операционной системы UNIX.

    Мобильные операционные системы

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

    • Apple, которая разработала отдельные операционные системы для каждого из своих мобильных устройств: iOS для iPhone, iPadOS и watchOS.Наряду с macOS, каждая из этих операционных систем использует iCloud для создания удобного взаимодействия с пользователем на всех устройствах.
    • Microsoft, которая включила поддержку планшетов в выпуск Windows 10 2015 года.
    • Google, чья операционная система Android доминирует на рынке планшетов и смартфонов. В линейке планшетов Amazon Fire используется адаптированная версия программного обеспечения Android под названием Fire OS, которая поддерживает большинство основных функций, но в большей степени ориентирована на сервисы Amazon, такие как Prime Video, Amazon Music, Kindle и Audible.

    Операционные системы реального времени

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

    Будущее операционных систем: простота

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

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

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

    Это не просто неприемлемо, это безумие. Никто не может эффективно работать в такой среде.Неудивительно, что «не могу найти свои чертовы данные!» в опросах постоянно появляется вопрос: «Что вас больше всего беспокоит на работе?» Неудивительно, что летом 2002 года Билл Гейтс сказал: «Сейчас файловое пространство на любом ПК — это помойка». Неудивительно, что годом ранее в выступлении на PC Expo я сказал, что «файловая система мертва — эта постоянная бюрократия, которая растет внутри всех наших компьютеров, как крабовая трава». (Гейтс и я, всего две горошины в обычной старой стручке.)

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

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

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

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

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

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

    Пользовательский интерфейс будет продолжать двигаться в том же направлении, в котором он двигался. В эпоху DOS 1980-х это было в основном одномерным: вы вводили командную строку, а операционная система вводила строки обратно. В Mac 1984 года и Windows 3.0 1990 года пользовательский интерфейс (UI) стал полностью двумерным.Пользовательский интерфейс следующего поколения будет трехмерным — не буквально (пока), а графически, в том смысле, что напечатанная скатерть — это двухмерное изображение, а «Вашингтон, пересекающий Делавэр» уходит в воображаемое пространство за нарисованной поверхностью. Экран компьютера больше не будет представлять собой стеклянную доску объявлений с прикрепленными к нему окнами и значками; это будет окно просмотра с «информационным ландшафтом» в смоделированном трехмерном изображении на другой стороне.

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

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

    Программные революции будут происходить так же, как и раньше, без необходимости выбросить старое программное обеспечение и данные и начать все сначала. Чтобы установить Unix, скажем, в 1976 году, вам нужно было сначала удалить старую операционную систему.К 1990 году вы положили Windows 3.0 как ковровое покрытие: DOS оставалась скрытой под ним. Грядущая революция в сфере информационного менеджмента будет таким же малотравматичным делом. Ваше новое программное обеспечение будет работать поверх Windows и ваших приложений Windows.

    Приближающаяся революция в области операционных систем и управления информацией — это не просто предположения. Предполагается, что «Longhorn» от Microsoft будет готов через два года, и его цель — решить проблему управления информацией. (Билл Гейтс, лето 2002 г .: «Единственный вопрос, который мы пытаемся решить с помощью Longhorn, — это« Где мои вещи? »») Другие компании уже предприняли шаги в этом направлении.Какая система победит, сказать не могу. Но будущее систем повествовательной информации — это вопрос маркетинга и принятия пользователями, а не технологический вызов. Программное обеспечение существует сегодня, и за определенным потоком повествования или за другим стоит будущее операционных систем.

    Дэвид Гелернтер — профессор информатики в Йельском университете и главный научный сотрудник Mirror Worlds Technologies Inc.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *