Автор работы: Пользователь скрыл имя, 18 Сентября 2013 в 02:14, реферат
Архітектура комп'ютерів – це дисципліна, що вивчає апаратну частину комп'ютера (цифровий ЕОМ): процесори, пам'ять (оперативна, постійна), тверді диски, системні і локальні шини, пристрої введення-висновку. У конспекті лекцій приводиться архітектура сучасних ЕОМ, розглядаються характеристики і типи процесорів, види оперативної і постійної пам'яті, характеристики і робота нагромаджувачів на твердих дисках (вінчестери), приведені типи і різновиди системних і локальних шин, а також розглянуті пристрою вводу-виводу.
Thunderbіrd – найменування ядра процесорів Athlon, випущених за технологією 0,18 мкм із використанням технології мідних з'єднань. На чипе інтегровані 256 Кбайт полноскоростного exclusіve кэша L2. ЯК перехідний варіант якийсь час випускався у формі-факторі Slot A. Однак основним формою-фактором є Socket A. Модель з частотою 1,33 ГГЦ демонструє велику продуктивність на офісних задачах, чим процесор Іntel Pentіum 4 з частотою 1,7 Ггц. Технологічний потенціал ядра Thunderbіrd надає можливість випуску виробів з частотою до 1,5 Ггц.
Athlon – найменування процесорів, створених на основі архитектур K7, ДО75, ДО76, Thunderbіrd у варіантах Slot A і Socket A (Socket 462). Високопродуктивні процесори, орієнтовані на сектор комп'ютерів Hіgh-End.
Duron – найменування лінійки процесорів, орієнтованих на сек-тор комп'ютерів Low-End. Є конкурентами процесорів Celeron, однак мають меншу ціну і більшу продуктивність при рівних робочих частотах. Побудовані на варіанті ядра Thunderbіrd з урізаної до 64 Кбайт кешпам'яттю L2. Випускаються тільки у форміфакторі Socket A.
Поява системи переривання в
комп'ютерах кінця 50-х років дозволило
істотно просунутися в
Роботу обчислювальної системи можна представити як послідовність программно-определяемых (породжуваною програмою і можливі моменти появи яких відомі) і програмно-незалежних (викликаних сторонніми від програми чи джерелами моменти виникнення яких невідомі) подій.
Події, що відбуваються поза процесором, як правило, програмно-незалежні (вихід параметрів об'єкта за дозволені межі, запити оператора і т.д. ) і відбуваються асинхронно. Те ж відноситься і до периферійних пристроїв, що працюють одночасно з виконанням програми в процесорі, хоча початок їхньої роботи і задає процесор, однак закінчення її і послідовність операцій невідомі.
Події, що відбуваються усередині процесора, можуть бути двох типів. Послідовність арифметичних операцій визначається програмою, у той час як особливі ситуації (переповнення, спроба розподілу на нуль і т.д. ) залежать від сполучення операндов і передбачити їх під час програмування практично неможливо. ЕОМ, узагалі говорячи, повинна реагувати на будь-які події, що можуть уплинути на процес обчислень. У випадку программно-определяемых подій для цього досить мати спеціальний набір команд (перехід по нулі, за знаком і т.д) Якщо ж події програмно-незалежні, то, як правило, неефективно використовувати звичайні програмні методи для їхнього упізнання.
Припустимо, що ми ввели команду переходу по якій-небудь програмно-незалежній події, тоді
Повторення періодичної перевірки виконання необхідної умови називають "скануванням входів". Якщо сканування виробляється, наприклад, через 25 команд, то обсяг пам'яті для програми збільшується на 4 %, а реакція на подію може відбутися з великою затримкою (максимум через 25 команд). При великій кількості умов, що перевіряються, це сильно утрудняє роботу програміста.
Щоб ЕОМ могла реагувати на програмно-незалежні
події при мінімальних зусиллях
програміста і максимально
Визначення. Переривання програми – це властивість ВР при виникненні особливих подій тимчасово припинити виконання поточної програми і передати керування програмі, спеціально передбаченої для обробки даної події.
У системі з перериванням кожна програмно-незалежна подія (джерело переривання) повинне, якщо воно може вплинути на хід обробки, супроводжуватися сигналом, що говорить про його виникнення. Назвемо ці сигнали запитами переривання. Програми, викликані запитами переривання, назвемо програмами, що переривають, на відміну від перерваних програм, що виконувалися комп'ютером до появи запитів переривання. Тимчасову діаграму процесу переривання можна спрощено зобразити так (рис. 6.1).
Тому що функції по збереженню і відновленню стану перерваної програми покладаються на саму програму, що перериває, те остання повинна складатися з трьох частин: підготовчої і відбудовний, що забезпечують перехід до потрібної програми, і власне перериває програми.
По закінченні роботи програми, що перериває, перехід може бути здійснений або до перерваної програми, або до іншої програми, що перериває.
Тому що всілякі запити на переривання виробляються незалежно й асинхронно, те можливі такі ситуації:
Отже, повинний бути організований порядок, у якому запити, що надійшли, задовольняються. Якщо у ВР маються засоби для обслуговування запитів у порядку привласненого їм пріоритету, то такі системи переривання називаються пріоритетними.
СПП, як правило, виконують наступні основні функції:
Для порівняння різних СПП використовуються найчастіше наступні параметри їхнього функціонування:
Схема переривання при виконанні програм, що переривають, зображена на рис. 6.2.
Ясно, чим більше глибина переривання, тим краще можна врахувати пріоритетне обслуговування. Так, якщо при глибині переривання n0 прийшла
n0+1-я програма, коли виконується
n-і переривання, причому n0+1-
Вхід у програму, що перериває
Система переривання програм повинна визначити припустимий момент переривання поточної програми і початкова адреса програми, що перериває. Найбільш простими є три наступних способи визначення припустимого моменту переривання.
Метод позначеного оператора (опорних крапок). Суть методу полягає в наступному. У спеціальні розряди команд, після яких допускається переривання, записується визначений знак, що дозволяє (наприклад, стан "1" спеціального біта команди) чи що забороняє (наприклад, стан "0") переривання. Тоді уздовж програми можна розставити всі опорні крапки. Тут бажано так розставити крапки переривання, щоб інформація, що знаходиться в регістрах процесора після виконання даної команди, далі не використовувалася. Це зменшує час обслуговування, але збільшує час реакції.
Покомандный спосіб. Тут переривання допускається після виконання будь-якої команди. Спосіб простий у реалізації. При цьому tр зменшується, а tобс збільшується.
Метод швидкого реагування. Переривання допускається під час виконання будь-якої команди, тобто після виконання чергового її такту. Тут tр mіn, а tобс max, тому що треба запам'ятовувати і потім відновлювати деякі звичайно програмно-недоступні елементи (наприклад, лічильник тактів і т.п. ).
Через простоту і вдале сполучення характеристик переривання найбільше поширення одержав другий спосіб, хоча в останніх ВР використовується і третій. Так, якщо виявлено, що адреса операнда сформована невірно, те доцільно відразу ж перервати виконання операції, щоб помилка не поширилася на інші такти. Це необхідно при мультипрограмній роботі, якщо адресований операнд у команді належить зовнішньої пам'яті. Тут поточна операція не може бути продовжена, поки оперативна пам'ять не одержить дані з Внп.
Розпізнавання початкової адреси програми, що перериває, можна здійснювати як програмним, так і апаратним способом.
Суть програмного
Загальна схема роботи програми, що перериває, приведена на рис. 6.3.
Тому що відбувається аналіз запитів переривання, то tp і tобс порівняно великі, що утрудняє пріоритетне обслуговування.При апаратному розпізнаванні причин переривання кожному джерелу переривання ставиться у відповідність своя адреса початку програми, що перериває. Спеціальна схема з появою запиту формує відповідний адресу переходу до програми, що перериває.
Вхід системи переривання, що володіє здатністю формувати власна адреса початку програми, що перериває, прийнято називати рівнем переривання.
Таким чином, система з апаратним розпізнаванням причин переривання може бути названа багаторівневою системою переривання.
Найпростіший спосіб указівки початкових адрес полягає в наступному. Кожному рівню привласнюється номер і в пам'яті приділяється осередок, адреса якого, приміром , дорівнює номеру рівня. У такій комірці пам'яті може зберігатися команда переходу до іншої частини програми, що перериває, що може знаходитися в будь-якім місці пам'яті. Набір фіксованих стосовно своїх рівнів комірок пам'яті утворить таблицю входів у програми, що переривають, зміст яких може змінювати програміст.
Зручний компроміс досягається від сполучення апаратного і програмного методів розпізнавання причин переривання. Можна організувати систему, у якій кожен рівень використовується для обслуговування декількох джерел переривання, а фізично рівень реалізується у виді деякої кількості входів, що переривають, об'єднаною ЧИ схемою. Наприклад, що керує машина ІBM 1800, використовуючи подібний компроміс, має 24 рівня переривання, до кожного з який може приєднуватися до 16 входів, що переривають. У визначену для даного рівня переривання комірку пам'яті записується стан входів, що переривають, у момент переривання.
Апарат пріоритетів
При програмному розпізнаванні причин переривання програма, що перериває, починає аналіз з тих запитів на переривання, що мають більш високий пріоритет. При цьому в процесі роботи ми можемо программ-ным шляхом змінити пріоритет запитів. При апаратному розпізнаванні причин переривання зазначені функції покладаються на спеціальне оборудование.
Поняття пріоритету в перериванні програм має два змісти. Припустимо, що ніяких обмежень на час надходження запитів переривання не накладається. При одночасному надходженні декількох запитів для негайного задоволення може бути прийнятий тільки один. Цей тип пріоритету, що визначає черговість розгляду запитів переривання, називають пріоритетом між запитами переривань. Програми, що переривають, однак, можуть мати щодо поточної програми різний ступінь важливості, і не будь-яким запитом може бути перервана програма, що виконується. Щоб мати можливість перервати поточну програму, прийнятий СПП запит повинний відповідати програмі більш важливої, ніж виконувана в даний момент. Цей тип пріоритету визначає старшинство програм і його звичайно називають пріоритетом між програмами, що переривають.
У випадку найпростішої апаратної реалізації пріоритету між запитами переривання може бути використаний метод "послідовного пошуку" (рис. 6.4).
Суть методу складається в послідовній зміні вмісту лічильника від 0 до 2n – 1 і перегляді всіх 2n рівнів переривання до збігу вмісту лічильника з номером рівня.
З одночасною появою декількох запитів жорстко закріплюється запит з рівня з меншим номером. Метод "послідовного пошуку" простий у реалізації, але час реакції великий, тому що в загальному випадку необхідне проходження лічильником усіх 2n позицій, що при великому n може виходити за припустимі тимчасові межі. Особливо це важливо при роботі в режимі реального часу.
Пріоритет між програмами, що переривають, визначає, які з програм можуть перервати дану програму, а які немає. Цей вид пріоритету для багаторівневих систем з достатньою глибиною переривання має набагато більше значення, чим пріоритет між запитами переривання.