Типы взаимодействия устройств в архитектуре ПК и характеристики памяти компьютера

Обновлено: 21.11.2024

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

На самом базовом уровне компьютер состоит из блока управления, арифметико-логического блока (ALU), блока памяти и контроллеров ввода-вывода (I/O). АЛУ выполняет простые операции сложения, вычитания, умножения, деления и логические операции, такие как ИЛИ и И. В памяти хранятся инструкции и данные программы. Блок управления извлекает данные и инструкции из памяти и использует операции АЛУ для выполнения этих инструкций с использованием этих данных. (Блок управления и АЛУ вместе называются центральным процессором [ЦП].) Когда встречается инструкция ввода или вывода, блок управления передает данные между памятью и назначенным контроллером ввода-вывода. Скорость работы ЦП в первую очередь определяет скорость работы компьютера в целом. Все эти компоненты — блок управления, АЛУ, память и контроллеры ввода-вывода — реализованы на транзисторных схемах.

Компьютеры размещают веб-сайты, состоящие из HTML, и отправляют текстовые сообщения так же просто, как. РЖУ НЕ МОГУ. Взломайте этот тест, и пусть какая-нибудь технология подсчитает ваш результат и раскроет вам его содержание.

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

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

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

Работа компьютера после загрузки программы и некоторых данных в оперативную память происходит следующим образом. Первая инструкция передается из ОЗУ в блок управления и интерпретируется аппаратной схемой. Например, предположим, что инструкция представляет собой строку битов, которая является кодом для ЗАГРУЗКИ 10. Эта инструкция загружает содержимое ячейки памяти 10 в АЛУ. Выбирается следующая инструкция, скажем, ADD 15. Затем блок управления загружает содержимое ячейки памяти 15 в АЛУ и добавляет его к уже имеющемуся номеру. Наконец, инструкция STORE 20 сохранит эту сумму в ячейке 20. На этом уровне работа компьютера мало чем отличается от работы карманного калькулятора.

В целом, программы — это не просто длинные последовательности операций ЗАГРУЗКИ, СОХРАНЕНИЯ и арифметических операций. Самое главное, компьютерные языки включают условные инструкции — по сути, правила, которые гласят: «Если ячейка памяти n удовлетворяет условию a, выполните следующую команду с номером x». , иначе выполните инструкцию y». Это позволяет определять ход программы по результатам предыдущих операций — критически важная возможность.

Наконец, программы обычно содержат последовательности инструкций, которые повторяются несколько раз до тех пор, пока заданное условие не станет истинным. Такая последовательность называется циклом.Например, потребуется цикл для вычисления суммы первых n целых чисел, где n — это значение, хранящееся в отдельной ячейке памяти. Компьютерные архитектуры, которые могут выполнять последовательности инструкций, условные инструкции и циклы, называются «полными по Тьюрингу», что означает, что они могут выполнять любой алгоритм, который может быть определен. Полнота по Тьюрингу — фундаментальная и важная характеристика любой компьютерной организации.

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

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

Проектирование микропроцессора СБИС происходит в несколько этапов, включая создание начальной функциональной или поведенческой спецификации, кодирование этой спецификации на языке описания оборудования, разбивку конструкции на модули и создание размеров и форм для конечных компонентов микросхемы. Это также включает в себя планирование чипа, которое включает в себя создание «плана этажа», чтобы указать, где на чипе каждый компонент должен быть размещен и соединен с другими компонентами. Ученые-компьютерщики также участвуют в создании инструментов автоматизированного проектирования (САПР), которые помогают инженерам на различных этапах проектирования микросхем, а также в разработке необходимых теоретических результатов, таких как эффективное проектирование плана этажа с почти минимальной площадью, удовлетворяющей требованиям. заданные ограничения.

Прогресс в технологии интегральных схем был невероятным. Например, в 1971 году первый микропроцессорный чип (4004 корпорации Intel) имел всего 2300 транзисторов, в 1993 году чип Intel Pentium имел более 3 миллионов транзисторов, а к 2000 году количество транзисторов на таком чипе составило около 50 миллионов. Чип Power7, представленный IBM в 2010 году, содержал примерно 1 миллиард транзисторов. Явление, когда количество транзисторов в интегральной схеме удваивается примерно каждые два года, широко известно как закон Мура.

Закон Мура. Гордон Э. Мур заметил, что количество транзисторов на компьютерном чипе удваивается примерно каждые 18–24 месяца. Как показано на логарифмическом графике количества транзисторов в процессорах Intel на момент их появления, его «закон» соблюдался.

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

Вычислительные науки

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

Математические методы, необходимые для вычислительной науки, требуют преобразования уравнений и функций из непрерывных в дискретные. Например, компьютерное интегрирование функции на интервале выполняется не путем применения интегрального исчисления, а путем аппроксимации площади под графиком функции как суммы площадей, полученных при вычислении функции в дискретных точках. Точно так же решение дифференциального уравнения получается как последовательность дискретных точек, определяемых путем аппроксимации кривой истинного решения последовательностью касательных отрезков. При такой дискретизации многие проблемы можно преобразовать в уравнение, включающее матрицу (прямоугольный массив чисел), решаемую с помощью линейной алгебры. Численный анализ - это изучение таких вычислительных методов. При применении численных методов необходимо учитывать несколько факторов: (1) условия, при которых метод дает решение, (2) точность решения, (3) является ли процесс решения устойчивым (т. е. не показывает рост ошибки) , и (4) вычислительная сложность (в смысле, описанном выше) получения решения желаемой точности.

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

Графика и визуальные вычисления

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

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

Изображение человеческого мозга, пораженного раком, полученное с помощью магнитно-резонансной томографии (МРТ). Ярко-синяя область указывает на то, что рак распространился на затылочную долю (внизу справа).

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

Взаимодействие человека с компьютером

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

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

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

Различные типы памяти в компьютере

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

Веб-разработка, языки программирования, тестирование программного обеспечения и другое

1. Основная память

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

я. ОЗУ (оперативное запоминающее устройство)

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

а. DRAM

Динамическая оперативная память – это обычно используемая в компьютерах оперативная память. В отличие от прежних времен, когда компьютеры использовали ОЗУ с одинарной скоростью передачи данных (SDR), теперь они используют ОЗУ с двойной скоростью передачи данных (DDR), обладающее более быстрой вычислительной способностью. DDR2, DDR3, DDR4 — это доступные версии DRAM, каждая из которых эффективна в зависимости от их количества.Перед любой установкой необходимо проверить совместимость DRAM с операционной системой.

б. SRAM

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

Все в одном пакете для разработки программного обеспечения (600+ курсов, 50+ проектов) 600+ онлайн-курсов | 3000+ часов | Поддающиеся проверке сертификаты | Пожизненный доступ
4,6 (3144 оценки)

ii. ПЗУ (постоянная память)

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

2. Вторичная память

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

Использование памяти в компьютере

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

Заключение

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

Память похожа на человеческий мозг. Он используется для хранения данных и инструкций. Память компьютера — это пространство для хранения данных в компьютере, где должны обрабатываться данные и храниться инструкции, необходимые для обработки. Память делится на большое количество мелких частей, называемых ячейками. Каждое местоположение или ячейка имеет уникальный адрес, который варьируется от нуля до размера памяти минус один. Например, если в компьютере 64 тыс. слов, то в этом блоке памяти 64 * 1024 = 65536 ячеек памяти. Адреса этих местоположений варьируются от 0 до 65535.

Память в основном бывает трех типов —

  • Кэш-память
  • Основная память/основная память
  • Вторичная память

Кэш-память

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

Преимущества

Преимущества кэш-памяти заключаются в следующем:

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

Недостатки

Недостатки кэш-памяти заключаются в следующем:

  • Емкость кэш-памяти ограничена.
  • Это очень дорого.

Основная память (основная память)

Основная память содержит только те данные и инструкции, над которыми компьютер работает в данный момент. Он имеет ограниченную емкость, и данные теряются при отключении питания. Как правило, это полупроводниковое устройство. Эти воспоминания не такие быстрые, как регистры.Данные и инструкции, необходимые для обработки, находятся в основной памяти. Он разделен на две подкатегории: RAM и ROM.

Характеристики оперативной памяти

  • Это полупроводниковые запоминающие устройства.
  • Она известна как основная память.
  • Обычно энергозависимая память.
  • Данные теряются при отключении питания.
  • Это рабочая память компьютера.
  • Быстрее, чем вторичные воспоминания.
  • Компьютер не может работать без основной памяти.

Вторичная память

Этот тип памяти также известен как внешняя память или энергонезависимая память. Она медленнее, чем основная память. Они используются для постоянного хранения данных/информации. ЦП не имеет прямого доступа к этой памяти, вместо этого доступ к ним осуществляется через процедуры ввода-вывода. Содержимое вторичной памяти сначала переносится в основную память, а затем ЦП может получить к ней доступ. Например, диск, CD-ROM, DVD и т. д.

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

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

Прерывания

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

Что происходит, когда происходит прерывание?

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

Как обрабатываются прерывания?

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

Типы прерываний

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

Аппаратные прерывания

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

Обработка прерываний

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

    Ввод и вывод (ввод/вывод)

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

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

    Синхронный или блокирующий ввод-вывод

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

Асинхронный или неблокирующий ввод-вывод

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

Структура прямого доступа к памяти (DMA)

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

Читайте также: