Структура операционной системы windows 7

Структура операционной системы windows 7

Возможности системы

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

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

· является истинно 32-разрядной, поддерживает вытесняющую многозадачность;

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

· поддерживает работу с виртуальной памятью;

· является полностью реентерабельной;

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

· хорошо масштабируется в системах с симметричной мультипроцессорной обработкой;

· является распределенной вычислительной платформой, способной выступать в роли как клиента сети, так и сервера;

· защищена как от внутренних сбоев, так и от внешних деструктивных действий. У приложений нет возможности нарушить работу операционной системы или других приложений;

· совместима, то есть, ее пользовательский интерфейс и API совместимы с предыдущими версиями Windows и MS-DOS. Она также умеет взаимодействовать с другими системами вроде UNIX, OS/2 и NetWare;

· обладает высокой производительностью независимо от аппаратной платформы;

· обеспечивает простоту адаптации к глобальному рынку за счет поддержки Unicode;

· поддерживает многопоточность и объектную модель.

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

Общее описание структуры системы

Архитектура ОС Windows претерпела ряд изменений в процессе эволюции.

Первые версии системы имели микроядерный дизайн, основанный на микроядре Mach, которое было разработано в университете Карнеги-Меллона.

Архитектура более поздних версий системы микроядерной уже не является.

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

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

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

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

Сегодня микроядро ОС Windows слишком велико (более 1 Мб), чтобы носить приставку "микро".

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

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

Высокая модульность и гибкость первых версий Windows NT позволила успешно перенести систему на такие отличные от Intel платформы, как Alpha (корпорация DEC), Power PC (IBM) и MIPS (Silicon Graphic). Более поздние версии ограничиваются поддержкой архитектуры Intel x86.

Упрощенная схема архитектуры, ориентированная на выполнение Win32-приложений, показана на рис. 1.4.

Рис. 1.4. Упрощенная архитектурная схема ОС Windows

ОС Windows состоит из компонентов работаюших в режиме:

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

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

Ядром обычно называют все компоненты ОС, работающие в привилегированном режиме работы процессора или в режиме ядра. Корпорация Microsoft называет ядром (kernel) компонент, находящийся в невыгружаемой памяти и содержащий низкоуровневые функции операционной системы, такие, как диспетчеризация прерываний и исключений, планирование потоков и др. Оно также предоставляет набор процедур и базовых объектов, применяемых компонентами высших уровней.

Ядро и HAL являются аппаратно-зависимыми и написаны на языках Си и ассемблера.

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

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

Читайте также:  Звонки по wifi samsung

Операционная система может размещаться в постоянной памяти компьютера или загружается в оперативную память с диска при включении компьютера. Операционные системы, загружаемые с дисков, называются дисковыми операционными системами (DOS -Disk Operating System). К ним относятся MS DOS, Windows, Unix, OS/2.

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

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

• обеспечение диалога между пользователем и компьютером;

• распределение ресурсов компьютера между пользователями;

• поддержка режима коллективного использования компьютера;

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

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

К операционным системам нового поколения относятся: Windows XP; Windows NT; Windows 7; Windows Vista; операционные системы семейства 0S2, UNIX, LINUX, MacOS.

Операционная система Unix создана в корпорации Bell Laboratory в 1971 году Денисом Ритчи и Кеном Томсоном, авторами и разработчиками языка программирования Си. Операционные системы семейства Windows разрабатываются фирмой Microsoft. Операционная система MacOS выпускается фирмой Apple для компьютеров типа Macintosh. Операционная система DOS выпускалась фирмой Microsoft с 1981 года.

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

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

Требования к операционной системе.

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

переносимость — означает обеспечение возможности переноса операционной системы с одной аппаратной платформы на другую;

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

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

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

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

1. Ядро – переводит команды с языка программ на язык «машинных кодов», понятный компьютеру.

2. Драйверы – программы, управляющие устройствами.

3. Интерфейс – оболочка, с помощью которой пользователь общается с компьютером.

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

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

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

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

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

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

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

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

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

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

Читайте также:  Как сделать кодирование хаффмана

— загрузка программ в оперативную память и их выполнение;

— стандартизованный доступ к периферийным устройствам (устройства ввода-вывода);

— управление оперативной памятью (распределение между процессами, организация виртуальной памяти);

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

— обеспечение пользовательского интерфейса;

— сетевые операции, поддержка стека сетевых протоколов.

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

— параллельное или псевдопараллельное выполнение задач (многозадачность);

— эффективное распределение ресурсов вычислительной системы между процессами;

— разграничение доступа различных процессов к ресурсам;

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

— взаимодействие между процессами: обмен данными, взаимная синхронизация;

— защита самой системы, а также пользовательских данных и программ от действий пользователей (злонамеренных или по незнанию) или приложений;

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

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

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

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

Затем BIOS начитает поиск программы-загрузчика операционной системы. Программа-загрузчик помещается в ОЗУ и начинается процесс загрузки файлов операционной системы.

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

Диск, на котором находятся файлы операционной системы и с которого происходит загрузка, называют системным. Если системные диски в компьютере отсутствуют, на экране монитора появляется сообщение "Non system disk" и компьютер «зависает», т. е. загрузка операционной системы прекращается и компьютер остается неработоспособным.

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

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

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

Для более полного понимания роли операционной системы рассмотрим составные компоненты любой вычислительной системы (рис.1.1).

Все компоненты можно разделить на два больших класса – программы или программное обеспечение ( ПО , 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 ( интерфейс прикладного программирования).

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

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

К основным функциям, выполняемым операционными системами, можно отнести:

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

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

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

Современные процессоры имеют минимум два режима работы – привилегированный (supervisor mode) и пользовательский (user mode).

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

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

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

Основным компонентом операционной системы является ядро (kernel). Функции ядра могут существенно отличаться в разных системах; но во всех системах ядро работает в привилегированном режиме (который часто называется режим ядра, kernel mode).

Термин "ядро" также используется в разных смыслах. Например, в Windows термин "ядро" (NTOS kernel) обозначает совокупность двух компонентов – исполнительной системы (executive layer) и собственно ядра (kernel layer) [12].

Существует два основных вида ядер – монолитные ядра (monolithic kernel) и микроядра (microkernel). В монолитном ядре реализуются все основные функции операционной системы, и оно является, по сути, единой программой, представляющей собой совокупность процедур [6]. В микроядре остается лишь минимум функций, который должен быть реализован в привилегированном режиме: планирование потоков, обработка прерываний, межпроцессное взаимодействие. Остальные функции операционной системы по управлению приложениями, памятью, безопасностью и пр. реализуются в виде отдельных модулей в пользовательском режиме.

Ядра, которые занимают промежуточные положение между монолитными и микроядрами, называют гибридными (hybrid kernel).

Примеры различных типов ядер:

  • монолитное ядро – MS-DOS, Linux, FreeBSD;
  • микроядро – Mach, Symbian, MINIX 3;
  • гибридное ядро – NetWare, BeOS, Syllable.

Обсуждение того, к какому типу относится ядро Windows NT, приведено в [5; 2]. В [2] говорится о том, что Windows NT имеет монолитное ядро, однако, поскольку в Windows NT имеется несколько ключевых компонентов, работающих в пользовательском режиме (например, подсистемы окружения и системные процессы – см. Лекцию 4 "Архитектура Windows"), то относить 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).

Классификация операционных систем

Классификацию операционных систем можно осуществлять несколькими способами.

  1. По способу организации вычислений:
    • системы пакетной обработки (batch processing operating systems) – целью является выполнение максимального количества вычислительных задач за единицу времени; при этом из нескольких задач формируется пакет, который обрабатывается системой;
    • системы разделения времени (time-sharing operating systems) – целью является возможность одновременного использования одного компьютера несколькими пользователями; реализуется посредством поочередного предоставления каждому пользователю интервала процессорного времени;
    • системы реального времени (real-time operating systems) – целью является выполнение каждой задачи за строго определённый для данной задачи интервал времени.

    Требования к операционным системам

    Основное требование, предъявляемое к современным операционным системам – выполнение функций, перечисленных выше в параграфе "Функции операционных систем". Кроме этого очевидного требования существуют другие, часто не менее важные [3]:

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

    Резюме

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

    В следующей лекции будет представлен обзор операционных систем Microsoft Windows.

    Ссылка на основную публикацию
    Спутник вылетел за пределы солнечной системы
    «Во́яджер» (англ. voyager , от фр. voyageur — «путешественник») — название двух американских космических аппаратов, запущенных в 1977 году, а...
    Снять пароль с роутера tp link
    Домашняя беспроводная сеть Wi-Fi должна быть защищена паролем. Но ведь бывают разные случаи, скажете вы. Например, вы хотите пригласить друзей...
    Снять пароль с макроса excel
    Здравствуйте, друзья! Последние дни бился над такой задачей: Имеется файл .xls, в нем макрос на VBA, защищенный паролем. Файл создается...
    Спутниковые системы связи курсовая работа
    В данной курсовой работе рассмотрены история, особенности и перспективы развития спутниковой сети связи. Новейшие технологии спутниковой связи предлагают действенные технико-...
    Adblock detector