- •Unit 3. Operating System Software
- •3.1 Structure
- •3.1.1 Layers of Software
- •Layers and Process Management
- •Encapsulation and Abstraction
- •The Role of the bios
- •Changing bios Settings
- •3.1.3 Process Control
- •3.2 Device Management and Configuration
- •Interrupt Priority and Nested Interrupts
- •Traps and Faults
- •Changing a Driver's Configuration
- •Managing Memory
- •Relocation
- •Virtual Memory
- •3.3.2 File and Printer Sharing
- •Printers
- •Файловые системы
- •3.4.1 File Organization
- •Folders
- •Shortcuts
- •File Names and Types
Encapsulation and Abstraction
Инкапсуляция означает, что каждый слой должен только ограниченное количество знаний, чтобы делать свою работу , и ни один из других слоев не имеет доступа к этой информации. Фермер не знает, чтопшеница будет использована для . Пекарня не знает, как собирали пшеницу . И , вы даже не должны знать, что сухарики содержат пшеницу ! В мире программного обеспечения , инкапсуляция означает, что ваш текстовый редактор не нужно знать, как управлять дисками для того, чтобы иметь возможность открывать и сохранять файлы , есть уровни программного обеспечения под ним , которые обрабатывают эти детали .
Однако, еслислой были полностью герметичны , что это будет не в состоянии общаться со слоями сверху и снизу. Для того, чтобы там быть некоторые обмен информацией , но не слишком много , дизайнер из слоя определяет абстракцию , что слой обещает поддержать . Пекарня поддерживает абстракцию под названием" Порядок гренки ", когда клиент может подать заказ на X фунтов гренками и пекарня будет реагировать , производя гренки и доставки их . Внутри пекарни , всякие вещи идут , что клиент не видит . Например, пекарня может иметь большое печь и немного печь , и менеджер должен решить , какой из них использовать , чтобы заполнить каждый заказ . Иногда это может иметь смысл , чтобы испечь два небольших партий гренками вместо одной большой партии. Иногда один или другой печи закрыт на техническое обслуживание . Эти детали скрыты от клиента , в области компьютерных наук терминологии мы говорим, что информация заключена . Кроме того, даже если клиент каким-то образом знал, что есть две печи, они не могли указать, какие печи они хотели быть использованы для получения их порядок, потому что нет такого места на форму заказа , указывая, что . С точки зрения информатики, мы говорим, что гренками заказе абстракции не поддерживает печи выбор.
Существование четко определенных абстракций на каждом уровне означает, что одна реализация может быть заменен на другой без влияния на выше и ниже слоев. Многие пекарни продают гренками . Если все они принимают ту же форму заказа, можно менять поставщиков по желанию. На компьютере можно иметь несколько реализаций программного компонента и перейти от одного к другому . Например, веб-обозреватель призывает вспомогательную программу , когда он должен играть звуковой файл или видеоклип . Есть несколько программ , которые могут выполнять эту функцию. Все, что вам нужно сделать, это указать браузеру, какой игрок в использовании. Эта изоляция функциональности означает, что если новая, усовершенствованная игрок становится доступен, вы можете переключиться на том, что один , вы не должны получить совершенно новый браузер . Инкапсуляция означает, что каждый слой должен только ограниченное количество знаний, чтобы делать свою работу , и ни один из других слоев не имеет доступа к этой информации. Фермер не знает, чтопшеница будет использована для . Пекарня не знает, как собирали пшеницу . И , вы даже не должны знать, что сухарики содержат пшеницу ! В мире программного обеспечения , инкапсуляция означает, что ваш текстовый редактор не нужно знать, как управлять дисками для того, чтобы иметь возможность открывать и сохранять файлы , есть уровни программного обеспечения под ним , которые обрабатывают эти детали .
Однако, еслислой были полностью герметичны , что это будет не в состоянии общаться со слоями сверху и снизу. Для того, чтобы там быть некоторые обмен информацией , но не слишком много , дизайнер из слоя определяет абстракцию , что слой обещает поддержать . Пекарня поддерживает абстракцию под названием" Порядок гренки ", когда клиент может подать заказ на X фунтов гренками и пекарня будет реагировать , производя гренки и доставки их . Внутри пекарни , всякие вещи идут , что клиент не видит . Например, пекарня может иметь большое печь и немного печь , и менеджер должен решить , какой из них использовать , чтобы заполнить каждый заказ . Иногда это может иметь смысл , чтобы испечь два небольших партий гренками вместо одной большой партии. Иногда один или другой печи закрыт на техническое обслуживание . Эти детали скрыты от клиента , в области компьютерных наук терминологии мы говорим, что информация заключена . Кроме того, даже если клиент каким-то образом знал, что есть две печи, они не могли указать, какие печи они хотели быть использованы для получения их порядок, потому что нет такого места на форму заказа , указывая, что . С точки зрения информатики, мы говорим, что гренками заказе абстракции не поддерживает печи выбор.
Существование четко определенных абстракций на каждом уровне означает, что одна реализация может быть заменен на другой без влияния на выше и ниже слоев. Многие пекарни продают гренками . Если все они принимают ту же форму заказа, можно менять поставщиков по желанию. На компьютере можно иметь несколько реализаций программного компонента и перейти от одного к другому . Например, веб-обозреватель призывает вспомогательную программу , когда он должен играть звуковой файл или видеоклип . Есть несколько программ , которые могут выполнять эту функцию. Все, что вам нужно сделать, это указать браузеру, какой игрок в использовании. Эта изоляция функциональности означает, что если новая, усовершенствованная игрок становится доступен, вы можете переключиться на том, что один , вы не должны получить совершенно новый браузер .Layers of Software
Let us now consider the layers of software that make up a computer system:
User-Written Scripts or Macros |
User Interface |
Application |
Run-time Library |
Application Program Interface |
Operating System |
Kernel |
Device Drivers |
BIOS |
(Hardware) |
Table 1 Layers of software
We will go through these levels from the bottom up:
Hardware Оборудование для наших целей , является низкий уровень компьютере : физические компоненты , из которых он построен . На самом деле , есть несколько уровней аппаратных , так как компьютер , состоящие из печатных плат ,плата содержит несколько чипов и чипов состоят из цепей и цепей строятся из транзисторов . Но , это устройство , как предполагается, о программном обеспечении , так что мы будем игнорировать эти детали.
В BIOS или Basic Input / Output System , является наиболее фундаментальный уровень программного обеспечения. Она имеет дело непосредственно с сигналами , которые контролируют каждый аппаратный компонент . Большая часть его работы выполняется , когда компьютер включается в первый раз .
Device drivers Драйверы устройств являются вспомогательные программы операционная система использует для связи с конкретной моделью устройства. Чтобы добавить новое оборудование к системе , соответствующие драйверы устройств должны быть установлены . ( Периферийные компоненты часто поставляются с флоппи- диска, содержащего необходимые драйверы. ) Драйвер устройства для жесткого диска , например, знает, сколько треки на диске и какие команды для отправки на диске для перемещения руку, чтобы конкретный отслеживать , а затем считывать или записывать данные . Преимущество этой конструкции заключается в том, что продавец операционной системы не должны быть ответственными за поддержку каждое устройство когда-либо изобретенных , или могут быть изобретены в будущем. Производитель устройства поставляет драйвера , и, пока водитель следующим установленные соглашения для общения с операционной системой , устройство может быть удобным .
Ядро является сердцем операционной системы и выполняет функции , которые наиболее важны для держать все работает. Это управляет памятью , решает, какие задачи следующего запуска и обрабатывает различные типы прерываний, которые могут произойти. Ядро должно остаться в оперативной памяти компьютера в любое время , и из-за ее особого характера , он должен работать без некоторых защитных механизмов , которые охраняют против неисправных инструкций или доступ незаконным памяти . Таким образом, она хранится как можно меньше .
Оставшиеся слой операционной системы гораздо больше, чем ядро. Он реализует все другие функцииоперационной системы , как ожидается, для выполнения . Например, она включает в себя файловую систему для управления папки и файлы на диске . Обратитесь к 3,4 файловых систем для более детального обсуждения данного материала. Он общается с ядром , когда ему необходимо выполнять основные действия, такие как инициирование операции передачи данных к периферии.
•интерфейс прикладного программирования , или API , является слой, где пользовательские программы (приложения ) обеспечивают связь с операционной системой. Например , предположим, что приложение Веб-браузер решает, что требуется больше памяти для того, чтобы показать большой файл образа . Отвечает операционная система для отслеживания , какие программы с помощью которых участки памяти в любой момент времени . Эта информация заключена в операционной системе ;программа ничего о том, как организована информация не знаю . Он не должен. Операционная система определяет абстракцию для управления памятью , известный как вызова API . Все приложения разработчик должен знать, какой вызова API использовать, чтобы попросить больше. Если новая версия операционной системы приходит, который использует другой способ отслеживать памяти , прикладная программа будет продолжать работать нормально , пока вызов API остается прежним.
времени выполнения библиотеки являются набором программных процедур, которые прикладные программы положиться. Например, если вы пишете приложение на языке C , чтобы открыть файл и прочитать некоторые данные из него , вы будете использовать два встроенных функций называемые Еореп и fscanf . Эти функции выбираются из библиотеки подпрограммы ввода / вывода называется STDIO , который может быть использован любой программы C . Они сделают соответствующий API вызовы , чтобы получить операционную систему , чтобы делать то, что вам нужно. Хорошая вещь о STDIO абстракции в том, что ваша программа не зависит от конкретного набора звонков API , так что вы можете запустить его на любой компьютер, имеющий компилятор языка С и реализацию библиотека времени выполнения . Большинство программ опираться на подпрограмм из нескольких библиотек .
прикладной уровень , где вы найдетепроцедуры, которые делают реальную работуприложений было создано.
Пользовательский интерфейс слой отвечает за связи между приложением и пользователем . Это , как правило, GUI ( графический интерфейс пользователя) состоит из кнопок и выпадающие меню . Предположим, пользователь хочет, чтобы приложение для открытияфайла. Это требует немного диалоге, который обеспечивается через GUI. Во-первых, в меню Файл , пользователь clicksOpen .... Появится диалоговое окно Открыть и предлагает пользователю выбрать файл. После того как пользователь выбрал файл , графический интерфейс передает запрос и имя файла приложения, которое открывает и обрабатывает файл .
Сценарии или макросы процедуры , что многие приложения позволяют пользователям создавать из множества приложения из встроенных команд . Сценарии и макросы позволяют пользователям автоматизировать последовательности действий , которые они выполняют часто. Например,Microsoft Excel макрос может открыть файл, скопировать кучу цифр из файла в таблицу, выполнить некоторые расчеты на них, и записать результат в другой файл. Если эти расчеты обновлять значения портфеля акций пользователя, он или она захочет выполнять вычисления каждый день - так было бы целесообразно для них , чтобы собрать расчеты в сценарий, который может быть выполнен с помощью нескольких нажатий клавиш. Таким образом, пользователь может забыть о деталях. Сценарии расположены выше уровня приложения в программном обеспечении иерархии, поскольку они построены из уровня приложений команд.
Компьютерной промышленности в настоящее время основывается на специалистов в каждом из уровней , перечисленных выше. Некоторые люди делают свое жизненное обеспечение записи BIOS , а другие сосредоточиться на улучшении технологии GUI . Но , наибольшее количество программистов находится на уровне приложений , потому что люди хотят использовать компьютеры для очень многих различных задач.
________________________________________
1 гренками небольшие кубы поджаренного хлеба , которые популярны в салатах в американо- салат , гдекак правило, будет листья салата , ломтики помидора (иликрошечные помидоры черри ), а иногда кусочками другие овощи, как огурцы или зеленый перец . В гренки пойти на вершине!
3.1.2 The BIOS: Life at the Bottom
