Общие принципы построения и работы ЭВМ. Реализация вычислительного процесса. Состав устройств ЭВМ и их назначение

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 06.04.2011
Размер файла 65,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Курсовая работа по информатике

на тему:

"Общие принципы построения и работы ЭВМ. Реализация вычислительного процесса. Состав устройств ЭВМ и их назначение"

Введение

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

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

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

1. Общие принципы построения и работы ЭВМ

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

“Алгоритм - конечный набор предписаний, определяющий решение задачи посредством конечного количества операций”. “Программа (для ЭВМ) - упорядоченная последовательность команд, подлежащая обработке" (стандарт ISO 2382/1-84). Следует заметить, что строгого, однозначного определения алгоритма, равно как и однозначных методов его преобразования в программу вычислений, не существует. Принцип программного управления может быть осуществлен различными способами. Стандартом для построения практически всех ЭВМ стал способ, описанный Дж. фон Нейманом в 1945 г. при построении еще первых образцов ЭВМ. Суть его заключается в следующем.

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

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

Для доступа к программам, командам и операндам используются их адреса. В качестве адресов выступают номера ячеек памяти ЭВМ, предназначенных для хранения объектов. Информация (командная и данные: числовая, текстовая, графическая и т.п.) кодируется двоичными цифрами 0 и 1. Поэтому различные типы информации, размещенные в памяти ЭВМ, практически неразличимы, идентификация их возможна лишь при выполнении программы, согласно ее логике, по контексту.

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

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

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

Схема ЭВМ, отвечающая программному принципу управления, логично вытекает из последовательного характера преобразований, выполняемых человеком по некоторому алгоритму (программе). В любой ЭВМ имеются устройства ввода информации (УВв), с помощью которых пользователи вводят в ЭВМ программы решаемых задач и данные к ним. Введенная информация полностью или частично сначала запоминается в оперативном запоминающем устройстве (ОЗУ), а затем переносится во внешнее запоминающее устройство (ВЗУ), предназначенное для длительного хранения информации, где преобразуется в специальный программный объект - файл. “Файл - идентифицированная совокупность экземпляров полностью описанного в конкретной программе типа данных, находящихся вне программы во внешней памяти и доступных программе посредством специальных операций (ГОСТ 20866 - 85) ”.

вычислительная система оптический диск

При использовании файла в вычислительном процессе его содержимое переносится в ОЗУ. Затем программная информация команда за командой считывается в устройство управления (УУ).

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

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

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

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

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

Все команды программы выполняются последовательно, команда за командой, в том порядке, как они записаны в памяти ЭВМ (естественный порядок следования команд). Этот порядок характерен для линейных программ, т.е. программ, не содержащих разветвлений. Для организации ветвлений используются команды, нарушающие естественный порядок следования команд. Отдельные признаки результатов r (r = 0, r < 0, r > 0 и др.) устройство управления использует для изменения порядка выполнения команд программы.

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

Современные ЭВМ имеют достаточно развитые системы машинных операций. Например, ЭВМ типа IBM PC имеют около 200 различных операций (170 - 230 в зависимости от типа микропроцессора). Любая операция в ЭВМ выполняется по определенной микропрограмме, реализуемой в схемах АЛУ соответствующей последовательностью сигналов управления (микрокоманд). Каждая отдельная микрокоманда - это простейшее элементарное преобразование данных типа алгебраического сложения, сдвига, перезаписи информации и т.п.

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

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

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

Сильно связанные устройства АЛУ и УУ получили название процессор, т.е. устройство, предназначенное для обработки данных.

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

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

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

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

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

Ядро ПЭВМ образуют процессор и основная память (ОП), состоящая из оперативной памяти и постоянного запоминающего устройства (ПЗУ). ПЗУ предназначается для записи и постоянного хранения наиболее часто используемых программ управления.

Подключение всех внешних устройств (ВнУ), дисплея, клавиатуры, внешних ЗУ и других обеспечивается через соответствующие адаптеры - согласователи скоростей работы сопрягаемых устройств или контроллеры - специальные устройства управления периферийной аппаратурой. Контроллеры в ПЭВМ играют роль каналов ввода-вывода. В качестве особых устройств следует выделить таймер - устройство измерения времени и контроллер прямого доступа к памяти (КПД) - устройство, обеспечивающее доступ к ОП, минуя процессор.

Способ формирования структуры ПЭВМ является достаточно логичным и естественным стандартом для данного класса ЭВМ.

Децентрализация построения и управления вызвала к жизни такие элементы, которые являются общим стандартом структур современных ЭВМ:

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

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

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

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

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

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

Децентрализация управления предполагает иерархическую организацию структуры ЭВМ. Централизованное управление осуществляет устройство управления главного, или центрального, процессора. Подключаемые к центральному процессору модули (контроллеры и КВВ) могут, в свою очередь, использовать специальные шины или магистрали для обмена управляющими сигналами, адресами и данными. Инициализация работы модулей обеспечивается по командам центральных устройств, после чего они продолжают работу по собственным программам управления. Результаты выполнения требуемых операций представляются ими “вверх по иерархии” для правильной координации всех работ.

Иерархический принцип построения и управления характерен не только для структуры ЭВМ в целом, но и для отдельных ее подсистем. Например, по этому же принципу строится система памяти ЭВМ.

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

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

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

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

Часть машинных программ, обеспечивающих автоматическое управление вычислениями и используемых наиболее часто, может размещаться в постоянном запоминающем устройстве (ПЗУ). На более низких уровнях иерархии находятся внешние запоминающие устройства на магнитных носителях: на жестких и гибких магнитных дисках, магнитных лентах, магнитооптических дисках и др. Их отличает более низкое быстродействие и очень большая емкость.

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

Децентрализация управления и структуры ЭВМ позволила перейти к более сложным многопрограммным (мультипрограммным) режимам. При этом в ЭВМ одновременно может обрабатываться несколько программ пользователей.

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

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

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

• ядро ЭВМ образует процессор - единственный вычислитель в структуре, дополненный каналами обмена информацией и памятью;

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

• одноуровневая адресация ячеек памяти, стирающая различия между всеми типами информации;

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

• последовательное централизованное управление вычислениями;

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

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

• несоответствие машинных операций операторам языков высокого уровня;

• примитивная организация памяти ЭВМ;

• низкая эффективность ЭВМ при решении задач, допускающих параллельную обработку и т.п.

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

В ЭВМ будущих поколений, с использованием в них “встроенного искусственного интеллекта”, предполагается дальнейшее усложнение структуры. В первую очередь это касается совершенствования процессов общения пользователей с ЭВМ (использование аудио-, видеоинформации, систем мультимедиа и др.), обеспечения доступа к базам данных и базам знаний, организации параллельных вычислений. Несомненно, что этому должны соответствовать новые параллельные структуры с новыми принципами их построения. В качестве примера укажем, что самая быстрая ЭВМ фирмы IBM в настоящее время обеспечивает быстродействие 600 MIPS (миллионов команд в секунду), самая же большая гиперкубическая система nCube дает быстродействие 123.103 MBPS. Расчеты показывают, что стоимость одной машинной операции в гиперсистеме примерно в тысячу раз меньше. Вероятно, подобными системами будут обслуживаться большие информационные хранилища.

2. Реализация вычислительного процесса

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

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

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

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

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

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

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

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

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

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

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

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

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

• ресурс используется задачей низшего приоритета и может быть временно отобран (разделяемый ресурс).

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

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

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

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

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

Необходимо различать системные управляющие процессы, представляющие работу супервизора операционной системы и занимающиеся распределением и управлением ресурсов, от всех других процессов: системных обрабатывающих процессов, которые не входят в ядро операционной системы, и процессов пользователя. Для системных управляющих процессов в большинстве операционных систем ресурсы распределяются изначально и однозначно. Эти процессы управляют ресурсами системы, за использование которых существует конкуренция между всеми остальными процессами. Поэтому исполнение системных управляющих программ не принято называть процессами. Термин задача можно употреблять только по отношению к процессам пользователей и к системным обрабатывающим процессам. Однако это справедливо не для всех ОС. Например, в так называемых "микроядерных" ОС (в качестве примера можно привести ОС реального времени QNX фирмы Quantum Software systems) большинство управляющих программных модулей самой ОС и даже драйверы имеют статус высокоприоритетных процессов, для выполнения которых необходимо выделить соответствующие ресурсы. Аналогично и в UNIX-системах выполнение системных программных модулей тоже имеет статус системных процессов, которые получают ресурсы для своего исполнения.

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

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

• готовности к выполнению - ресурсы могут быть предоставлены, тогда процесс перейдёт в состояние выполнения;

• блокирования или ожидания - затребованные ресурсы не могут быть предоставлены, или не завершена операция ввода/вывода.

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

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

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

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

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

• при выборе из очерёди планировщиком (характерно для операционных систем, работающих в пакетном режиме);

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

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

• при наступлении запланированного времени запуска программы.

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

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

Из состояния выполнения процесс может выйти по одной из следующих причин:

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

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

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

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

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

Реализация понятия последовательного процесса в ОС

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

• идентификатор процесса (так называемый PID - process identificator);

• тип (или класс) процесса, который определяет для супервизора некоторые правила предоставления ресурсов;

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

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

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

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

• место (или его адрес) для организации общения с другими процессами;

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

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

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

В некоторых операционных системах количество описателей определяется жестко и заранее (на этапе генерации варианта операционной системы или в конфигурационном файле, который используется при загрузке ОС), в других - по мере необходимости система может выделять участки памяти под новые описатели. Например, в OS/2 максимально возможное количество описателей задач определяется в конфигурационном файле CONFIG. SYS, а в Windows NT оно в явном виде не задается. Справедливости ради стоит заметить, что в упомянутом файле указывается количество не процессов, а именно задач, и под задачей в данном случае понимается как процесс, так и поток этого же процесса, называемый потоком или тредом. Например, строка в файле CONFIG. SYS

THREADS=1024

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

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

Для более эффективной обработки данных в системах реального времени целесообразно иметь постоянные задачи/полностью или частично всегда существующие в системе независимо от того, поступило на них требование или нет. Каждая постоянная задача обладает некоторой собственной областью оперативной памяти (ОЗУ-резидентные задачи) независимо от того, выполняется задача в данный момент или нет. Эта область, в частности, может использоваться для хранения данных, полученных задачей ранее. Данные могут храниться в ней и тогда, когда задача находится в состоянии ожидания или даже в состоянии бездействия.

Для аппаратной поддержки работы операционных систем с этими информационными структурами (дескрипторами задач) в процессорах могут быть реализованы соответствующие механизмы. Так, например, в микропроцессорах Intel 80х86, начиная с 80286, имеется специальный регистр TR (task register), указывающий местонахождение TSS (сегмента состояния задачи), в котором при переключении с задачи на задачу автоматически сохраняется содержимое регистров процессора. Как правило, в современных ОС для этих микропроцессоров дескриптор задачи включает в себя TSS. Другими словами, дескриптор задачи больше по размеру, чем TSS, и включает в себя такие традиционные поля, как идентификатор задачи, её имя, тип, приоритет и т.п.

3. Состав устройств ЭВМ и их назначение

Микропроцессор

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

Внутреннее устройство процессоров непрерывно совершенствуется, и каждый следующий тратит на одну и ту же работу вдвое меньше тактов, чем предыдущий. В 8088 одна команда занимала 5-15 тактов, в Pentium - 0,5-1 (внутреннее дублирование схем позволяет ему выполнять несколько команд одновременно). Поэтому с точки зрения производительности микропроцессора, т.е. сколько он выполняет миллионов операций в секунду (MIPS - Million Instruction Per Second), каждое его следующее поколение даже при одной и той же тактовой частоте работает быстрее.

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

С начала 1998 года Intel избрал новую политику - дробить рынок на части и для каждой делать свой продукт. Так наряду с производительными и дорогими Pentium II (с начала 1999 г. Pentium III) появилось семейство Celeron, нацеленное на низшую ценовую категорию для конкуренции с микропроцессорами фирмы AMD.

В последние годы Intel развивает серию Pentium 4: 2000г. - Intel Pentium 4 (Willamette, Socket 423). Принципиально новый процессор с гиперконвейеризацией (hyperpipelining) - с конвейером, состоящим из 20 ступеней. Согласно заявлениям Intel, процессоры, основанные на данной технологии, позволяют добиться увеличения частоты примерно на 40 процентов относительно семейства P6 при одинаковом технологическом процессе. Применена 400 МГц системная шина (Quad-pumped), обеспечивающая пропускную способность в 3,2 ГБайта в секунду против 133 МГц шины с пропускной способностью 1,06 ГБайт у Pentium III. Кодовое имя: Willamette. Технические характеристики: технология производства - 0,18 мкм; тактовая частота - 1.3-2 ГГц; кэш первого уровня - 8 Кб; кэш второго уровня - 256 Кб (полноскоростной); процессор 64-разрядный; шина данных 64-разрядная (400 МГц); разъём Socket 423.

Основная (материнская) плата и шина

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

Эта шина формируется на сложной многослойной печатной плате - основной, или иначе, материнской (motherboard).

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

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

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

Память

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

Основная (оперативная) память (RAM - Random Access Memory - память с произвольным доступом) компьютера отличается от прочих устройств памяти, прежде всего тем, что к любому ее месту можно обратиться одинаково быстро, даже если делать это в случайном (произвольном) порядке (random access).

Большинство старых программ, работающих под управлением DOS, укладываются в сотни килобайт - ведь DOS адресует только 640 Кбайт. Современные операционные системы многозадачные. Они позволяют нескольким программам действовать одновременно, а главное, взаимодействовать между собой. Поэтому для их работы требуется значительный объем оперативной памяти, например, для операционной системы Windows ME - 64 Мбайт, для Windows XP - 128 Мбайт. Причем эти требования минимальные. Для приемлемой скорости работы с наиболее часто используемыми комбинациями программ эти цифры надо хотя бы удвоить или лучше учетверить.

Физически оперативная память устанавливается в виде модулей SIMM (Single In-line Memory Modules) или DIMM (Double In-line Memory Modules) в специальные гнезда на материнской плате.

На системной (материнской) плате модули памяти организуются в банки памяти. В компьютерах последних лет разъемы для модулей SIMM полностью исключены, так что используются только DIMM модули объемом 64 МВ и выше. Оперативная память подвержена многим помехам. Поэтому обычно к каждому байту добавляют девятый бит - для контроля на четность. Существуют также способы автоматического восстановления информации при сбоях. Однако они требуют большей избыточности памяти и соответственно повышают ее цену. Поэтому память с расширенным корректирующим кодом (ЕСС - Extended Correction Code) используют, прежде всего, в мощных машинах, решающих серьезные задачи.

Накопители на подвижном магнитном носителе

Для первых персональных компьютеров разработали винчестеры диаметром 5,25", затем для портативных компьютеров - 3,5"; а в ноутбуки уже ставят накопители диаметром 2,5" и даже 1,8". Винчестеры размером 5,25" теперь не используются даже в настольных компьютерах, чаще устанавливаются 3.5". Устройства управления винчестерами - контроллеры - раньше размещались на отдельных печатных платах. Теперь почти все нужные схемы встраивают в корпус винчестера - Integrated Drive Eiectronic (IDE), а немногие оставшиеся компоненты обычно включены в motherboard (или на плате расширения, называемой MultiCard) и подключаются через плоский специальный многожильный кабель.

В 2003 году появились первые экземпляры контроллеров Serial ATA на популярных материнских платах. Прежде всего, кабель у нового интерфейса принципиально отличается от прежнего плоского и широкого (40 - или 80-жильного), у него количество сигнальных проводов сокращено до четырех (есть дополнительная "земля"), и до метра увеличена допустимая длина. Это способствует более компактной упаковке и лучшим условиям охлаждения внутри корпуса компьютера, удешевляет конструкцию. Тут компактные семиконтактные разъемы соединяются узким уплощенным кабелем шириной примерно 8 мм и толщиной около 2 мм. Внутри кабеля Serial ATA находятся две пары сигнальных проводов (одна пара на прием, другая - на передачу), отделенных тремя жилами общего провода ("земли"). На разъеме, расположенном на дисках и материнских платах, три "земляных" контакта выступают чуть дальше сигнальных контактов, чтобы облегчить "горячее" подключение.

Накопители на гибких магнитных дисках


Подобные документы

  • Основа персональной техники. Внутренние устройства ПК. Микропроцессор. Основная (материнская) плата и шина. Накопители на подвижном и гибких магнитных дисках. Оптические диски. Блоки расширения. Периферийное оборудование. Устройства ввода и вывода.

    курсовая работа [233,7 K], добавлен 27.02.2009

  • Нахождение рационального порядка следования запросов для обеспечения максимального критерия эффективности использования компонентов вычислительного процесса в системе. Метод ветвей и границ для максимально быстрого выполнения вычислительного процесса.

    курсовая работа [196,3 K], добавлен 23.08.2009

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

    курсовая работа [99,0 K], добавлен 03.07.2011

  • Микропроцессор как центр вычислительной системы. Основная (материнская) плата. Системная шина как совокупность сигнальных линий, объединённых по их назначению. Внутренняя память компьютера - оперативная память и кэш-память. Гибкий диск или дискета.

    реферат [25,1 K], добавлен 27.02.2009

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

    презентация [4,3 M], добавлен 08.12.2014

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

    презентация [96,2 K], добавлен 01.04.2010

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

    презентация [925,8 K], добавлен 03.12.2014

  • Принципы, положенные в основу построения большинства персональных компьютеров. Характеристики основных модулей ПК: материнская плата, процессор, память, винчестер, клавиатура, монитор. Приводы компакт-дисков (CD) как необходимый атрибут компьютера.

    контрольная работа [31,2 K], добавлен 02.12.2014

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

    реферат [11,1 M], добавлен 26.11.2010

  • Классификация электронно-вычислительных машин по времени создания и назначению. Принципы "фон Неймана". Аппаратная реализация персонального компьютера: процессор, внутренняя и внешняя память, материнская плата. Основные периферийные устройства.

    реферат [1,2 M], добавлен 24.05.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.