Развитие компьютерной архитектуры
Этапы развития вычислительной техники. Определение эффективного цикла обращения в оперативную память. Особенности логических переменных, операции над ними. Структура компьютера с процессором который имеет встроенный контроллер оперативной памяти.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 04.04.2015 |
Размер файла | 27,8 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Содержание
- 1. Основные этапы развития вычислительной техники
- 2. Почему невозвожно реализовать идеальную подсистему памяти при использывании одной технологии?
- 3. Как определить эффективный цикл обращения в оперативную память при наличии кеш памяти с тремя уровнями
- 4. Что такое кольца защиты?
- 5. Основные особенности логических переменных. Операции над логическими переменными
- 6. Программная модель процессора с архитектурой IA-64
- 8. Что такое файл? Отличия между фалом и каталогом
- 9. Влияние условных переходов на продуктивность конвейера процессора
- 10. Cтруктура компьютера с процессором который имеет встроенный конроллер оперативной памяти
- Список литературы
1. Основные этапы развития вычислительной техники
Основные этапы развития вычислительной техники. Первым прообразом современных компьютеров была механическая аналитическая машина Чарльза Бэббиджа, которую он проектировал и создавал в середине XIX в. Аналитическая машина должна была обрабатывать числовую информацию по заранее составленной программе без вмешательства человека. В аналитической машине имелись все основные устройства современного компьютера: Склад (Память), Мельница (Процессор) и т.д.
Первые электронно-вычислительные машины (ЭВМ), способные автоматически по заданной программе обрабатывать большие объемы информации, были построены в 1943 г. в США (ЭНИАК) и в 1950 г. в СССР (МЭСМ). Первые ЭВМ были ламповыми (включали в себя десятки тысяч ламп), очень дорогими и очень большими (занимали громадные залы), и поэтому их количество измерялось единицами, в лучшем случае десятками штук.
Производство сравнительно недорогих персональных компьютеров с использованием БИС (больших интегральных схем) началось в середине 70-х годов с компьютера Apple I (с этого компьютера отсчитывает свое существование фирма Apple). В начале 80-х годов приступила к массовому производству персональных компьютеров корпорация IBM (компьютеры так и назывались IBM Personal Computer - IBM PC). Персональные компьютеры в состоянии обрабатывать не только числовую информацию. В настоящее время большая часть персональных компьютеров в мире занята обработкой текстовой информации. С 80-х годов стала возможной обработка на компьютере графической информации, а с 90-х - звуковой. Современный персональный компьютер превратился в мультимедийный, т.е. на нем можно обрабатывать числовую, текстовую, графическую и звуковую информацию.
Развитие глобальных компьютерных сетей началось в 80-е годы. В 1981 г. в сети Интернет было лишь 213 компьютеров, к концу 80-х число подключенных к сети компьютеров возросло до 150 тысяч, однако наиболее быстрый экспоненциальный рост их количества происходил в 90-е годы, и к настоящему моменту в Интернете насчитывается более 100 миллионов серверов.
Основными этапами развития вычислительной техники являются (коротко охарактеризовать каждый из этапов):
I. ручной - с 50-го тысячелетия до н.э.;
II. механический - с середины XVII века;
III. электромеханический - с девяностых годов XIX века;
IV. электронный - с сороковых годов XX века.
Классификация ЭВМ по этапам создания:
1-е поколение, 50-е гг.: ЭВМ на электронных вакуумных лампах;
2-е поколение, 60-е гг.: ЭВМ на дискретных полупроводниковых приборах (транзисторах);
3-е поколение, 70-е гг.: ЭВМ на полупроводниковых интегральных схемах с малой и средней степенью интеграции (сотни - тысячи транзисторов в одном корпусе);
Классификация ЭВМ по размерам и функциональным возможностям:
Вычислительные машины: универсальные, проблемно-ориентированные
специализированные.
Классификация ЭВМ по назначению:
Классификация ЭВМ по размерам и вычислительной мощности
контроллер оперативная память компьютерный
Периодизация ЭВМ по поколениям:
Первое поколение, 50-е годы; ЭВМ на электронных вакуумных лампах.
Второе поколение, 60-е годы; ЭВМ на дискретных полупроводниковых приборах (транзисторах).
Третье поколение, 70-е годы; ЭВМ на полупроводниковых интегральных схемах с малой и средней степенью интеграции (сотни - тысячи транзисторов в одном корпусе).
Четвертое поколение, 80-е годы; ЭВМ на больших и сверхбольших интегральных схемах - микропроцессорах (десятки тысяч - миллионы транзисторов в одном).
Пятое поколение, 90-е годы; ЭВМ с многими десятками параллельно работающих микропроцессоров, позволяющих строить эффективные системы обработки знаний.
ЭВМ на сверхсложных микропроцессорах с параллельно-векторной структурой, одновременно выполняющих десятки последовательных команд программы;
Шестое и последующие поколения; оптоэлектронные ЭВМ с массовым параллелизмом и нейтронной структурой - с распределенной сетью большого числа (десятки тысяч) несложных микропроцессоров, моделирующих архитектуру нейтронных биологических систем.
Каждое следующее поколение ЭВМ имеет по сравнению с предыдущими существенно лучшие характеристики. Так, производительность ЭВМ и емкость всех запоминающих устройств увеличивается, как правило, больше чем на порядок.
2. Почему невозвожно реализовать идеальную подсистему памяти при использывании одной технологии?
Для того чтобы ответить на этот вопрос необходимо разобраться в существующей структуре памяти.
Повышение производительности вычислительных систем непосредственно связано с увеличением быстродействия и емкости памяти. Емкость памяти наиболее крупных вычислительных систем возросла от 1000 байт до десятков терабайт, а время цикла уменьшилось с 20 мкс до 10 нс. Однако даже с учетом прогресса в технологии быстродействующие запоминающие устройства остаются более дорогими, чем медленные. Следовательно, с целью уменьшения стоимости ВС при той же производительности эффективнее иметь иерархию памяти с небольшим по емкости запоминающим устройством, расположенным рядом с процессором и имеющим минимальное время доступа. Такая иерархия позволяет согласовать характеристики памяти и центрального процессора.
С ростом сложности а также размерности технических и научных задач возрастает требование к объему памяти. Рост объема памяти в свою очередь приводит к большим физическим размерам устройства, увеличению длины проводников и задержки распространения сигналов, т.е. уменьшается время доступа к такой памяти. Хотя быстродействие и емкость отдельных устройств памяти возросли, этого было не достаточно для того, чтобы они соответствовали характеристикам процессора. Конечно, можно реализовать память больших объемов, которая несколько быстрее имеющейся на данный момент при помощи совершеннейших технологий, существующих на данный момент. Однако стоимость такой памяти по отношению к увеличению ее производительности будет очень велика и использование такой памяти экономически невыгодно.
Компромиссом между производительностью и объемами памяти является решения использовать иерархию запоминающих устройств, т.е. применять в ВС так называемую иерархическую модель памяти. При хорошо построенной иерархической системе памяти среднее время доступа ко всей памяти лишь незначительно превышает время доступа к небольшому быстродействующему запоминающему устройству, а количество хранящейся информации равно емкости большой памяти. Идея иерархии запоминающих устройств в том или ином виде с самого начала была одной из важных концепций при разработке вычислительных систем.
Иерархическая память-это система памяти, состоящая как минимум из двух запоминающих устройств, отличающихся быстродействием и емкостью. Обычно первое устройство памяти, расположенное в непосредственной близости от процессора, имеет малое время доступа и более высокую стоимость на бит. В связи с этим емкость более быстродействующей памяти в иерархии делается небольшой для того, чтобы оптимизировать стоимость всей системы. Технология памяти второго уровня иерархии выбирается исходя из низкой стоимости на один бит; такая память имеет большие значения времени цикла и времени доступа.
Иерархическая память управляется пользовательскими программами, аппаратным путем или системным программным обеспечением так, чтобы система памяти по времени доступа приближалась к быстродействующей памяти, а по стоимости - к медленной памяти. Примером иерархии, управляемой системным программным обеспечением, является организация виртуальной памяти со страничной организацией применяемая в данное время всеми современными операционными системами: недостаток емкости оперативной памяти возмещается внешней дисковой памятью.
Применение иерархических систем памяти оправдывает себя в следствие двух важных факторов - принципа локальности обращений и низкого (экономически выгодного) соотношения стоимость/производительность. Принцип локальности обращений говорит о том, что большинство программ к счастью не выполняют обращений ко всем своим командам и данным равновероятно, а оказывают предпочтение некоторой части своего адресного пространства.
Иерархия памяти существует главным образом для того, чтобы повысить экономическую эффективность системы путем оптимального сочетания временных и стоимостных характеристик различных запоминающих устройств. Для того чтобы иерархия памяти была экономически эффективной, память должна иметь высокие эксплуатационные характеристики. Это означает, что технические параметры запоминающих устройств на разных уровнях иерархии должны существенно различаться. Невозможно достигнуть больших различий по эксплуатационным характеристикам и стоимости малой и большой памяти, если и та и другая выполнены по одной технологии и имеют близкие по значению времена доступа.
3. Как определить эффективный цикл обращения в оперативную память при наличии кеш памяти с тремя уровнями
Скорость работы кэша на порядок выше, чем у ОП и лишь немногим уступает скорости работы процессора, поэтому удачная реализация кэша может намного повысить скорость доступа процессора к данным и, как следствие, выполнения программ.
В каждый момент времени в кэше находится определенная часть информации из ОП, при этом данные в процессор поступают только через кэш. Этими данными могут быть адреса, команды или данные; в соответствии с этим кэш может быть адресным, программным или кэшем данных.
Какие именно данные помещать в кэш - это первая задача при проектировании кэш-памяти. Ситуация, когда при последовательных обращениях к памяти в течение некоторого промежутка времени используется только небольшая ее часть, называется принципом локальности. Этот принцип составляет основу всех систем кэш-памяти. Идея состоит в том, что когда определенное слово вызывается из памяти, оно вместе с остальными словами помещается в кэш-память, что позволяет при очередном запросе быстро обращаться к следующим словам. Другая задача состоит в определении блока, который нужно вытеснить из кэша.
Самой важной характеристикой эффективности кэша является коэффициент кэш-попаданий (h). Зная этот коэффициент, а также время доступа к кэшу (с) и основной памяти (m) можно определить среднее время доступа для системы кэш-ОП:
Tд = c+ (1-h) m
где (1-h) - коэффициент промахов (вероятность того, что нужного слова в кэше нет). Эта зависимость для одноуровневой кэш-памяти. Для двухуровневой кэш-памяти среднее время доступа можно вычислить аналогично:
Tд = cl1+ (1-hl1) cl2+ (1-hl2) m
где cli - время доступа к кэшу i-го уровня, hli - коэффициент попаданий для кэша i-го уровня (i={1,2}).
При проектировании кэш памяти ее стремятся сделать такой, чтобы коэффициент h был как можно ближе к 1.
При взаимодействии с кэш-памятью основная память представляется состоящей из определенного количества блоков фиксированной длины. кэш - память состоит из блоков такого же размера, но этих блоков намного меньше, чем в ОП (блоки кэш-памяти принято называть строками). При считывании слова из какого-либо места ОП, блок ОП, содержащий это слово переписывается в одну из строк кэша. Поскольку число строк кэша меньше числа блоков ОП, отдельная строка кэша не может быть постоянно выделена одному блоку ОП. По этой причине каждой строке кэша соответствует тег (признак), указывающий, копия какого из блоков ОП хранится в данный момент в строке кэша. В качестве тега обычно используется часть адреса ОП.
На эффективность применения кэш-памяти в иерархической системе памяти влияет целый ряд моментов. К наиболее существенным из них можно отнести: емкость кэш-памяти, размер строки, способ отображения основной памяти на кэш-память, алгоритм замещения информации в заполненной кэш-памяти, алгоритм согласования содержимого основной и кэш-памяти, число уровней кэш-памяти.
Емкость кэш-памяти, может служить одним из оптимизируемых параметров модели всей системы иерархической памяти. Эта емкость должна быть достаточно малой, чтобы ее стоимостные показатели были близки к показателям ОП, с другой стороны - достаточно большой, чтобы среднее время обращения к памяти характеризовалось временем доступа к кэшу (коэффициент попаданий был максимально близким к 1: h>1).
В большинстве современных систем используется многоуровневая кэш-память с небольшим и очень быстрым кэшем первого уровня, и медленными кэшами 2-го и 3-го уровня, но большими по объему. Это позволяет значительно увеличить быстродействие всей системы памяти (при ее удачной реализации), но значительно усложняет задачу проектирования такой системы: теперь нужно искать оптимальную емкость сразу нескольких кэшей, а вместе с этим еще и их число. В общем случае эта задача полностью не может быть разрешена, так как эффективности всей системы памяти зависит от характера решаемых задач.
4. Что такое кольца защиты?
Кольца защиты - архитектура информационной безопасности и функциональной отказоустойчивости, реализующая аппаратное разделение системного и пользовательского уровней привилегий. Структуру привилегий можно изобразить в виде нескольких концентрических кругов. В этом случае системный режим (режим супервизора или нулевое кольцо, так называемое "кольцо 0"), обеспечивающий максимальный доступ к ресурсам, является внутренним кругом, тогда как режим пользователя с ограниченным доступом - внешним. Традиционно семейство микропроцессоров x86 обеспечивает четыре кольца защиты.
Архитектуре колец защиты обычно противопоставляют системы, основанные на мандатной адресации, обеспечивающей доступ к объекту по его описанию (англ. Capability-based security).
Поддержка нескольких колец защиты была одной из революционных концепций, включённых в операционную систему Multics, предшественника сегодняшних UNIX-подобных операционных систем. Однако, большинство UNIX-систем используют только 2 кольца, даже если аппаратные средства поддерживают больше режимов центрального процессора.
Многие современные архитектуры центральных процессоров (включая популярную архитектуру x86) включают некоторые формы защиты. Но несмотря на это, операционная система Windows NT, также как и UNIX, полностью не используют эти возможности. Предшественница Windows NT операционная система OS/2 использовала три кольца: кольцо 0 для кода ядра и драйверов устройств, кольцо 2 для привилегированного кода (программы с доступом к операциям ввода-вывода), и кольцо 3 для непривилегированного кода (почти все пользовательские программы).
Оригинальная система Multics имела восемь колец защиты, но многие современные системы имеют, как правило, меньше. Процессор всегда знает, в каком кольце исполняется код, благодаря специальным машинным регистрам. В некоторых системах области виртуальной памяти также связаны с номерами колец, и более привилегированному кольцу даются специальные права (такие, как адресация реальной памяти в обход механизма виртуальной памяти).
Механизм колец строго ограничивает пути, с помощью которых управление можно передать от одного кольца к другому, а также предписывает ограничения на операции доступа к памяти, которые могут быть произведены внутри кольца. Обычно существует некоторая инструкция (шлюз), которая передаёт контроль из менее защищённого в более защищённое (с меньшим номером) кольцо; это известно как запрос супервизора во многих операционных системах, использующих кольцевую архитектуру. Этот механизм разработан для того, чтобы ограничить возможности случайного или намеренного нарушения безопасности.
Защита кольца может сочетаться с режимами процессора (режим master/kernel/privileged против режима slave/user/unprivileged) в некоторых системах. Операционные системы, выполняющиеся на аппаратном обеспечении, поддерживающем такие режимы, могут использовать оба способа защиты или только один из них.
Эффективное использование архитектуры колец защиты требует тесного взаимодействия между аппаратными средствами и операционной системой. Операционные системы, разрабатывающиеся так, чтобы они работали на большом количестве платформ, могут иметь различную реализацию механизма колец на каждой платформе. Часто модель безопасности упрощают до двух уровней доступа: уровня "ядра" и уровня "пользователя", даже если аппаратные средства обеспечивают большую степень детализации уровней выполнения.
Термином режим супервизора (Supervisor mode) разработчики и производители процессоров как правило называют наиболее привилегированный режим работы процессора. Чаще всего этот режим используется для выполнения кода ядра операционной системы. Обычно этот режим по функциональности соответствует 0-му кольцу защиты (Ring 0) в x86 процессорах, то есть предоставляет неограниченный доступ ко всем возможностям процессора, работе с периферией и так далее. Код, работающий в данном режиме, как правило, занимается управлением доступными аппаратными ресурсами, разделением их использования между отдельными задачами (процессами) и так далее, что и привело к такому названию режима.
Некоторые фирмы-разработчики и производители процессоров, например ARM, не используют классификацию режимов работы процессора в виде колец защиты. Тем не менее, у большинства современных процессоров (кроме простейших) как правило присутствует несколько режимов работы отличающихся друг от друга доступными в данном режиме привилегиями.
Некоторые современные процессоры могут предоставлять дополнительный режим работы, известный как режим гипервизора (Hypervisor mode). Как правило данный режим реализуется с целью поддержки технологий виртуализации на уровне аппаратного обеспечения. Это позволяет достигнуть не только одновременного выполнения нескольких задач, но и одновременного выполнения нескольких операционных систем на одном процессоре без существенных потерь производительности и без изменения самих операционных систем. Как правило при использовании данного режима полный доступ ко всем ресурсам возможен именно из режима гипервизора. В таком случае режим супервизора уже не является максимально привилегированным и ограничивает многие привилегированные операции. При выполнении привилегированных операций операционными системами в режиме супервизора управление передается специальной программе - гипервизору. Гипервизор осуществляет арбитраж использования имеющихся аппаратных ресурсов несколькими операционными системами аналогично тому как сами операционные системы осуществляют распределение ресурсов между несколькими задачами. По сути, гипервизор обычно является небольшим ядром, которое управляет распределением ресурсов между несколькими операционными системами и работает уровнем ниже, чем сами операционные системы. В силу этого в терминологии x86 данный режим часто условно называют кольцом ?1 (Ring ?1).
Режим системного управления (System Management Mode) - самый привилегированный режим выполнения на процессорах архитектуры x86/x86-64 (впервые появился в 386SL). Режим SMM (условно называемый "Кольцо - 2") более привилегированный, чем "Кольцо 0" и аппаратный гипервизор (VT/AMD-v)"Кольцо - 1". В этом режиме приостанавливается нормальное выполнение кода, и начинается выполнение специального кода из системного ОЗУ (SMRAM) недоступного в других режимах. Этот код получает доступ ко всей системной памяти, включая ядро и память гипервизора.
Йоанна Рутковская опубликовала информацию об уязвимости "Blue Pill", позволяющей выполнить произвольный код в режиме SMM.
Впервые режим SMM был реализован в МП 80386SL и i486SL. Начиная с Intel-486, этот режим стал обязательным элементом архитектуры IA-32. Режим SMM предназначен для выполнения некоторых действий с возможностью их полной изоляции от операционной системы. Процессор переходит в этот режим только аппаратно по сигналу SMI#. Никакого программного способа для перехода в этот режим не предусмотрено. При возникновении SMI прерывания код SMI обработчика выполняется в отдельном адресном пространстве (SMRAM). На время перехода в SMI режим контекст прерванного процесса сохраняется. Во время выполнения SMM обработчика все прерывания отключены. Код SMI обработчика может выполняться только в SMRAM памяти.
В 2006 году Лоик Дюфло (Loпc Duflot) представил очень любопытную атаку против механизма уровней безопасности OpenBSD, которая использовала режим SMM. В то время SMM режим не был защищен и существовала возможность записать в SMRAM произвольный код. Но затем производители систем начали защищать режим SMM. Для хранения исполняемого в SMM кода была выделена специальная область памяти, названная SMRAM, которая получила особую защиту со стороны чипсета (Memory Controller Hub, если быть точным). На большинстве современных систем уже весьма нетривиально выполнить код с привилегиями SMM. Для этого нужно найти "дыру" в чипсете или BIOS (даже если у нас есть доступ на уровне ядра). На самом деле, на Black Hat 2008 в Лас-Вегасе Шерри Спаркс (Sherri Sparks) и Шон Эмблтон (Shawn Embleton) сделали презентацию о руткитах SMM, но при этом ясно дали понять, что их руткиты можно загрузить только на старых системах (до 2006 года). Также на конференции обсуждалась "дыра" в BIOS Intel, которая позволяла выполнять произвольный код в режиме SMM. Затем были обнаружены ещё два способа пробиться в режим SMM на различных системах. Другая атака, которую обнаружили в конце 2008 года, срабатывала на большом количестве систем Intel (и потенциально на машинах со старыми BIOS).
Руткиты SMM (или руткиты кольца ?2) требуют доступа к сильно защищённой памяти SMM, и на большинстве современных систем атакующему придётся использовать "дыры" (найти их весьма нетривиально).
Атаки SMM разрабатываются под конкретную версию BIOS (или линейку BIOS) и семейство чипсетов, например, для линеек 3-й или 4-й серии чипсетов Intel (т.е. атаки на Q35 и Q45, либо атаки на AMI и AWARD BIOS различны).
Invisible Things Lab предложила называть функциональность технологии Intel vPro / Intel AMT кольцом - 3. В рамках этой технологии чипсеты, поддерживающие технологию vPro, содержат независимый микропроцессор (архитектура ARC4), имеют отдельный интерфейс к сетевой карте, эксклюзивный доступ к выделенному участку ОЗУ (16 МБ), DMA-доступ к основной ОЗУ. Программы на нём выполняются независимо от центрального процессора, прошивка хранится совместно с кодами BIOS либо на аналогичной флеш-памяти SPI (код имеет криптографическую подпись). Частью прошивки является встроенный веб-сервер. По умолчанию AMT выключен, но часть кода все же работает в этом режиме даже при выключенном AMT. Код кольца - 3 активен даже в режиме питания S3 Sleep.
5. Основные особенности логических переменных. Операции над логическими переменными
Логической переменной будем называть такую переменную, которая может принимать лишь два фиксированных значения.
Эти значения принято кодировать символами "0" - логический нуль ("ложь") и "1" - логическая единица ("истина"). Логические переменные обычно выражают наличие или отсутствие какого-либо факта. Значение логической переменной в технике часто представляют уровнями электрического напряжения. Высоким (H - уровень) и низким (L - уровень). L - уровень близок к нулю, H - уровень близок к напряжению источника питания. Обычно H - уровень соответствует логической единице, а L - уровень логическому нулю. В этом случае говорят о позитивной или положительной логике. Если же принято противоположное соответствие, то имеет место отрицательная (негативная) логика. Мы далее будем пользоваться позитивной логикой.
Любой бит, обрабатываемый цифровым устройством двоичного кода можно рассматривать как логическую переменную. Логические переменные могут образовывать логические функции. Правило образования и преобразования логических функций рассматривает специальная математическая дисциплина - алгебра логики.
Основными функциями (операциями) алгебры логики считают:
1. логическое отрицание;
2. логическое сложение;
3. логическое умножение.
Любые другие логические функции могут быть представлены комбинациями основных. Кроме основных часто используют операции Пирса и Шеффера, а также операцию "исключающее ИЛИ".
6. Программная модель процессора с архитектурой IA-64
При программном вводе/выводе контроллерами управляет ПР при помощи программы (драйвера) ввода/вывода. Программы этого типа учитывают конструкцию контроллера и используемого в вычислительной системе ПР и обычно входят в базовую систему программ управления вводом/выводом на физическом уровне (в РС - BIOS). Программы BIOS выполняют роль интерфейса между программами операционных систем и используемой аппаратурой вычислительной системы и обеспечивают переносимость операционных систем между ЭВМ с одинаковыми процессорами.
При программировании процедур ввода/вывода учитывается адресация регистров контроллера устройств ввода/вывода. Порты могут быть отображены на общее адресное пространство оперативной памяти (адресация портов большинства архитектур процессоров) или на отдельное номерное пространство портов ввода-вывода.
В варианте ввода/вывода с отображением адресов портов в пространство оперативной памяти для процессора регистры RD неотличимы от ячеек памяти и для доступа к ним можно использовать любую команду с обращением к ОП. В этом варианте для отдельных операций ввода/вывода достаточно использования команды пересылки MOV.
Команда MOV для PDP-11 имеет вид:
MOV A1, A2, где:
· А1 - адрес источника,
· А2 - адрес приемника.
Если в качестве А1 использовать адрес RD, а в качестве А2 - адрес ячейки ОП, то команда реализует передачу информации из ПУ в ОП (операция ввода). При этом производится передача из ПУ в ПР, а затем из ПР в ОП. Нетрудно заметить, что используя в качестве А1 и А2 адреса РД, ОП и РОН, можно организовать все возможные варианты передачи информации, включая операции загрузки РОН, как из ОП, так и из портов.
Если в программной модели процессора регистры контроллеров отображены на номерное пространство портов (например, в МП IA), то в состав команд процессора вводят команды ввода IN и вывода OUT. Для IBM PC эти команды имеют вид:
IN al, dx
OUT dx, al
где: al - Р0Н (младшей байт аккумулятора), используется в качестве буфера для передаваемых данных,
dx - РОН, используется для задания номера порта.
Если номер порта не превышает 255, то возможно использование команд ввода/вывода в формате:
IN al, RD
OUT RD, al
где:
· al - аккумулятор, используется в качестве буфера для передаваемых данных,
· RD - номер порта.
Используя эти команды, можно запрограммировать различные варианты передачи информации при вводе/выводе. Например, передачу информации из ПУ в ОП (ввод) можно реализовать при помощи программы:
A_IN1: MOV dx, RD; задание номера порта RD
IN al, dx; пересылка содержимого RD в аккумулятор
MOV TABLE, al; пересылка данных из аккумулятора в ; ячейку TABLE оперативной памяти
или для RD < 256
A_IN2: IN al, RD; пересылка данных из порта в аккумулятор
MOV TABLE, al; пересылка данных в ОП
Приведенные блоки программы организуют передачу байта данных из ПУ в ОП и реализуют способ безусловной программной организации ввода. Безусловный программный вывод организуется аналогичным образом, но c использованием команды вывода.
Самостоятельное применение этих способов ввода/вывода ограничено тем, что они не учитывают независимость работы ПР и ПУ. Из-за отсутствия синхронизации передачи данных между ПУ и ПР возможна потеря информации или передача необновленных данных. Программы безусловного ввода/вывода обычно используются как часть условных способов ввода/вывода, учитывающих независимость работы ПУ и ПР.
8. Что такое файл? Отличия между фалом и каталогом
Файл (англ. file) - поименованная область на носителе информации.
Работа с файлами реализуется средствами операционных систем. Многие операционные системы приравнивают к файлам и обрабатывают сходным образом и другие ресурсы:
· области данных (необязательно на диске);
· устройства - как физические, например, порты или принтеры, так и виртуальные (генератор случайных чисел);
· потоки данных (именованный канал);
· сетевые ресурсы, сокеты;
· прочие объекты операционной системы.
В 1952 году слово file отнесли к колоде перфокарт. Поначалу словом file называли само устройство памяти, а не его содержимое (см. Регистровый файл). Например, диски IBM 350, использовавшиеся, например, в машине IBM 305, назывались disk files. Системы наподобие Compatible Time-Sharing System ввели концепцию файловой системы, когда на одном запоминающем устройстве существует несколько виртуальных "устройств памяти", что и дало слову "файл" современное значение. Имена файлов в CTTS состояли из двух частей, "основного имени" и "дополнительного имени" (последнее существует и поныне как расширение имени файла).
По мере развития вычислительной техники файлов в системах становилось всё больше. Для удобства работы с ними, их, как и другие данные, стали организовывать в структуры (тогда же появились символьные имена). Вначале это был простой массив, "привязанный" к конкретному носителю информации. В настоящее время наибольшее распространение получила древовидная организация с возможностью монтирования и вставки дополнительных связей (то есть ссылок). Соответственно, имя файла приобрело характер пути к файлу: перечисление узлов дерева файловой системы, которые нужно пройти, чтобы до него добраться.
Операционная система предоставляет приложениям набор функций и структур для работы с файлами. Возможности операционной системы накладывают дополнительные ограничения на ограничения файловой системы. С точки зрения API файл - объект, по отношению к которому могут быть применены функции этого API. На уровне API уже не существенно, существует ли файл как объект файловой системы или является, например, устройством ввода-вывода.
Отличие между фалйлом и каталогом заключается в том что файл-поименованная совокупность байтов произвольной длины, находящихся на носителе информации, а каталог это - поименованное место на диске, в котором хранятся файлы
9. Влияние условных переходов на продуктивность конвейера процессора
В современных ЭВМ очень широко используются различные варианты конвейерного способа выполнения операций, что существенно повышает их производительность. Пример конвейерного способа выполнения микропроцессором операции сложения двух операндов в ОП. Две команды: вызов первого операнда в аккумулятор; вызов второго операнда и сложение. В процессе выполнения 1-й команды можно использовать ресурсы МП во время ожидания ответа ОП. Т.Е. вместо пассивного режима ожидания МП инициировал новый цикл обмена с ОП для вызова 2-й команды. По соответствующим сигналам готовности ОП последовательно заканчиваются 1-й и 2-й циклы обращения к памяти и выполняется операция сложения. При этом время каждого обращения к ОП не уменьшается, но суммарное время выполнения двух команд оказывается меньше за счет их перекрытия во времени.
В общем случае конвейерный принцип позволяет процессору параллельно выполнять множество команд. Последовательность выполнения каждой команды разделяется в процессоре на основные операции. Для выполнения операций каждого типа служат специализированные исполнительные устройства.
Наиболее общий прием конвейеризации заключается в том, что во время выполнения предыдущей команды с упреждением производится выборка из памяти очередной команды. Тем самым достигается рациональное использование времени работы шины.
В реальных программах максимальная производительность не достигается из-за:
различные продолжительности этапов выполнения команды, что вынуждает выбирать такт работы конвейера соответствующим продолжительности самого "медленного" этапа.;
использование не в каждой команде всех исполнительных блоков, что требует дополнительных временных затрат на работу специальных переключающих схем;
нарушение последовательности выполнения команд программы при передаче управления или при прерывании.
Нарушение последовательного выполнения команд влечет за собой очистку конвейера от команд, выполнение которых началось после команды, нарушившей эту последовательность (торможение конвейера), и повторного заполнения конвейера командами с новой точки программы (разгон конвейера).
Наличие команд передачи управления и, в частности, команд условных переходов оказывает существенное влияние на производительность конвейера команд. Уменьшение этого влияния:
прогнозировании направления перехода по косвенным признакам;
одновременной обработке команд по обоим направлениям перехода;
выборе направления перехода на основании анализа статистики ранее совершенных аналогичных переходов в теле цикла;
выборе случайного направления перехода;
методе "отложенных переходов", при котором на этапе компиляции после команды условного перехода размещаются команды, не связанные с направлением перехода.
Но реальные устройства ОП не допускают одновременного обращения к нескольким ячейкам. Выйти из этого положения позволяет метод Расслоения памяти. Известны два основных метода расслоения памяти. Суть этих методов состоит в том, что память строится на основе нескольких модулей. Но в одном случае модули памяти имеют раздельные адресные пространства (независимая адресация), а в другом - модули охвачены общим полем адресов и образуют единое адресное пространство
10. Cтруктура компьютера с процессором, который имеет встроенный контроллер оперативной памяти
Термин встроенный контроллер памяти начал применяться к процессорам, после того как компания AMD в новую линейку процессоров К8 встроила контролёр памяти. ЦП берет данные для обработки из ОЗУ (оперативного запоминающегося устройства). И от пропускной способности и скорости передачи зависела производительность. Процессор работал по следующей схеме: "Процессор - Чипсет - Оперативная память". И выбросив лишнее звено можно было получить прирост в производительности компьютера. Со встроенным контроллером памяти в процессор предыдущая схема выглядит так: "Процессор - Оперативная память".
Естественно, Intel пришлось вслед за AMD использовать эту технологию и для своих процессоров и что бы конкурировать на рынке они выпустили трехканальный контроллер (DDR3). До этого AMD выпустила два процессора - Socket 754 и Socket 939. Они отличаются только видом контроллера памяти, никаких изменений архитектуры у них нет.754 обладает одноканальным контролером, тогда как 939 - двухканальным. Отсюда вытекает очень важный принцип: если использовать две планки памяти, система на Socket 939 будет показывать пиковую пропускную способность памяти в два раза больше, чем на Socket 754.
И как следствие: при использовании процессоров с трехканальным контроллером DDR3, для получения максимальной производительности, надо использовать минимум 3 планки ОЗУ.
На некоторых конфигурациях с процессорами Core i7, при установке памяти DDR3, можно получить пропускную способность примерно равную 32 Гбайт/с. Кроме преимущества в пропускной способности, контроллер существенно снижает задержки доступа в памяти, а учитывая что доступ стоит несколько сотен тактов это позволяет экономить ресурсы процессора.
При обращении к оперативной памяти напрямую, без лишнего звена - чипсета и системной шины, латентность снизилась в полтора-два раза и почти в два раза повышается пропускная способность подсистемы памяти.
Для материнских плат под Socket AM2+ в BIOS'е доступна опция управления режимом работы встроенного контроллера памяти AMD Phenom. Это опция имеет два режима - "Ganged" ("спаренный") и "Unganged". Как видно из теста http://www.ixbt.com/cpu/amd-phenom-x4-9850-ganged-unganged. shtml "Влияние режимов контроллера памяти на быстродействие AMD Phenom X4 в реальных приложениях" прирост в производительности незначительный.
Список литературы
1. Рязанцев О.І., Недзельський Д.О., Гусєва С.В. Архітектурна та структурна організація обчислювальних систем. Навчальний посібник. - Луганськ: Вид-во. СНУ ім.В. Даля, 2008. - 388 с.
2. Цилькер Б.Я., Орлов С.А. Учебник для вузов. - СПб.: Питер, 2004. - 668 с.
3. К. Хамахер, З. Вранешич, С. Заки. Организация ЭВМ, 5 - изд. СПб. Питер 2003 - 847с., ил.
4. Э. Танненбаум. Архитектура компьютера, 4-изд. СПб. Питер 2006. - 700 с., ил.
Размещено на Allbest.ru
...Подобные документы
Оперативная память как один из главных компонентов компьютера. Роль и значение оперативной памяти в качестве буфера между центральным процессором и винчестером. Факторы, влияющие на производительность всего компьютера. Общая характеристика SRAM и DRAM.
эссе [25,5 K], добавлен 09.12.2014Классификация компьютерной памяти. Использование оперативной, статической и динамической оперативной памяти. Принцип работы DDR SDRAM. Форматирование магнитных дисков. Основная проблема синхронизации. Теория вычислительных процессов. Адресация памяти.
курсовая работа [1,5 M], добавлен 28.05.2016Обобщение основных видов и назначения оперативной памяти компьютера. Энергозависимая и энергонезависимая память. SRAM и DRAM. Триггеры, динамическое ОЗУ и его модификации. Кэш-память. Постоянное запоминающее устройство. Флэш-память. Виды внешней памяти.
курсовая работа [1,7 M], добавлен 17.06.2013История появления и развития оперативной памяти. Общая характеристика наиболее популярных современных видов оперативной памяти - SRAM и DRAM. Память с изменением фазового состояния (PRAM). Тиристорная память с произвольным доступом, ее специфика.
курсовая работа [548,9 K], добавлен 21.11.2014Изучение устройства и назначения оперативной памяти как части системы компьютерной памяти, предназначенной для временного хранения данных при выполнении операций процессором ПК. Произвольный доступ и характеристика основных типов ОЗУ: DIMM, DDR, FTM, EDO.
презентация [3,9 M], добавлен 03.03.2011Аппаратные средства вычислительной техники. Центральный процессор. Память как составляющая компьютера, ее типичная иерархическая структура. Устройства ввода-вывода, шины. История развития средств вычислительной техники. Характеристика систем на основе Р6.
реферат [251,3 K], добавлен 08.02.2014Память персонального компьютера, основные понятия. Характеристика внутренней и внешней памяти компьютера. Логическое отображение и размещение. Классификация компьютерной памяти по назначению, по удаленности и доступности для центрального процессора.
контрольная работа [1,8 M], добавлен 27.11.2010Процессор как важная часть компьютера. Частота центрального процессора. Встроенный контроллер памяти. Основные технические характеристики мониторов. Технологический процесс изготовления процессора. Основные группы стандартов и рекомендаций на мониторы.
реферат [17,2 K], добавлен 01.04.2010Понятие, виды и основные функции памяти компьютера - части вычислительной машины, физического устройства для хранения данных, используемых в вычислениях, в течение определенного времени. Принципиальная схема оперативной памяти. Гибкие магнитные диски.
презентация [947,6 K], добавлен 18.03.2012Память персонального компьютера, виды и их характеристика. Классификация памяти компьютера. Кэш память как память с большей скоростью доступа, предназначенная для ускорения обращения к данным. Гибкие магнитные диски, CD-ROM, DVD-ROM и флэш-память.
презентация [1,8 M], добавлен 15.11.2011История развития информатики и вычислительной техники. Общие принципы архитектуры ПЭВМ, ее внутренние интерфейсы. Базовая система ввода-вывода. Материнская плата. Технологии отображения и устройства хранения информации. Объем оперативной памяти.
презентация [9,3 M], добавлен 26.10.2013Разновидности, производительность современных процессоров. Предназначение оперативной памяти. Микросхемы персонального компьютера. Постоянное запоминающее устройство. Тактико-технических характеристики процессоров. Перспективы развития памяти компьютера.
реферат [61,9 K], добавлен 22.11.2016Простейшая схема взаимодействия оперативной памяти с ЦП. Устройство и принципы функционирования оперативной памяти. Эволюция динамической памяти. Модуль памяти EDO-DRAM BEDO (Burst EDO) - пакетная EDO RAM. Модуль памяти SDRAM, DDR SDRAM, SDRAM II.
реферат [16,1 K], добавлен 13.12.2009Анализ истории развития вычислительной техники. Сравнительные характеристики компьютеров разных поколений. Особенности развития современных компьютерных систем. Характеристика компиляторов с общей семантической базой. Этапы развития компьютерной техники.
презентация [2,5 M], добавлен 15.11.2012Компьютер, программа, интерфейс. Состав компьютерной системы. От информации к данным. Оперативная память компьютера. Регенерация оперативной памяти. Память на магнитных дисках. Структура данных на магнитном диске. Размещение файлов на жестком диске.
реферат [16,5 K], добавлен 23.11.2003Изучение свойств оперативной памяти, являющейся функциональной частью цифровой вычислительной машины, предназначенной для записи, хранения и выдачи информации, представленных в цифровом виде. Характеристика объема разных видов оперативной памяти.
реферат [24,0 K], добавлен 30.12.2010Блок-схема, отражающая основные функциональные компоненты компьютерной системы в их взаимосвязи. Устройства ввода-вывода информации. Определение объема оперативной памяти. Применение карт памяти и flash-дисков для долговременного хранения информации.
презентация [5,3 M], добавлен 28.01.2015Обеспечение непосредственной связи контроллера прямого доступа к памяти (ПДП) и памяти микроЭВМ. Совместное использование шин системного интерфейса процессором и контроллером. Последовательность и алгоритм программирования контроллера прямого доступа.
реферат [122,6 K], добавлен 13.11.2009Классификация основных видов памяти компьютера. Использование оперативной памяти для временного хранения данных, используемых для работы программного обеспечения. Расчет потребления электроэнергии, формирование квитанции для потребителя в Microsoft Excel.
курсовая работа [1,5 M], добавлен 23.04.2013Понятие и функциональные особенности запоминающих устройств компьютера, их классификация и типы, сравнительная характеристика: ROM, DRAM и SRAM. Оценка преимуществ и недостатков каждого типа оперативной памяти, направления и пути их использования.
презентация [118,1 K], добавлен 20.11.2013