Шпаргалки (двухсторонние) по курсу «Архитектура эвм»





НазваниеШпаргалки (двухсторонние) по курсу «Архитектура эвм»
страница11/11
Дата публикации21.08.2013
Размер1.25 Mb.
ТипДокументы
100-bal.ru > Информатика > Документы
1   2   3   4   5   6   7   8   9   10   11

47. Виртуальная память в процессоре Pentium II
Режим работы этого процессора. Pentium II имеет сложную систему виртуальной памяти, которая использует вызов страниц по требованию, чистую сегментацию и сегментацию с разбиением на страницы. Виртуальная память поддерживается двумя видами таблиц: LDT (Local Descriptor Table - локальная таблица дескрипторов) и GDT (Global Descriptor Table - глобальная таблица дескрипторов). Каждая программа имеет свою собственную LDT, а единственная GDT разделяется всеми выполняющимися программами. Таблица LDT описывает локальные сегменты каждой программы (ее код, данные, стек и т. д.), а таблица GDT описывает системные сегменты, в том числе саму операционную систему.

Чтобы получить доступ к сегменту, Pentium II вначале загружает селектор сегмента в один из сегментных регистров. Во вре­мя выполнения программы регистр CS содержит селектор сегмента кода, DS - селектор сегмента данных, SS – селектор сегмента стека и т. д. Каждый селектор представляет со­бой 16-битное число.

Биты 0-1 связаны с защитой (уровень привилегий). Бит 2 селектора показывает, является сегмент локальным или глобаль­ным (то есть к какой из двух таблиц он относится: 1~LDT, 0~GDT). Оставшиеся 13 битов определяют номер соответствующего эле­мента в таблице дескрипторов, поэтому объем каждой из двух таблиц ограничен величиной 213 = 8К сегментных дескрипторов.

Дескриптор с номером 0 недействителен и при попытке использования вызывает ловушку. Тем не менее его можно загрузить в ре­гистр, чтобы показать недоступность сегмента.

Когда селектор загружается в сегментный регистр, соответствующий дескрип­тор автоматически выбирается из LDT или GDT и сохраняется во внутренних регистрах контроллера управления памятью, поэтому к нему можно быстро получить доступ. Дескриптор состоит из 8 байтов. Здесь содержится базовый адрес сегмента, его размер и другая информация. Формат селектора подобран с целью упростить нахождение дескриптора в таблице. Сначала на основе бита 2 в селекторе выбирается локальная таблица дескрипторов LDT или глобальная таблица дескрипторов GDT. Затем селектор копируется во временный регистр контроллера управления памятью (MMU), а три млад­ших бита принимают значение 0, в результате 13-битный индекс селектора умножа­ется на 8 (это и есть длина дескриптора). Наконец, к нему прибавляется адрес LDT или GDT (он хранится в одноименных внутренних регистрах MMU), и в результате получается указатель на дескриптор. Например, селектор 72 = 0x48 обращается к элементу 9 в глобальной таб­лице дескрипторов, который находится в ячейке с адресом GDT+72.

Бит S содержит признак системного объекта. Дело в том, что подобный механизм (таблица дескрипторов) используется не только для поддержки LDT и GDT. Аналогичную структуру имеет, например, таблица дескрипторов прерываний (IDT). Ее элементы определяют адреса обработчиков системных прерываний.

“Разбросанность” полей Base и Lim (их части – в двух словах) объясняется тем, что в ранних версиях процессоров (80286) эти поля были короче и затем расширялись с сохранением обратной совместимости. Во время работы процессора части полей объединяются. (на обороте…)

48. Виртуальная память в компьютере UltraSPARC II
Из-за огромного виртуального адресного пространства использование обычных таблиц стра­ниц (подобно Pentium II) было бы непрактичным. В UltraSPARC II применяется другой подход. Устройство управления памятью содержит таблицу - TLB (Translation Lookaside Buffer - буфер быстрого преобразова­ния адреса). Эта таблица отображает номера виртуальных страниц в номера фи­зических страничных кадров. Для страниц размером в 8К существует 231 номеров виртуальных страниц, то есть более двух миллиардов. Поскольку все они не мо­гут быть отображены, TLB содержит лишь номера самых последних использованных вирту­альных страниц. Страницы команд и данных обрабатываются отдельно. Для каждой из двух категорий в TLB хранятся номера 64-х последних виртуальных страниц. Элемент TLB содержит номер виртуальной страницы и соответствующий ему номер физического страничного кадра.

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

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

Операционная система может также сохранять наиболее часто используемые эле­менты буфера TLB в таблице под названием TSB (Translation Storage Buffer - буфер хранения преобразований). Эта таблица работает для виртуальных страниц подобно кэш-памяти прямого отображения (см. п. 4.3.1). Каждый 16-байтный элемент данной таблицы указывает на одну виртуальную страницу и содержит определенную информацию о ней (бит достоверности, номер контекста, тег виртуального адреса, номер физической страницы и несколько флаговых битов). Пусть, например, размер TSB составляет 8192 элемента (213). Тогда все виртуальные страницы, у которых младшие 13 битов виртуального адреса равны 0000000000000, будут претендовать в TSB на элемент 0. Аналогично страницы с последними цифрами адреса 0000000000001 соответствуют элементу 1 и т. д. Размер этой таблицы опреде­ляется программным обеспечением и передается в контроллер управления памя­тью через специальные регистры, доступные только операционной системе. (на обороте…)

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

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

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

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

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

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

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

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

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

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

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

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

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

Еще одно часто применяемое средство синхронизации – мьютексы. Мьютекс гарантирует нескольким процессам (или потокам) взаимоисключающий доступ к некоторому единственному ресурсу. Мьютекс может быть свободен или захвачен некоторым процессом. В последнем случае другие процессы для доступа к ресурсу должны ждать освобождения мьютекса. Логически мьютекс соответствует семафору с максимальным значением 1, однако его реализация существенно отличается. Мьютекс содержит идентификатор захватившего его процесса, и только этот процесс может освободить мьютекс. Кроме того, для мьютекса можно обычно задавать максимальное время ожидания. Еще одно отличие состоит в учете рекурсий: если процесс повторно пытается захватить мьютекс, то он не переводится в состояние “спячки”. Все проверки и изменения состояния мьютекса являются неделимыми операциями.









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

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


Заданная в выполняемой команде пара {селектор, смещение} с использованием дескриптора сегмента трансформируется в линейный адрес. Если при этом сегмент отсутствует (P=0), то срабатывает ловушка и операционная система загружает сегмент в память. Проверяется также, не выходит ли смещение за пределы сегмента (если выходит, то также срабатывает ловушка). Если сегмент находится в памяти, а смещение не выходит за границу, Pentium II прибавляет величину Base из дескриптора к смещению, в ре­зультате чего получается линейный адрес памяти.

Далее действует страничная организация. Если разбиение на страницы отключено (это определяется битом PG в регист­ре глобального управления CR0), линейный адрес интерпретируется как физический адрес и отправляется в память для чтения или записи. Если разбиение на страницы используется, то линейный адрес рассматривается как виртуальный и отображается в физический адрес с ис­пользованием таблиц страниц. Дополнительная слож­ность здесь состоит в том, что при 32-битном виртуальном адресе и страницах по 4К сегмент теоретически может содержать 1 миллион страниц.

Все таблицы имеют фиксированный размер, соответствующий величине одной страницы (1024 дескриптора по 32 разряда = 4Kb). Таким образом, таблицы сами могут загружаться и выгружаться. Одна таблица - каталог страниц - всегда находится в физической памяти. Ее абсолютный адрес содержится в регистре CR3.

Элемент таблицы страниц похож на элемент таблицы дескрипторов сегментов, но имеет более простую структуру. Он так же содержит базовый адрес (адрес страничного кадра - 20 битов, еще 12 младших считаются нулями), бит присутствия, бит обращения и т.д. Однако там нет полей типа и размера, т.к. все страницы одинаковы. Поле привилегий состоит всего из одного бита U/S (User - соответствует DPL = 3 / Supervisor - соответствует DPL = 0, 1, 2).

Линейный виртуальный адрес считается разбитым на три поля: DIR (биты 31-22, справа дополняются двумя нулями), PAGE (биты 21-12, также дополняются двумя нулями) и OFFSET (11-0). Поле DIR используется в качестве индекса в каталоге страниц для нахождения указателя на нужную таблицу страниц. Поле PAGE применяется как индекс в таблице страниц для нахождения физического адреса странич­ного кадра. Наконец, поле OFFSET прибавляется к адресу страничного кадра, и таким образом из линейного адреса полу­чается физический адрес нужного байта или слова.

Чтобы уменьшить количество повторных обращений к памяти, устройство управления па­мятью Pentium II (MMU) имеет аппаратную поддержку для хранения не­давно использовавшихся комбинаций DIR-PAGE и их отображения в физичес­кие адреса.

Взаимное расположение сегментов и страниц может быть произвольным. Сегменты могут пересекаться, начинаться с любого адреса. Сегмент может включать несколько страниц или содержаться внутри страницы. Страницы же всегда выровнены и расположены последовательно. Сегментация в 32-разрядном режиме Pentium действует всегда, в то время как страничное преобразование необязательно. Таким образом, страничная организация невозможна без сегментации. Если же некоторое приложение не нуждается в сегментации и до­вольствуется единым 32-битным адресным пространством со страничной органи­зацией, то это можно смоделировать. Все сегментные регистры могут быть заполнены од­ним и тем же селектором, дескриптор которого содержит поле Base=0, и поле Lim с максимальным значением. Смещения команд будут тогда линейными адресами в единственном адресном пространстве.














Чтобы распределить для файла пространство на диске, операционная система должна следить, какие блоки доступны, а какие уже заняты другими файлами. Один из способов - ­хранить список всех неиспользованных пространств, состоящих из смежных единичных блоков. Он называется списком свободной памяти. Альтернативный подход - сохранить битовое отображение, один бит на еди­ничный блок. Бит со значением 1 показывает, что соответствующий блок занят, а бит со значением 0 показывает, что блок свободен. Первый подход позволяет легко находить промежуток определенной длины, зато битовая карта имеет постоянный размер. Оба метода требуют, чтобы при записи или удалении файла поддерживающая структура (список раз­мещения или битовая карта) обновлялась.

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

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
















0. Навигатор
1. Понятие архитектуры ЭВМ. Языки, уровни и виртуальные машины.

2. Уровни архитектуры современных компьютеров.

3. Аппаратное и программное обеспечение. Роль микропрограммирования и ОС.

4. Поколения ЭВМ. Типы компьютеров.

5. Примеры семейств компьютеров: Pentium, UltraSPARC, picoJava.

6. Общие функции и свойства процессоров. Архитектуры CISC и RISC.

7. Возможности параллельного выполнения программ.

8. Основная память компьютера. Роль кэш-памяти.

9. Внешняя память компьютера: магнитные диски.

10. Внешняя память компьютера: компакт-диски.

11. Процесс ввода/вывода.

12. Терминалы, клавиатуры и мониторы.

13. Мыши. Принтеры.

14. Модемы. Цифровая телефония. Коды символов.

15. Вентили, булева алгебра и схемы.

16. Виды цифровых логических схем. Микросхемы процессоров.

17. Шины.

18. Примеры центральных процессоров: Pentium II.

19. Примеры центральных процессоров: UltraSPARC II.

20. Примеры центральных процессоров: picoJava II.

21. Примеры шин: ISA и PCI.

22. Примеры шин: USB. Микросхемы ввода-вывода.

23. Основы микроархитектуры. Направления разработки.

24. Увеличение производительности на микроархитектурном уровне.

25. Примеры микроархитектурного уровня: Pentium II.

26. Примеры микроархитектурного уровня: UltraSPARC II.

27. Примеры микроархитектурного уровня: picoJava II.

28. Обзор уровня команд: модели памяти и регистры.

29. Особенности уровня команд Pentium II.

30. Особенности уровня команд UltraSPARC II.

31. Особенности уровня команд JVM.








32. Типы данных. Принципы разработки форматов команд.

33. Форматы команд процессора Pentium II.

34. Форматы команд процессора UltraSPARC II.

35. Форматы команд JVM.

36. Обзор методов адресации.

37. Методы адресации Pentium II, UltraSPARC II и JVM.

38. Обзор типов машинных команд.

39. Ввод-вывод на уровне команд.

40. Команды процессора Pentium II.

41. Команды процессора UltraSPARC II.

42. Команды компьютера picoJava II.

43. Поток управления. Виды процедур.

44. Обзор архитектуры Intel IA-64.

45. Страничная организация памяти.

46. Сегментация памяти.

47. Виртуальная память в компьютере Pentium II.

48. Виртуальная память в компьютере UltraSPARC II.

49. Файлы.

50. Принципы параллельной обработки на уровне ОС.





Над шпаргалками работали:

Pakshin A. S.

Agent_007

dArt
Весь материал основан на электронных лекциях Махортова С. Д.
Впервые использованы на зимней сессии 2006-2007 учебного года
Copyright © 2007, Студенты
1   2   3   4   5   6   7   8   9   10   11

Похожие:

Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconУчебной дисциплины «Архитектура ЭВМ и вычислительных систем» предназначена...
Учебная дисциплина «Архитектура ЭВМ и вычислительных систем» является общепрофессиональной дисциплиной, формирующей базовый уровень...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconПеречень тем для реферата
Архитектура ЭВМ. Принцип Неймана. Основные устройства эвм, их назначение и характеристики
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» icon«архитектура ЭВМ и систем» Новосибирск сгга содержание
Эвм различных классов; параллельные системы понятие о многомашинных и многопроцессорных вычислительных системах; матричные и ассоциативные...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconУчебно-методический комплекс дисциплины архитектура компьютера (Архитектура...
Рындина Татьяна Николаевна, ст преподаватель кафедры Физики, информатики и информационных технологий
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconТемы рефератов по дисциплине: “Архитектура эвм”

Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconРеферат по курсу: Архитектура вс на тему: Архитектура квантовых компьютеров
Квантовые компьютеры на основе молекул органических жидкостей с косвенным скалярным взаимодействием между ними и методов ядерного...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconРеферат по курсу: Архитектура вс на тему: Архитектура квантовых компьютеров
Квантовые компьютеры на основе молекул органических жидкостей с косвенным скалярным взаимодействием между ними и методов ядерного...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconАрхитектура эвм, ос, вирусы
В программа, выполняющая тестирование компьютерной системы после включения компьютера
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconКонспект лекций по курсу "Микропроцессоры и микро-эвм в Персональной...
Целью настоящего курса является дать понятие о микропроцессорах и однокристальных микро-эвм, области их применения, дать основы функционирования...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» icon«Архитектура эвм»
Цель дисциплины: формирование систематизированных знаний в области архитектуры компьютера, организации компьютерных систем, программирования...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconТехническое обеспечение кит реферат
Сша и предназначалась для баллистических расчётов при стрельбе. Первая отечественная цифровая ЭВМ «мэсм» создана в 1950 г. Ход развития...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconАрхитектура ЭВМ и систем конспект лекций
Обучающие: Учить детей понимать эмоциональное состояние героев постановки, придавать физическим действиям куклы максимум выразительности...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconРеферата. Список элементов библиографической записи
Максимов, Н. В. Архитектура ЭВМ и вычислительных систем [Текст]: учеб для вузов / Н. В. Максимов, Т. Л. Партыка, И. И. Попов. — М.:...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconРабочая программа дисциплины «архитектура ЭВМ и вычислительных систем» (наименование дисциплины)
Составлена в соответствии с государственными требованиями к минимуму содержания и уровню подготовки выпускников по специальности...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconПрограмма по формированию навыков безопасного поведения на дорогах...
При этом на первый план выдвинулась концепция их взаимодействия. Так возникло принципиально новое понятие архитектура ЭВМ
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» icon“Внешние устройства персонального компьютера.”
Пу обеспечить поступление в ЭВМ из окружающей среды программ и данных для обработки, а также выдачу результатов работы ЭВМ в виде,...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск