АППАРАТНОЕ ОБЕСПЕЧЕНИЕ ЭВМ
Архитектура компьютера — это наиболее общие принципы построения ЭВМ, реализующие программное управление работой и взаимодействием основных ее функциональных узлов. Архитектура заключает в себе требования к функциональности и принципы организации основных узлов ЭВМ.
Основы учения об архитектуре вычислительных машин заложил выдающийся американский математик венгерского происхождения Д. Нейман. Ученый не только выдвинул в 1945 году основополагающие принципы логического устройства ЭВМ, но и предложил ее структуру.
Основные устройства компьютера по Нейману:
- • арифметико-логическое устройство (АЛУ), выполняющее арифметические и логические операции;
- • устройство управления (УУ), которое организует процесс выполнения программ;
- • запоминающее устройство, или память (ЗУ), для хранения программ и данных;
- • внешние устройства (ВУ) для ввода и вывода информации.
Основными принципами построения компьютеров фон-неймановской архитектуры являются:
- • принцип программного управления (программа состоит из набора команд, которые выполняются процессором автоматически друг за другом в определенной последовательности),
- • принцип однородности памяти (программы и данные хранятся в одной и той же памяти),
- • принцип адресности (структурно основная память состоит из пронумерованных ячеек; процессору впроизвольный момент времени доступна любая ячейка).
В истории развития вычислительной техники выделяют пять этапов, соответствующих пяти поколениям ЭВМ. Это весьма условная, нестрогая классификация вычислительных систем по степени развития аппаратных и программных средств, а также способов общения с ЭВМ.
Первое поколение (начало 50-х годов) было создано на основе вакуумных электронных ламп. Эти ЭВМ размещались в нескольких больших металлических шкафах, занимавших целые залы, управлялись с пульта и перфокарт с использованием машинных кодов.
Второе поколение (с конца 50-х годов) было создано на основе транзисторов. Улучшились по сравнению с ЭВМ предыдущего поколения все технические характеристики. Для программирования используются алгоритмические языки и Ассемблер.
Третье поколение (начало 60-х годов) выполнялось на микросхемах, содержавших на одной пластинке сотни или тысячи транзисторов. Пример машины третьего поколения — ЕС ЭВМ. Управление работой этих машин происходило с алфавитно-цифровых терминалов. Для управления использовались языки высокого уровня и Ассемблер. Данные и программы вводились как с терминала, так и с перфокарт и перфолент.
Четвертое поколение (с середины 70-х годов) было создано на основе больших интегральных схем (БИС). Наиболее яркие представители четвертого поколения ЭВМ — персональные компьютеры (ПК).
Пятое поколение (с конца 80-х годов) строятся на основе оптоэлектроники и криоэлектроники. В связи с появлением новой базовой структуры ЭВМ широко используются средства, разработанные в области искусственного интеллекта.
Примеры из теста
Основной принцип работы современного персонального компьютера был предложен .
Варианты ответа:
- 1) Говардом Эйкеном;
- 2) Чарльзом Бэббиджем;
- 3) Адой Августой Лавлейс;
- 4) Джоном Фон Нейманом.
Говард Эйкен — создатель гарвардской архитектуры ЭВМ, отличительным признаком которой является раздельное хранение и обработка команд и данных. Однако в современном компьютере rfr программы (команды), так и данные хранятся в одной и той же памяти (и кодируются в одной и той же системе счисления — чаще всего двоичной). Над командами можно выполнять такие же действия, как и над данными.
Чарльз Бэббидж — английский математик, изобретатель первой вычислительной машины. В 1833 г. разработал проект универсальной цифровой вычислительной машины — прообраза современной ЭВМ. Чарльз Бэббидж умер в возрасте 79 лет 18 октября 1871 года. Основной принцип работы был предложен в XX веке.
Ада Августа Лавлейс родилась в 1815 году и была первой в мире женщиной программистом. Основной же принцип работы персонального компьютера был предложен в 1946 году.
В 1945 году группа учёных во главе с Джоном фон Нейманом обосновали использование двоичной системы для представления данных в ЭВМ и выдвинули идею использования программами общей памяти.
Ответ: Джон Фон Нейман.
Логическая организация и структура аппаратных и программных ресурсов вычислительной системы составляет .
Варианты ответа:
1) системную шину; 2) чипсет; 3) топологию; 4) архитектуру.
Системная шина — это набор проводников, по которым передаются адреса, данные и сигналы управления между устройствами компьютера. Чипсет представляет собой набор микросхем, обеспечивающий взаимодействие процессора с памятью и другими устройствами компьютера. Термин «топология» чаще всего используется для описания физической архитектуры компьютерных сетей.
Логическую организацию и структуру аппаратных и программных ресурсов вычислительной системы называют архитектурой компьютера. Архитектура заключает в себе требования к функциональности и принципы организации основных узлов ЭВМ.
Ответ: архитектуру.
К принципам работы вычислительной системы, сформулированным Джоном фон Нейманом, не относится принцип.
Варианты ответа:
1) адресности; 2) однородности памяти; 3) разделения памяти программ и данных; 4) программного управления.
Принцип адресности заключается в том, что структурно основная память состоит из пронумерованных ячеек. Процессору в произвольный момент времени доступна любая ячейка. Принцип однородности памяти заключается в том, что программы и данные хранятся в одной и той же памяти. Поэтому компьютер не различает, что хранится в данной ячейке памяти: число, текст или команда. Принцип программного управления заключается в том, что программа состоит из набора команд, которые выполняются процессором автоматически друг за другом в определенной последовательности.
Принципы разделения памяти программ и данных используется в гарвардской архитектуре, что позволяет распараллелить выборку данных из памяти.
Ответ: разделения памяти программ и данных.
Задания для самостоятельного решения: ЗАДАНИЕ 1
Третье поколение ЭВМ создавалось на основе .
Варианты ответа:
- 1) больших интегральных схем;
- 2) полупроводниковых транзисторов;
- 3) микросхем, содержавших на одной пластинке сотни или тысячи транзисторов;
- 4) вакуумных электроламп.
Шина в персональном компьютере не явля
ется частью системной магистрали.
Варианты ответа:
1) команд; 2) адреса; 3) данных; 4) управления.
Укажите, какие из следующих высказываний являются истинными.
- а) Появление второго поколения ЭВМ было обусловлено переходом от электронных ламп к транзисторам.
- б) В ЭВМ первого поколения отсутствовало устройство управления.
- в) В ЭВМ первого поколения отсутствовала оперативная память.
- г) Машины третьего поколения — это семейства машин с единой архитектурой, то есть программно совместимых.
- д) Компьютер с процессором Intel Pentium III относится к четвёртому поколению ЭВМ.
Варианты ответа:
1) б, в, г; 2) а, б, г; 3) б, в, д; 4) а, г, д.
Устройства компьютера, не принадлежащие к основным называются:
Варианты ответа:
1) второстепенными; 2) периферийными; 3) дополнительными; 4) резервными.
В 1945 году были опубликованы принципы функционирования компьютеров, которые до сих пор являются актуальными. Это сделал .
Варианты ответа:
1) Ч. Беббидж; 2) Б.Паскаль; 3) Ада Лавлайс; 4) Джон фон Нейман.
Второе поколение ЭВМ создавалось на основе .
Варианты ответа:
- 1) больших интегральных схем;
- 2) полупроводниковых транзисторов;
- 3) микросхем, содержавших на одной пластинке сотни или тысячи транзисторов;
- 4) вакуумных электроламп.
Первое поколение ЭВМ создавалось на основе .
Варианты ответа:
- 1) больших интегральных схем;
- 2) полупроводниковых транзисторов;
- 3) микросхем, содержавших на одной пластинке сотни или тысячи транзисторов;
- 4) вакуумных электроламп.
Четвертое поколение ЭВМ создавалось на основе .
Варианты ответа:
- 1) больших интегральных схем;
- 2) полупроводниковых транзисторов;
- 3) микросхем, содержавших на одной пластинке сотни или тысячи транзисторов;
- 4) вакуумных электроламп.
Для объединения функциональных устройств персонального компьютера в вычислительную систему используется.
Тест по информатике Основополагающие принципы устройства ЭВМ 10 класс
Тест по информатике Основополагающие принципы устройства ЭВМ 10 класс с ответами. Тест включает 5 заданий с выбором ответа.
1. Отметьте принципы, которые можно отнести к основополагающим принципам построения компьютеров
1) принцип многозадачности
2) принцип однородности памяти
3) принцип адресности памяти
4) состав основных компонентов вычислительной машины
5) принцип наличия способности к саморазвитию
2. Согласно принципу двоичного кодирования
1) компьютер может обрабатывать информацию, закодированную любым двоичным способом
2) вся информация, предназначенная для обработки на компьютере, а также программы её обработки представляются в виде двоичного кода
3) любая информация может быть закодирована на компьютере только 2 раза
3. Заполните пропуски в предложении.
… и данные размещаются в единой памяти, состоящей из …, имеющих свои номера (адреса). Это принцип … памяти.
1) информация, ячеек, единства
2) команды, микросхем, единства
3) команды, ячеек, адресности
4) информация, микросхем, адресности
4. Установите соответствие
1) шина адреса
2) шина данных
3) шина управления
А) передаются сигналы, управляющие обменом информацией между устройствами и синхронизирующие этот обмен
Б) используется для указания физического адреса, к которому устройство может обратиться для проведения операции чтения или записи
В) предназначена для передачи данных между узлами компьютера
5. Основополагающие принципы построения компьютеров были сформулированы независимо друг от друга двумя крупнейшими учёными XX века — …
1) Дж. фон Нейманом
2) С.А. Лебедевым
3) Клодом Шенноном
4) В.А. Котельниковым
Ответы на тест по информатике Основополагающие принципы устройства ЭВМ 10 класс
1. 234
2. 2
3. 3
4. 1Б 2В 3А
5. 12
Архитектура персонального компьютера
Современные персональные компьютеры различаются по своим размерам, конструкции, разновидностям используемых микросхем и модулей памяти, другим характеристикам. В то же время все они имеют единое функциональное устройство, единую архитектуру — основные узлы и способы взаимодействия между ними (рис. 2.7).
На рисунке 2.7 изображены хорошо известные вам узлы современного компьютера: процессор, внутренняя память, устройства ввода, устройства вывода и внешняя память.
Обмен данными между устройствами компьютера осуществляется с помощью магистрали.
- шины адреса, используемой для указания физического адреса, к которому устройство может обратиться для проведения операции чтения или записи;
- шины данных, предназначенной для передачи данных между узлами компьютера;
- шины управления, по которой передаются сигналы, управляющие обменом информацией между устройствами и синхронизирующие этот обмен.
В компьютерах, имевших классическую фон-неймановскую архитектуру, процессор контролировал все процессы ввода/вывода. При этом быстродействующий процессор затрачивал много времени на ожидание результатов работы от значительно более медленных внешних устройств. Для повышения эффективности работы процессора были созданы специальные электронные схемы, предназначенные для обслуживания устройств ввода/вывода или внешней памяти.
Благодаря контроллерам данные по магистрали могут передаваться между внешними устройствами и внутренней памятью напрямую, минуя процессор. Это приводит к существенному снижению нагрузки на центральный процессор и повышает эффективность работы всей вычислительной системы.
Современные компьютеры обладают магистрально-модульной архитектурой, главное достоинство которой заключается в возможности легко изменить конфигурацию компьютера путём подключения к шине новых или замены старых внешних устройств.
Если спецификация на шину (детальное описание всех её параметров) является открытой (опубликованной), то производители могут разработать и предложить пользователям разнообразные дополнительные устройства для компьютеров с такой шиной. Подобный подход называют принципом открытой архитектуры. Благодаря ему пользователь может собрать именно такую компьютерную систему, которая ему нужна.
Практическое занятие по информатике на тему «Периферийные устройства компьютера»
Оборудование: белая доска, проектор для демонстрации презентации, компьютеры для индивидуальной работы учащихся, ОМС плеер для воспроизведения электронных учебных модулей (ЭУМ); электронные образовательные ресурсы (ЭОР) по информатике, размещенные на сайтах федерального центра информационных образовательных ресурсов (ФЦИОР).
1. Организационный момент (2-3 минуты)
Приветствие обучающихся. Напоминание правил работы за компьютером и правил поведения в компьютерном классе. Дежурный докладывает об отсутствующих на занятии студентах, преподаватель отмечает в журнале.
2. Проверка домашнего задания (10 минут)
Напоминание обучающимся о домашнем задании.
Дома необходимо было подготовиться к практической работе, для этого на сайте «Российская электронная школа» посмотреть видеозапись «Основополагающие принципы работы компьютеров».
Преподаватель уточняет, все ли справились с домашним заданием. Если возникли трудности, преподаватель отвечает на вопросы.
Преподаватель предлагает проверить домашнее задание, выполнив тест в сети Интернет. Для этого необходимо запустить Интернет браузер и в адресной строке ввести ссылку, представленную на доске.
Тест для проверки домашнего задания
3. Актуализация знаний (3-5 минут)
Преподаватель напоминает, что на предыдущем занятии говорилось о компьютерах и периферийных устройствах и их предназначении, об информации, ее формах, представлении и восприятии. Обучающиеся записывают в тетрадях число и тему занятия «Архитектура компьютеров. Многообразие устройств, подключаемых к компьютеру».
Архитектура компьютеров
4. Применение знаний и умений (45-50 минут)
Прежде чемпознакомиться с элементами периферийных устройств,необходимо разобраться, как они взаимодействуют с операционной системой. Для этого предлагается выполнить первое задание практической работы.
Задание 1. Откройте информационный модуль «Устройства ввода информации» и изучите пункт «Базовая система ввода-вывода». Заполните пропуски в тексте ниже.
Базовая система ввода-вывода
— базовая система ввода-вывода) называется так потому, что включает в себя обширный набор ________ , благодаря которым операционная система и прикладные программы могут взаимодействовать как с _________ и с _________. BIOS, с одной стороны, является _________ , а с другой стороны это _______ .
К функциям BIOS относятся ________ и _________. Но ________ функцией BIOS материнской платы является ________ , подключенных к материнской плате, сразу после включения питания компьютера.
Кроме того, BIOS предоставляет вычислительной системе такие функции, как _________ , ___________ , ________ входных и выходных данных, осуществление захвата внешних устройств, _________ , возникающих при операциях ввода-вывода, планирование последовательности запросов на выполнение этих операций. Часть функций базовой подсистемы может быть передана _________ и самим ________ .
Задание 2. Изучите модули «Устройства ввода информации. Примеры» и «Устройства вывода информации. Примеры». Заполните таблицу «Устройства ввода-вывода информации»
Устройства ввода
Устройства вывода
Устройства ввода-вывода информации
Задание 3. Изучите модули «Устройства ввода информации. Примеры» и «Устройства вывода информации. Примеры». Подпишите элементы следующих устройств.
Подпишите элементы устройств
5. Контроль и самоконтроль (10-15 минут)
Для проверки обучающиеся обмениваются своими работами. Проверка осуществляется через интерактивный модуль LearningApps.org, коррекция ответов.
Проверка знаний
6. Информация о домашнем задании (3 минуты)
В связи с быстрым устареванием оргтехники, а также выхода из строя, возникает вопрос качественного ремонта и утилизации. Поэтому к следующему занятию необходимо подготовить сообщениео проблемах утилизации устаревшей оргтехники.
7. Подведение итогов урока. Рефлексия (4 минуты)
Преподаватель проводит рефлексию с помощью опроса.
Опрос
Оценка за урок складывается из результатов тестирования и выполненных заданий практической работы. Преподаватель благодарит обучающихся за работу на уроке и прощается с ними.
Для объединения функциональных устройств персонального компьютера в вычислительную систему используя
Концепция вычислительных сетей является логическим результатом эволюции компьютерной технологии. Первые компьютеры 50-х годов — большие, громоздкие и дорогие — предназначались для очень небольшого числа избранных пользователей. Часто эти монстры занимали целые здания. Такие компьютеры не были предназначены для интерактивной работы пользователя, а использовались в режиме пакетной обработки.
Системы пакетной обработки, как правило, строились на базе мэйнфрейма — мощного и надежного компьютера универсального назначения. Пользователи подготавливали перфокарты, содержащие данные и команды программ, и передавали их в вычислительный центр. Операторы вводили эти карты в компьютер, а распечатанные результаты пользователи получали обычно только на следующий день (рис. 1.1). Таким образом, одна неверно набитая карта означала как минимум суточную задержку.
Рис. 1.1. Централизованная система на базе мэйнфрейма
Конечно, для пользователей интерактивный режим работы, при котором можно с терминала оперативно руководить процессом обработки своих данных, был бы гораздо удобней. Но интересами пользователей на первых этапах развития вычислительных систем в значительной степени пренебрегали, поскольку пакетный режим — это самый эффективный режим использования вычислительной мощности, так как он позволяет выполнить в единицу времени больше пользовательских задач, чем любые другие режимы. Во главу угла ставилась эффективность работы самого дорогого устройства вычислительной машины — процессора, в ущерб эффективности работы использующих его специалистов.
По мере удешевления процессоров в начале 60-х годов появились новые способы организации вычислительного процесса, которые позволили учесть интересы пользователей. Начали развиваться интерактивные многотерминальные системы разделения времени (рис. 1.2). В таких системах компьютер отдавался в распоряжение сразу нескольким пользователям. Каждый пользователь получал в свое распоряжение терминал, с помощью которого он мог вести диалог с компьютером. Причем время реакции вычислительной системы было достаточно мало для того, чтобы пользователю была не слишком заметна параллельная работа с компьютером и других пользователей. Разделяя таким образом компьютер, пользователи получили возможность за сравнительно небольшую плату пользоваться преимуществами компьютеризации.
Терминалы, выйдя за пределы вычислительного центра, рассредоточились по всему предприятию. И хотя вычислительная мощность оставалась полностью централизованной, некоторые функции — такие как ввод и вывод данных — стали распределенными. Такие многотерминальные централизованные системы внешне уже были очень похожи на локальные вычислительные сети. Действительно, рядовой пользователь работу за терминалом мэйнфрейма воспринимал примерно так же, как сейчас он воспринимает работу за подключенным к сети персональным компьютером. Пользователь мог получить доступ к общим файлам и периферийным устройствам, при этом у него поддерживалась полная иллюзия единоличного владения компьютером, так как он мог запустить нужную ему программу в любой момент и почти сразу же получить результат. (Некоторые, далекие от вычислительной техники пользователи даже были уверены, что все вычисления выполняются внутри их дисплея.)
Рис. 1.2. Многотерминальная система — прообраз вычислительной сети
Таким образом, многотерминальные системы, работающие в режиме разделения времени, стали первым шагом на пути создания локальных вычислительных сетей. Но до появления локальных сетей нужно было пройти еще большой путь, так как многотерминальные системы, хотя и имели внешние черты распределенных систем, все еще сохраняли централизованный характер обработки данных. С другой стороны, и потребность предприятий в создании локальных сетей в это время еще не созрела — в одном здании просто нечего было объединять в сеть, так как из-за высокой стоимости вычислительной техники предприятия не могли себе позволить роскошь приобретения нескольких компьютеров. В этот период был справедлив так называемый «закон Гроша», который эмпирически отражал уровень технологии того времени. В соответствии с этим законом производительность компьютера была пропорциональна квадрату его стоимости, отсюда следовало, что за одну и ту же сумму было выгоднее купить одну мощную машину, чем две менее мощных — их суммарная мощность оказывалась намного ниже мощности дорогой машины.
Тем не менее потребность в соединении компьютеров, находящихся на большом расстоянии друг от друга, к этому времени вполне назрела. Началось все с решения более простой задачи — доступа к компьютеру с терминалов, удаленных от него на многие сотни, а то и тысячи километров. Терминалы соединялись с компьютерами через телефонные сети с помощью модемов. Такие сети позволяли многочисленным пользователям получать удаленный доступ к разделяемым ресурсам нескольких мощных компьютеров класса суперЭВМ. Затем появились системы, в которых наряду с удаленными соединениями типа терминал-компьютер были реализованы и удаленные связи типа компьютер-компьютер. Компьютеры получили возможность обмениваться данными в автоматическом режиме, что, собственно, и является базовым механизмом любой вычислительной сети. Используя этот механизм, в первых сетях были реализованы службы обмена файлами, синхронизации баз данных, электронной почты и другие, ставшие теперь традиционными сетевые службы.
Таким образом, хронологически первыми появились глобальные вычислительные сети. Именно при построении глобальных сетей были впервые предложены и отработаны многие основные идеи и концепции современных вычислительных сетей. Такие, например, как многоуровневое построение коммуникационных протоколов, технология коммутации пакетов, маршрутизация пакетов в составных сетях.
В начале 70-х годов произошел технологический прорыв в области производства компьютерных компонентов — появились большие интегральные схемы. Их сравнительно невысокая стоимость и высокие функциональные возможности привели к созданию мини-компьютеров, которые стали реальными конкурентами мэйнфреймов. Закон Гроша перестал соответствовать действительности, так как десяток мини-компьютеров выполнял некоторые задачи (как правило, хорошо распараллеливаемые) быстрее одного мэйнфрейма, а стоимость такой мини-компьютерной системы была меньше.
Даже небольшие подразделения предприятий получили возможность покупать для себя компьютеры. Мини-компьютеры выполняли задачи управления технологическим оборудованием, складом и другие задачи уровня подразделения предприятия. Таким образом, появилась концепция распределения компьютерных ресурсов по всему предприятию. Однако при этом все компьютеры одной организации по-прежнему продолжали работать автономно (рис. 1.3).
Но шло время, потребности пользователей вычислительной техники росли, им стало недостаточно собственных компьютеров, им уже хотелось получить возможность обмена данными с другими близко расположенными компьютерами. В ответ на эту потребность предприятия и организации стали соединять свои мини-компьютеры вместе и разрабатывать программное обеспечение, необходимое для их взаимодействия. В результате появились первые локальные вычислительные сети (рис. 1.4). Они еще во многом отличались от современных локальных сетей, в первую очередь — своими устройствами сопряжения. На первых порах для соединения компьютеров друг с другом использовались самые разнообразные нестандартные устройства со своим способом представления данных на линиях связи, своими типами кабелей и т. п. Эти устройства могли соединять только те типы компьютеров, для которых были разработаны, — например, мини-компьютеры PDP-11 с мэйнфреймом IBM 360 или компьютеры «Наири» с компьютерами «Днепр». Такая ситуация создала большой простор для творчества студентов — названия многих курсовых и дипломных проектов начинались тогда со слов «Устройство сопряжения. ».
Рис. 1.3. Автономное использование нескольких мини-компьютеров на одном предприятии
Рис. 1.4. Различные типы связей в первых локальных сетях
В середине 80-х годов положение дел в локальных сетях стало кардинально меняться. Утвердились стандартные технологии объединения компьютеров в сеть — Ethernet, Arcnet, Token Ring. Мощным стимулом для их развития послужили персональные компьютеры. Эти массовые продукты явились идеальными элементами для построения сетей — с одной стороны, они были достаточно мощными для работы сетевого программного обеспечения, а с другой — явно нуждались в объединении своей вычислительной мощности для решения сложных задач, а также разделения дорогих периферийных устройств и дисковых массивов. Поэтому персональные компьютеры стали преобладать в локальных сетях, причем не только в качестве клиентских компьютеров, но и в качестве центров хранения и обработки данных, то есть сетевых серверов, потеснив с этих привычных ролей мини-компьютеры и мэйнфреймы.
Стандартные сетевые технологии превратили процесс построения локальной сети из искусства в рутинную работу. Для создания сети достаточно было приобрести сетевые адаптеры соответствующего стандарта, например Ethernet, стандартный кабель, присоединить адаптеры к кабелю стандартными разъемами и установить на компьютер одну из популярных сетевых операционных систем, например, NetWare. После этого сеть начинала работать и присоединение каждого нового компьютера не вызывало никаких проблем — естественно, если на нем был установлен сетевой адаптер той же технологии.
Локальные сети в сравнении с глобальными сетями внесли много нового в способы организации работы пользователей. Доступ к разделяемым ресурсам стал гораздо удобнее — пользователь мог просто просматривать списки имеющихся ресурсов, а не запоминать их идентификаторы или имена. После соединения с удаленным ресурсом можно было работать с ним с помощью уже знакомых пользователю по работе с локальными ресурсами команд. Последствием и одновременно движущей силой такого прогресса стало появление огромного числа непрофессиональных пользователей, которым совершенно не нужно было изучать специальные (и достаточно сложные) команды для сетевой работы. А возможность реализовать все эти удобства разработчики локальных сетей получили в результате появления качественных кабельных линий связи, на которых даже сетевые адаптеры первого поколения обеспечивали скорость передачи данных до 10 Мбит/с.
Конечно, о таких скоростях разработчики глобальных сетей не могли даже мечтать — им приходилось пользоваться теми каналами связи, которые были в наличии, так как прокладка новых кабельных систем для вычислительных сетей протяженностью в тысячи километров потребовала бы колоссальных капитальных вложений. А «под рукой» были только телефонные каналы связи, плохо приспособленные для высокоскоростной передачи дискретных данных — скорость в 1200 бит/с была для них хорошим достижением. Поэтому экономное расходование пропускной способности каналов связи часто являлось основным критерием эффективности методов передачи данных в глобальных сетях. В этих условиях различные процедуры прозрачного доступа к удаленным ресурсам, стандартные для локальных сетей, для глобальных сетей долго оставались непозволительной роскошью.
Сегодня вычислительные сети продолжают развиваться, причем достаточно быстро. Разрыв между локальными и глобальными сетями постоянно сокращается во многом из-за появления высокоскоростных территориальных каналов связи, не уступающих по качеству кабельным системам локальных сетей. В глобальных сетях появляются службы доступа к ресурсам, такие же удобные и прозрачные, как и службы локальных сетей. Подобные примеры в большом количестве демонстрирует самая популярная глобальная сеть — Internet.
Изменяются и локальные сети. Вместо соединяющего компьютеры пассивного кабеля в них в большом количестве появилось разнообразное коммуникационное оборудование — коммутаторы, маршрутизаторы, шлюзы. Благодаря такому оборудованию появилась возможность построения больших корпоративных сетей, насчитывающих тысячи компьютеров и имеющих сложную структуру. Возродился интерес к крупным компьютерам — в основном из-за того, что после спада эйфории по поводу легкости работы с персональными компьютерами выяснилось, что системы, состоящие из сотен серверов, обслуживать сложнее, чем несколько больших компьютеров. Поэтому на новом витке эволюционной спирали мэйнфреймы стали возвращаться в корпоративные вычислительные системы, но уже как полноправные сетевые узлы, поддерживающие Ethernet или Token Ring, а также стек протоколов TCP/IP, ставший благодаря Internet сетевым стандартом де-факто.
Проявилась еще одна очень важная тенденция, затрагивающая в равной степени как локальные, так и глобальные сети. В них стала обрабатываться несвойственная ранее вычислительным сетям информация — голос, видеоизображения, рисунки. Это потребовало внесения изменений в работу протоколов, сетевых операционных систем и коммуникационного оборудования. Сложность передачи такой мультимедийной информации по сети связана с ее чувствительностью к задержкам при передаче пакетов данных — задержки обычно приводят к искажению такой информации в конечных узлах сети. Так как традиционные службы вычислительных сетей — такие как передача файлов или электронная почта — создают малочувствительный к задержкам трафик и все элементы сетей разрабатывались в расчете на него, то появление трафика реального времени привело к большим проблемам.
Сегодня эти проблемы решаются различными способами, в том числе и с помощью специально рассчитанной на передачу различных типов трафика технологии АТМ, Однако, несмотря на значительные усилия, предпринимаемые в этом направлении, до приемлемого решения проблемы пока далеко, и в этой области предстоит еще много сделать, чтобы достичь заветной цели — слияния технологий не только локальных и глобальных сетей, но и технологий любых информационных сетей — вычислительных, телефонных, телевизионных и т. п. Хотя сегодня эта идея многим кажется утопией, серьезные специалисты считают, что предпосылки для такого синтеза уже существуют, и их мнения расходятся только в оценке примерных сроков такого объединения — называются сроки от 10 до 25 лет. Причем считается, что основой для объединения послужит технология коммутации пакетов, применяемая сегодня в вычислительных сетях, а не технология коммутации каналов, используемая в телефонии, что, наверно, должно повысить интерес к сетям этого типа, которым и посвящена данная книга.
Компьютерные сети относятся к распределенным (или децентрализованным) вычислительным системам. Поскольку основным признаком распределенной вычислительной системы является наличие нескольких центров обработки данных, то наряду с компьютерными сетями к распределенным системам относят также мультипроцессорные компьютеры и многомашинные вычислительные комплексы.
В мультипроцессорных компьютерах имеется несколько процессоров, каждый из которых может относительно независимо от остальных выполнять свою программу. В мультипроцессоре существует общая для всех процессоров операционная система, которая оперативно распределяет вычислительную нагрузку между процессорами. Взаимодействие между отдельными процессорами организуется наиболее простым способом — через общую оперативную память.
Сам по себе процессорный блок не является законченным компьютером и поэтому не может выполнять программы без остальных блоков мультипроцессорного компьютера — памяти и периферийных устройств. Все периферийные устройства являются для всех процессоров мультипроцессорной системы общими. Территориальную распределенность мультипроцессор не поддерживает — все его блоки располагаются в одном или нескольких близко расположенных конструктивах, как и у обычного компьютера.
Основное достоинство мультипроцессора — его высокая производительность, которая достигается за счет параллельной работы нескольких процессоров. Так как при наличии общей памяти взаимодействие процессоров происходит очень быстро, мультипроцессоры могут эффективно выполнять даже приложения с высокой степенью связи по данным.
Еще одним важным свойством мультипроцессорных систем является отказоустойчивость, то есть способность к продолжению работы при отказах некоторых элементов, например процессоров или блоков памяти. При этом производительность, естественно, снижается, но не до нуля, как в обычных с истемах, в которых отсутствует избыточность.
Многомашинная система — это вычислительный комплекс, включающий в себя несколько компьютеров (каждый из которых работает под управлением собственной операционной системы), а также программные и аппаратные средства связи компьютеров, которые обеспечивают работу всех компьютеров комплекса как единого целого.
Работа любой многомашинной системы определяется двумя главными компонентами: высокоскоростным механизмом связи процессоров и системным программным обеспечением, которое предоставляет пользователям и приложениям прозрачный доступ к ресурсам всех компьютеров, входящих в комплекс. В состав средств связи входят программные модули, которые занимаются распределением вычислительной нагрузки, синхронизацией вычислений и реконфигурацией системы. Если происходит отказ одного из компьютеров комплекса, его задачи могут быть автоматически переназначены и выполнены на другом компьютере. Если в состав многомашинной системы входят несколько контроллеров внешних устройств, то в случае отказа одного из них, другие контроллеры автоматически подхватывают его работу. Таким образом, достигается высокая отказоустойчивость комплекса в целом.
Помимо повышения отказоустойчивости, многомашинные системы позволяют достичь высокой производительности за счет организации параллельных вычислений. По сравнению с мультипроцессорными системами возможности параллельной обработки в многомашинных системах ограничены: эффективность распараллеливания резко снижается, если параллельно выполняемые задачи тесно связаны между собой по данным. Это объясняется тем, что связь между компьютерами многомашинной системы менее тесная, чем между процессорами в мультипроцессорной системе, так как основной обмен данными осуществляется через общие многовходовые периферийные устройства. Говорят, что в отличие от мультипроцессоров, где используются сильные программные и аппаратные связи, в многомашинных системах аппаратные и программные связи между обрабатывающими устройствами являются более слабыми. Территориальная распределенность в многомашинных комплексах не обеспечивается, так как расстояния между компьютерами определяются длиной связи между процессорным блоком и дисковой подсистемой.
В вычислительных сетях программные и аппаратные связи являются еще более слабыми, а автономность обрабатывающих блоков проявляется в наибольшей степени — основными элементами сети являются стандартные компьютеры, не имеющие ни общих блоков памяти, ни общих периферийных устройств. Связь между компьютерами осуществляется с помощью специальных периферийных устройств — сетевых адаптеров, соединенных относительно протяженными каналами связи. Каждый компьютер работает под управлением собственной операционной системы, а какая-либо «общая» операционная система, распределяющая работу между компьютерами сети, отсутствует. Взаимодействие между компьютерами сети происходит за счет передачи сообщений через сетевые адаптеры и каналы связи. С помощью этих сообщений один компьютер обычно запрашивает доступ к локальным ресурсам другого компьютера. Такими ресурсами могут быть как данные, хранящиеся на диске, так и разнообразные периферийные устройства — принтеры, модемы, факс-аппараты и т. д. Разделение локальных ресурсов каждого компьютера между всеми пользователями сети — основная цель создания вычислительной сети.
Каким же образом сказывается на пользователе тот факт, что его компьютер подключен к сети? Прежде всего, он может пользоваться не только файлами, дисками, принтерами и другими ресурсами своего компьютера, но аналогичными ресурсами других компьютеров, подключенных к той же сети. Правда, для этого недостаточно снабдить компьютеры сетевыми адаптерами и соединить их кабельной системой. Необходимы еще некоторые добавления к операционным системам этих компьютеров. На тех компьютерах, ресурсы которых должны быть доступны всем пользователям сети, необходимо добавить модули, которые постоянно будут находиться в режиме ожидания запросов, поступающих по сети от других компьютеров. Обычно такие модули называются программными серверами (server) , так как их главная задача — обслуживать (serve) запросы на доступ к ресурсам своего компьютера. На компьютерах, пользователи которых хотят получать доступ к ресурсам других компьютеров, также нужно добавить к операционной системе некоторые специальные программные модули, которые должны вырабатывать запросы на доступ к удаленным ресурсам и передавать их по сети на нужный компьютер. Такие модули обычно называют программными клиентами (client) . Собственно же сетевые адаптеры и каналы связи решают в сети достаточно простую задачу — они передают сообщения с запросами и ответами от одного компьютера к другому, а основную работу по организации совместного использования ресурсов выполняют клиентские и серверные части операционных систем.
Пара модулей «клиент — сервер» обеспечивает совместный доступ пользователей к определенному типу ресурсов, например к файлам. В этом случае говорят, что пользователь имеет дело с файловой службой (service) . Обычно сетевая операционная система поддерживает несколько видов сетевых служб для своих пользователей — файловую службу, службу печати, службу электронной почты, службу удаленного доступа и т. п.
ПРИМЕЧАНИЕ: В технической литературе англоязычный термин «service» обычно переводится как «служба», «сервис «услуга». Часто эти термины используются как синонимы. В то же время некоторые специалисты различают термин «служба», с одной стороны, и термины «сервис» и «услуга», с другой. Под «службой» понимается сетевой компонент, который реализует некоторый набор услуг, а «сервисом» называют описание набора услуг, который предоставляется данной службой. Таким образом, сервис — это интерфейс между потребителем услуг и поставщиком услуг (службой). Далее будет использоваться термин «служба» во всех случаях, когда различие в значении этих терминов не носит принципиального характера.
Термины «клиент» и «сервер» используются не только для обозначения программных модулей, но и компьютеров, подключенных к сети. Если компьютер предоставляет свои ресурсы другим компьютерам сети, то он называется сервером, а если он их потребляет — клиентом. Иногда один и тот же компьютер может одновременно играть роли и сервера, и клиента.
Сетевые службы всегда представляют собой распределенные программы. Распределенная программа — это программа, которая состоит из нескольких взаимодействующих частей (в приведенном на рис. 1.5 примере — из двух), причем каждая часть, как правило, выполняется на отдельном компьютере сети.
Рис. 1.5. Взаимодействие частей распределенного приложения
До сих пор речь шла о системных распределенных программах. Однако в сети могут выполняться и распределенные пользовательские программы — приложения. Распределенное приложение также состоит из нескольких частей, каждая и которых выполняет какую-то определенную законченную работу по решению прикладной задачи. Например, одна часть приложения, выполняющаяся на компьютере пользователя, может поддерживать специализированный графический интерфейс вторая — работать на мощном выделенном компьютере и заниматься статистической обработкой введенных пользователем данных, а третья — заносить полученные результаты в базу данных на компьютере с установленной стандартной СУБД. Распределенные приложения в полной мере используют потенциальные возможности распределенной обработки, предоставляемые вычислительной сетью, и поэтому часто называются сетевыми приложениями .
Следует подчеркнуть, что не всякое приложение, выполняемое в сети, является сетевым. Существует большое количество популярных приложений, которые не являются распределенными и целиком выполняются на одном компьютере сети. Тем не менее и такие приложения могут использовать преимущества сети за счет встроенных в операционную систему сетевых служб. Значительная часть истории локальных сетей связана как раз с использованием таких нераспределенных приложений. Рассмотрим, например, как происходила работа пользователя с известной в свое время СУБД dBase. Обычно файлы базы данных, с которыми работали все пользователи сети, располагались на файловом сервере. Сама же СУБД хранилась на каждом клиентском компьютере в виде единого программного модуля.
Программа dBase была рассчитана на обработку только локальных данных, то есть данных, расположенных на том же компьютере, что и сама программа. Пользователь запускал dBase на своем компьютере, и она искала данные на локальном диске, совершенно не принимая во внимание существование сети. Чтобы обрабатывать с помощью dBase данные на удаленном компьютере, пользователь обращался к услугам файловой службы, которая доставляла данные с сервера на клиентский компьютер и создавала для СУБД эффект их локального хранения.