Файл: Введение в операционные системы Операционная система.doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 07.11.2023
Просмотров: 42
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Введение в операционные системы
Операционная система (operating system) – комплекс программ, предоставляющий пользователю удобную среду для работы с компьютерным оборудованием.
Операционная система позволяет запускать пользовательские программы; управляет всеми ресурсами компьютерной системы – процессором (процессорами), оперативной памятью, устройствами ввода вывода; обеспечивает долговременное хранение данных в виде файлов на устройствах внешней памяти; предоставляет доступ к компьютерным сетям.
Компоненты вычислительной системы
Все компоненты можно разделить на два больших класса – программы или программное обеспечение (ПО, software) и оборудование или аппаратное обеспечение (hardware). Программное обеспечение делится на прикладное, инструментальное и системное. Рассмотрим кратко каждый вид ПО.
Цель создания вычислительной системы – решение задач пользователя. Для решения определенного круга задач создается прикладная программа (приложение, application). Примерами прикладных программ являются текстовые редакторы и процессоры (Блокнот, Microsoft Word), графические редакторы (Paint, Microsoft Visio), электронные таблицы (Microsoft Excel), системы управления базами данных (Microsoft Access, Microsoft SQL Server), браузеры (Internet Explorer) и т. п. Все множество прикладных программ называется прикладным программным обеспечением (application software).
Создается программное обеспечение при помощи разнообразных средств программирования (среды разработки, компиляторы, отладчики и т. д.), совокупность которых называется инструментальным программным обеспечением. Представителем инструментального ПО является среда разработки Microsoft Visual Studio.
Основным видом системного программного обеспечения являются операционные системы. Их основная задача – обеспечить интерфейс (способ взаимодействия) между пользователем и приложениями с одной стороны, и аппаратным обеспечением с другой. К системному ПО относятся также системные утилиты – программы, которые выполняют строго определенную функцию по обслуживанию вычислительной системы, например, диагностируют состояние системы, выполняют дефрагментацию файлов на диске, осуществляют сжатие (архивирование) данных. Утилиты могут входить в состав операционной системы.
Взаимодействие всех программ с операционной системой осуществляется при помощи системных вызовов (system calls) – запросов программ на выполнение операционной системой необходимых действий. Набор системных вызовов образует API – Application Programming Interface (интерфейс прикладного программирования).
Далее рассмотрим, какие функции должны выполнять современные операционные системы.
Функции операционной системы
К основным функциям, выполняемым операционными системами, можно отнести:
-
обеспечение выполнения программ – загрузка программ в память, предоставление программам процессорного времени, обработка системных вызовов; -
управление оперативной памятью – эффективное выделение памяти программам, учет свободной и занятой памяти; -
управление внешней памятью – поддержка различных файловых систем; -
управление вводом-выводом – обеспечение работы с различными периферийными устройствами; -
предоставление пользовательского интерфейса; -
обеспечение безопасности – защита информации и других ресурсов системы от несанкционированного использования; -
организация сетевого взаимодействия.
Структура операционной системы
Перед изучением структуры операционных систем следует рассмотреть режимы работы процессоров.
Современные процессоры имеют минимум два режима работы – привилегированный (supervisor mode) и пользовательский (user mode).
Отличие между ними заключается в том, что в пользовательском режиме недоступны команды процессора, связанные с управлением аппаратным обеспечением, защитой оперативной памяти, переключением режимов работы процессора. В привилегированном режиме процессор может выполнять все возможные команды.
Приложения, выполняемые в пользовательском режиме, не могут напрямую обращаться к адресным пространствам друг друга – только посредством системных вызовов.
Все компоненты операционной системы можно разделить на две группы – работающие в привилегированном режиме и работающие в пользовательском режиме, причем состав этих групп меняется от системы к системе.
Основным компонентом операционной системы является ядро (kernel). Функции ядра могут существенно отличаться в разных системах; но во всех системах ядро работает в привилегированном режиме (который часто называется режим ядра, kernel mode).
Термин "ядро" также используется в разных смыслах. Например, в Windows термин "ядро" (NTOS kernel) обозначает совокупность двух компонентов – исполнительной системы (executive layer) и собственно ядра (kernel layer).
Существует два основных вида ядер – монолитные ядра (monolithic kernel) и микроядра (microkernel). В монолитном ядре реализуются все основные функции операционной системы, и оно является, по сути, единой программой, представляющей собой совокупность процедур. В микроядре остается лишь минимум функций, который должен быть реализован в привилегированном режиме: планирование потоков, обработка прерываний, межпроцессное взаимодействие. Остальные функции операционной системы по управлению приложениями, памятью, безопасностью и пр. реализуются в виде отдельных модулей в пользовательском режиме.
Ядра, которые занимают промежуточные положение между монолитными и микроядрами, называют гибридными (hybrid kernel).
Примеры различных типов ядер:
-
монолитное ядро – MS-DOS, Linux, FreeBSD; -
микроядро – Mach, Symbian, MINIX 3; -
гибридное ядро – NetWare, BeOS, Syllable.
Обсуждение того, к какому типу относится ядро Windows NT.
Кроме ядра в привилегированном режиме (в большинстве операционных систем) работают драйверы (driver) – программные модули, управляющие устройствами.
В состав операционной системы также входят:
-
системные библиотеки (system DLL – Dynamic Link Library, динамически подключаемая библиотека), преобразующие системные вызовы приложений в системные вызовы ядра; -
пользовательские оболочки (shell), предоставляющие пользователю интерфейс – удобный способ работы с операционной системой.
Пользовательские оболочки реализуют один из двух основных видов пользовательского интерфейса:
-
текстовый интерфейс (Text User Interface, TUI), другие названия – консольный интерфейс (Console User Interface, CUI), интерфейс командной строки (Command Line Interface, CLI); -
графический интерфейс (Graphic User Interface, GUI).
Пример реализации текстового интерфейса в Windows – интерпретатор командной строки cmd.exe; пример графического интерфейса – Проводник Windows (explorer.exe).
Классификация операционных систем
Классификацию операционных систем можно осуществлять несколькими способами.
-
По способу организации вычислений:
-
системы пакетной обработки (batch processing operating systems) – целью является выполнение максимального количества вычислительных задач за единицу времени; при этом из нескольких задач формируется пакет, который обрабатывается системой; -
системы разделения времени (time-sharing operating systems) – целью является возможность одновременного использования одного компьютера несколькими пользователями; реализуется посредством поочередного предоставления каждому пользователю интервала процессорного времени; -
системы реального времени (real-time operating systems) – целью является выполнение каждой задачи за строго определённый для данной задачи интервал времени.
По типу ядра:
-
системы с монолитным ядром (monolithic operating systems); -
системы с микроядром (microkernel operating systems); -
системы с гибридным ядром (hybrid operating systems).
По количеству одновременно решаемых задач:
-
однозадачные (single-tasking operating systems); -
многозадачные (multitasking operating systems).
По количеству одновременно работающих пользователей:
-
однопользовательские (single-user operating systems); -
многопользовательские (multi-user operating systems).
По количеству поддерживаемых процессоров:
-
однопроцессорные (uniprocessor operating systems); -
многопроцессорные (multiprocessor operating systems).
По поддержке сети:
-
локальные (local operating systems) – автономные системы, не предназначенные для работы в компьютерной сети; -
сетевые (network operating systems) – системы, имеющие компоненты, позволяющие работать с компьютерными сетями.
По роли в сетевом взаимодействии:
-
серверные (server operating systems) – операционные системы, предоставляющие доступ к ресурсам сети и управляющие сетевой инфраструктурой; -
клиентские (client operating systems) – операционные системы, которые могут получать доступ к ресурсам сети.
По типу лицензии:
-
открытые (open-source operating systems) – операционные системы с открытым исходным кодом, доступным для изучения и изменения; -
проприетарные (proprietary operating systems) – операционные системы, которые имеют конкретного правообладателя; обычно поставляются с закрытым исходным кодом.
По области применения:
-
операционные системы мэйнфреймов – больших компьютеров (mainframe operating systems); -
операционные системы серверов (server operating systems); -
операционные системы персональных компьютеров (personal computer operating systems); -
операционные системы мобильных устройств (mobile operating systems); -
встроенные операционные системы (embedded operating systems); -
операционные системы маршрутизаторов (router operating systems).
Требования к операционным системам
Основное требование, предъявляемое к современным операционным системам – выполнение функций, перечисленных выше в параграфе "Функции операционных систем". Кроме этого очевидного требования существуют другие, часто не менее важные:
-
расширяемость – возможность приобретения системой новых функций в процессе эволюции; часто реализуется за счет добавления новых модулей; -
переносимость – возможность переноса операционной системы на другую аппаратную платформу с минимальными изменениями; -
совместимость – способность совместной работы; может иметь место совместимость новой версии операционной системы с приложениями, написанными для старой версии, или совместимость разных операционных систем в том смысле, что приложения для одной из этих систем можно запускать на другой и наоборот; -
надежность – вероятность безотказной работы системы; -
производительность – способность обеспечивать приемлемые время решения задач и время реакции системы.
Информатика и информация
Основные понятия информации
Большинство ученых в наши дни отказываются от попыток дать строгое определение информации и считают, что информацию следует рассматривать как первичное, неопределимое понятие подобно множества в математике. Некоторые авторы учебников предлагают следующие определения информации:
Информация – это знания или сведения о ком-либо или о чем-либо.
Информация – это сведения, которые можно собирать, хранить, передавать, обрабатывать, использовать.
Информатика – наука об информации
или
– это наука о структуре и свойствах информации, способах сбора, обработки и передачи информации
или
– информатика, изучает технологию сбора, хранения и переработки информации, а компьютер основной инструмент в этой технологии.
Термин информация происходит от латинского слова informatio, что означает сведения, разъяснения, изложение. В настоящее время наука пытается найти общие свойства и закономерности, присущие многогранному понятию информация, но пока это понятие во многом остается интуитивным и получает различные смысловые наполнения в различных отраслях человеческой деятельности:
-
в быту информацией называют любые данные, сведения, знания, которые кого-либо интересуют. Например, сообщение о каких-либо событиях, о чьей-либо деятельности и т.п.; -
в технике под информацией понимают сообщения, передаваемые в форме знаков или сигналов (в этом случае есть источник сообщений, получатель (приемник) сообщений, канал связи); -
в кибернетике под информацией понимают ту часть знаний, которая используется для ориентирования, активного действия, управления, т.е. в целях сохранения, совершенствования, развития системы; -
в теории информации под информацией понимают сведения об объектах и явлениях окружающей среды, их параметрах, свойствах и состоянии, которые уменьшают имеющуюся о них степень неопределенности, неполноты знаний.
Информация – это отражение внешнего мира с помощью знаков или сигналов.
Информационная ценность сообщения заключается в новых сведениях, которые в нем содержатся (в уменьшении незнания).
Свойства информации:
-
полнота — свойство информации исчерпывающе (для данного потребителя) характеризовать отображаемый объект или процесс; -
актуальность— способность информации соответствовать нуждам потребителя в нужный момент времени; -
достоверность — свойство информации не иметь скрытых ошибок. Достоверная информация со временем может стать недостоверной, если устареет и перестанет отражать истинное положение дел; -
доступность — свойство информации, характеризующее возможность ее получения данным потребителем; -
релевантность — способность информации соответствовать нуждам (запросам) потребителя; -
защищенность — свойство, характеризующее невозможность несанкционированного использования или изменения информации; -
эргономичность — свойство, характеризующее удобство формы или объема информации с точки зрения данного потребителя.