русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

ШК- Шина Кэш


Дата добавления: 2013-12-23; просмотров: 958; Нарушение авторских прав


УВВ

ОС взаимодействует с УВВ как с ресурсами. УВВ тоже тесно взаимодействуют с ОС. УВВ обычно состоят из контроллера и самого устройства.

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

Следующей частью является само устройство. Устройства имеют достаточно простые интерфейсы, потому что их возможности невелики и их нужно привести к единому стандарту, который необходим, чтобы каждый IDE контроллер диска (Integrated Drive Electronics - встроенный интерфейс накопителя) мог управлять любым IDE диском. IDE интерфейс является стандартным для дисков на компьютерах с ЦП Pentium, а также на других компьютерах. Т.к. настоящий интерфейс устройства скрыт с помощью контроллера, ОС видит только интерфейс контроллера, который может сильно отличаться от интерфейса самого устройства.

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

1) заново скомпоновать ядро вместе с новым драйвером и затем перезагрузить ОС (так работает множество ОС Unix);

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

3) ОС может принимать новые драйверы, не прерывая работы, и оперативно устанавливать их, не нуждаясь в перезагрузке. Этот способ становится все более и более распространенным. Такие устройства как шины USB, IEEE 1394 всегда нуждаются в динамически загружаемых драйверах.



Для связи с каждым контроллером существует небольшое количество регистров. Например, минимальный контроллер диска может иметь регистр для определения адреса на диске, адреса в памяти, номера сектора и направления операции (чтение или запись). Чтобы активизировать контроллер, драйвер получает команду от ОС, затем транслирует ее в величины, подходящие для записи в регистры устройства. На некоторых компьютерах отображаются в адресное пространство ОС, поэтому их можно читать или записывать как обычные слова в памяти, т.е. на таких машинах не нужны специальные команды I/O. На других компьютерах регистры устройств располагаются в специальных портах I/O, и каждый регистр имеет свой адрес порта. На этих машинах в режиме ядра доступны команды IN и OUT. Они позволяют драйверам считывать и записывать регистры. Первая схема устраняет необходимость специальных команд I/O, но использует некоторое количество адресного пространства. Вторая схема не затрагивает адресного пространства, но требует наличия специальных команд. Обе схемы широко используются.

I/O данных можно осуществлять тремя различными способами.

1. Простейший способ: пользовательская программа выдает системный запрос, который ядро транслирует в вызов процедуры, соответствующей драйверу, затем драйвер начинает процесс I/O. В этом время он выполняет короткий программный цикл, постоянно опрашивая устройство, с которым он работает (есть бит, указывающий занятость устройства). При завершении операций I/O драйвер помещает данные туда, куда требуется, и возвращается в исходное состояние. Затем ОС возвращает управление программе, осуществлявшей вызов. Этот метод - ожидание готовности (активное ожидание). Он имеет один недостаток: ЦП должен опрашивать устройство, пока оно не завершит работу.

2. Драйвер запускает устройство и просит его выдать прерывания по окончании I/O; после этого драйвер возвращает управление ОС, и она начинает выполнять другие задания. Когда контроллер обнаруживает окончание передачи данных, он генерирует прерывание о завершении операции, Процесс I/O, использующий прерывания, состоит из четырех шагов (ступеней). На первом шаге драйвер передает команду контроллеру, записывая информацию в регистры устройств. Затем контроллер запускает устройство. Когда контроллер заканчивает чтение или запись того количества байтов, которое ему было указано передать, он посылает сигнал микросхеме контроллера прерываний, используя определенные провода шины. Это шаг второй. На третьем шаге если контроллер прерываний готов к обработке прерываний, то он подает сигнал на определенный контакт ЦП, информируя его таким образом. На четвертом шаге контроллер прерываний вставляет номер устройства на шину, чтобы ЦП мог узнать, какое устройство завершило работу.

 

 

 

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

Третий метод вв-выв информации заключается в использовании специального контролера прямого доступа к памяти (Direct Memory Access). Который управляет потоком битов между Оперативной памятью (ОП) и некоторыми контролерами без вмешательства ЦП. ЦП обращается к микросхеме DMA, сообщает ей число байтов для передачи, а также адрес устройства и памяти, а также направление передачи данных. По завершении работы DMA инициирует прерывание, которое обрабатывается обычным порядком.

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

Шины.

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

ЛШ- Локальная Шина

ШП- Шина Памяти

В этой системе 8 шин, каждая со своей скоростью передачи данных и своими функциями. В ОС для управления компьютером должны находится сведения об всех этих шинах.(ISA -- Industry Standard Architecture ; PCI – Peripheral Component Interconnect).

Шина ISA работает на частоте 8,33 МГц и может передавать 2 байта за такт с максимальной скоростью16,67 Мб/с.

Шина PCI работает на частоте 66 МГц и передает по 8 байт за такт с максимальной скоростью 528Мб/с.

Большинство высокочастотных устройств вв-выв используют шину PCI. ЦП по ЛК передает данные микросхеме PCI-моста, – который в свою очередь обращается к памяти по выделенной шине, часто работающей на частоте 100МГц.

Система Pentium имеет КЭШ первого уровня L1 встроенный в процессор и намного больше КЭШ второго уровня L2, подключенный к процессору отдельной ШК. В систему входят 3 специальных шины IDE, USB и SCSI. IDE служит для присоединения периферийных устройств к системе (CD-ROM). USB (Universal Serial Bus) служит для присоединения к компьютеру медленных устройств вв-выв, таких как клавиатура, мышь, принтер и т.д. USB – это централизованная шина по которой главное устройство каждую миллисекунду опрашивает устройство вв-выв. Она может управлять загрузкой данных со скоростью 1,5Мб/с. Все USB используют один драйвер, поэтому нет необходимости устанавливать драйвер для нового USB, т.е. они присоединяются к системе без ее перезагрузки. SCSI –(Small Computer System Interface) это высокопроизводительная шина, применяемая для быстрых дисков, сканеров и др. устройств, нуждающиеся в значительной пропускной способности, ее производительность 160 Мб/с. Шина SCSI используется в системах Макинтош, популярна в UNIX-системах и некоторых системах на базе Intel.

IEEE 1394 (Fire Wire). Эта шина является последней шиной, скорость ее 50Мб/с. Это свойство позволяет подключать к компьютеру портативные цифровые видеокамеры и мультимедийные устройства. Не имеет центрального контролера. В настоящее время шина SCSI и IEEE 1394 конкурируют с разработкой более быстрой версии шины USB.Стандарт под названием Plug and Play позволяет системе автоматически собирать информацию об устройствах вв-выв. Назначать уровни прерывания и адреса вв-выв, а затем сообщать каждой плате эту информацию. На материнской плате находится программа называемая системой BIOS (Basic Input Output System) – она содержит программы вв-выв низкого уровня, включая процедуры для чтения с клавиатуры, вывода информации на экран, вв-выв данных с диска. В настоящее время эти функции хранятся во Flash-ОЗУ, которая в обычных условиях является неизменяемой, но ее можно изменить с помощью ОС.

При изучении ОС в них принято выделять следующие части:

  1. Процессор
  2. Управление памятью
  3. Защита информации и безопасность
  4. Планирование и управление ресурсами
  5. Структура системы

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

 

Процессы.

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

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

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

Последовательный процесс (задача) – выполнение отдельной программы и ее данные на последовательном процессоре.

В качестве примера можно назвать следующие процессы:

  1. Выполняющаяся прикладная программа пользователя
  2. Утилит
  3. Трансляция программ
  4. Компоновка, выполнение

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

Мысленно процесс можно разделить на 3 компонента:

  1. Выполняющаяся программа
  2. Данные нужные для работы

Контекст выполняющейся программы (execution context) или состояние процесса (process state) Включат в себя всю информацию нужную ОС для управления процессами и процессору для его выполнения. Данные, характеризующие это состояние, включают в себя содержимое различных регистров процессора, таких как программный счетчик и регистры данных, приоритет процесса и сведения о том, находится ли данный процесс в состоянии ожидания вв-выв.

 

1-список процессов



<== предыдущая лекция | следующая лекция ==>
Виртуальная память | А-процесс А


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.