Лекция 1. Введение в архитектуру компьютеров

advertisement
Введение в
архитектуру
компьютеров
Подзаголовок
Что такое цифровой компьютер
▪ Цифровой компьютер — это машина, которая может решать задачи,
исполняя данные ей команды.
▪ Последовательность команд, описывающих решение определенной
задачи, называется программой.
▪ Электронные схемы каждого компьютера могут распознавать и
исполнять ограниченный набор простых команд.
▪ Все программы перед исполнением должны быть превращены в
последовательность таких команд, которые обычно не сложнее, чем,
например:
▪ сложить два числа;
▪ проверить, не является ли число нулем;
▪ скопировать блок данных из одной части памяти компьютера в другую.
Машинный язык
▪ Примитивные команды, которые понимает компьютер в совокупности
составляют язык и на котором люди могут с ним общаться, называется
машинным.
▪ Разработчик при создании нового компьютера должен решить, какие
команды следует включить в машинный язык этого компьютера. Это
зависит от назначения компьютера и от задач, которые он должен
решать.
▪ Большинство машинных языков крайне примитивны, из-за чего писать на
них и трудно, и утомительно. Это привело к построению ряда уровней
абстракций, каждая из которых надстраивается над абстракцией более
низкого уровня.
Многоуровневая компьютерная организация
▪ Проблему сложности использования машинного языка можно решить
путем разработки новых команд, более удобных для человека, чем
встроенные машинные команды. Эти новые команды в совокупности
формируют который мы будем называть Я1.
▪ Встроенные машинные команды тоже формируют язык, и мы будем
называть его Я0. Компьютер может исполнять только программы,
написанные на его машинном языке Я0.
Трансляция и интерпретация
▪ Первый способ исполнения программы, написанной на языке Я1,
подразумевает замену каждой команды эквивалентным набором команд
на языке Я0.
▪ В этом случае компьютер исполняет новую программу, написанную на языке Я0,
вместо старой программы, написанной на Я1. Эта технология называется
трансляцией.
▪ Второй способ заключается в создании на языке Я0 программы,
получающей в качестве входных данных программы, написанные на
языке Я1.
▪ При этом каждая команда языка Я1 обрабатывается поочередно, после чего сразу
исполняется эквивалентный ей набор команд языка Я0. Эта технология не требует
составления новой программы на Я0. Она называется интерпретацией, а программа,
которая осуществляет интерпретацию, называется интерпретатором.
Сравнение трансляции и интерпретации
▪ В обоих случаях компьютер в конечном итоге исполняет набор команд на
языке Я0, эквивалентных командам Я1.
▪ Отличие лишь в том, что при трансляции вся программа Я1
переделывается в программу Я0, программа Я1 отбрасывается, а новая
программа на Я0 загружается в память компьютера и затем исполняется.
Во время выполнения сгенерированная программа на Я0 управляет
работой компьютера.
▪ При интерпретации каждая команда программы на Я1 перекодируется в
Я0 и сразу же исполняется. Транслированная программа при этом не
создается. Работой компьютера управляет интерпретатор, для которого
программа на Я1 есть не что иное, как «сырые» входные данные.
Многоуровневые
машины
Большинство
современных
компьютеров состоит из
двух и более уровней.
Существуют машины
даже с шестью
уровнями.
Цифровой логический уровень
▪ Уровень 0 - это аппаратное обеспечение машины.
▪ На цифровом логическом уровне, объекты называются вентилями.
Вентили строятся из аналоговых компонентов (таких как транзисторы).
▪ У каждого вентиля есть одно или несколько цифровых входных данных
(сигналов, представляющих 0 или 1). Вентиль вычисляет простые
функции этих сигналов, такие как И или ИЛИ.
▪ Каждый вентиль формируется из нескольких транзисторов. Несколько
вентилей формируют 1 бит памяти, который может содержать 0 или 1.
Биты памяти, объединенные в группы, например, по 16, 32 или 64,
формируют регистры. Каждый регистр может содержать одно двоичное
число в определенном диапазоне. Из вентилей также может строиться
само ядро вычислительной системы.
Уровень микроархитектуры
▪ На уровне микроархитектуры находятся наборы из (обычно) 8 или 32
регистров, которые формируют локальную память и схему, называемую
АЛУ (арифметико-логическое устройство). АЛУ исполняет простые
арифметические операции.
▪ Регистры вместе с АЛУ формируют тракт данных, по которому
поступают данные. Базовая операция тракта данных выполняется
следующим образом: выбирается один или два регистра, АЛУ
производит над ними какую-либо операцию (например сложение), после
чего результат вновь помещается в какой-либо регистр.
▪ На некоторых машинах работа тракта данных контролируется особой
программой, которая называется микропрограммой. На других машинах
тракт данных управляется напрямую аппаратными средствами.
Уровень архитектуры набора команд
▪ Уровень 2 мы будем называть уровнем архитектуры набора команд.
Описываемый в нем набор машинных команд в действительности
исполняется микропрограммой-интерпретатором или аппаратным
обеспечением.
▪ Если производитель поставляет два интерпретатора для одной машины,
он должен издать два руководства по машинному языку, отдельно для
каждого интерпретатора.
Уровень операционной системы
▪ Следующий уровень обычно является гибридным. Большинство команд в
его языке есть также и на уровне архитектуры набора команд. У этого
уровня есть некоторые дополнительные особенности: новый набор
команд, другая организация памяти, способность исполнять две и более
программ одновременно и некоторые другие.
▪ Новые средства, появившиеся на уровне 3, исполняются интерпретатором,
который работает на втором уровне. Этот интерпретатор назвается
операционной системой. Команды уровня 3, идентичные командам уровня
2, исполняются микропрограммой или аппаратным обеспечением, но не
операционной системой.
▪ Таким образом, одна часть команд уровня 3 интерпретируется
операционной системой, а другая часть - микропрограммой. Вот почему
этот уровень считается гибридным.
«Машинные» и «человеческие» уровни
▪ Нижние три уровня не предназначены для использования рядовыми программистами.
Они изначально ориентированы на интерпретаторы и трансляторы, обеспечивающие
работу на более высоких уровнях.
▪ Трансляторы и интерпретаторы создаются системными программистами, которые
специализируются на разработке новых виртуальных машин.
▪ Уровни с четвертого и выше предназначены для прикладных программистов, решающих
конкретные задачи.
▪ на уровне 4 появляется - механизм поддержки более высоких уровней. Уровни 2 и 3
всегда интерпретируются, а уровни 4, 5 и выше обычно (хотя и не всегда)
транслируются.
▪ Машинные языки уровней 1, 2 и 3 - цифровые. Программы, написанные на этих языках,
состоят из длинных рядов цифр, которые воспринимаются компьютерами, но
малопонятны для людей. Начиная с уровня 4, языки содержат слова и сокращения,
понятные человеку.
Уровень прикладных программ
▪ Уровень 5 обычно состоит из языков, разработанных для прикладных
программистов. Такие языки называются языками высокого уровня .
Существуют сотни языков высокого уровня. Наиболее известные среди
них — C, C++, Java, Perl, Python и PHP. Программы, написанные на этих
языках, обычно транслируются на уровень 3 или 4. Трансляторы,
которые обрабатывают эти программы, называются компиляторами ,
хотя в некоторых случаях имеет место интерпретация.
▪ В некоторых случаях уровень 5 состоит из интерпретатора для
конкретной прикладной области, например символической логики. Он
предусматривает данные и операции для решения задач в этой области
в контексте, хорошо понятном специалисту в этой предметной области.
Архитектура компьютеров
▪ Компьютер проектируется как иерархическая структура уровней, которые
надстраиваются друг над другом. Каждый уровень представляет собой
абстракцию некоторых объектов и операций. Набор типов данных,
операций и характеристик каждого отдельно взятого уровня называется
архитектурой.
▪ Архитектура связана с аспектами, видимыми пользователю этого уровня.
Например, сведения о том, сколько памяти можно использовать при
написании программы, — часть архитектуры. Аспекты реализации
(например, технология, применяемая при реализации памяти) не
являются частью архитектуры.
▪ Изучая методы проектирования программных элементов компьютерной
системы, мы изучаем компьютерную архитектуру.
Аппаратное обеспечение
▪ Программы, написанные на машинном языке (уровень 1), могут сразу
без применения интерпретаторов и трансляторов исполняться
электронными схемами компьютера (уровень 0).
▪ Электронные схемы вместе с памятью и средствами ввода-вывода
формируют аппаратное обеспечение компьютера.
▪ Аппаратное обеспечение состоит из материальных объектов —
интегральных схем, печатных плат, кабелей, источников электропитания,
модулей памяти и принтеров. Абстрактные понятия, алгоритмы и
команды к аппаратному обеспечению не относятся.
Программное обеспечение
▪ Программное обеспечение, состоит из алгоритмов (подробных
последовательностей команд, которые описывают решение некоторой
задачи) и их компьютерных представлений, то есть программ.
Программы могут храниться на жестком диске, гибком диске, компактдиске или других носителях.
▪ В самых первых компьютерах граница между аппаратным и
программным обеспечением была очевидна. Однако со временем
произошло значительное размывание этой границы, в первую очередь
благодаря тому, что в процессе развития компьютеров уровни
добавлялись, убирались и сливались между собой. В настоящее время
очень сложно отделить их друг от друга
Аппаратное и программное обеспечение
▪ Аппаратное и программное обеспечение логически эквивалентно.
▪ Любая операция, исполняемая программным обеспечением, может быть
реализована аппаратным обеспечением (желательно после того, как она
будет продумана).
▪ Аппаратное обеспечение — это всего лишь окаменевшее программное
обеспечение.
▪ Вместе с тем любая команда, исполняемая аппаратным обеспечением,
может быть смоделирована программно.
▪ Решение о разделении функций аппаратного и программного обеспечения
основано на таких факторах, как стоимость, быстродействие, надежность,
частота ожидаемых изменений.
Изобретение микропрограммирования
▪ У первых цифровых компьютеров 40-х годов было два уровня: уровень
архитектуры набора команд (ISA), на котором осуществлялось
программирование, и цифровой логический уровень, на котором
программы исполнялись.
▪ В 1951 году была предложена идея трехуровневого компьютера,
призванная упростить аппаратное обеспечение, а следовательно,
сократить количество электронных ламп. Эта машина должна была иметь
встроенный неизменяемый интерпретатор (микропрограмму), функция
которого заключалась в исполнении программ уровня ISA посредством
интерпретации.
▪ Так как аппаратное обеспечение должно было теперь вместо программ
уровня ISA исполнять только микропрограммы с ограниченным набором
команд, требовалось меньшее количество электронных схем.
Подготовка к работе на компьютере без
операционной системы
Для запуска программы на языке FORTRAN, программисту необходимо :
▪ 1. Достать из шкафа с библиотекой программ стопку перфокарт с надписью «Компилятор
FORTRAN», поместить их в считывающее устройство и нажимал кнопку «Пуск».
▪ 2. Поместить стопку карточек со своей программой, написанной на языке FORTRAN, в
считывающее устройство и нажимал кнопку «Продолжить». Программа считывалась.
▪ 3. Когда компьютер прекращал работу, программист считывал свою программу во второй раз.
Некоторые компиляторы требовали только одного считывания перфокарт, но в большинстве
случаев необходимо было производить эту процедуру несколько раз. Каждый раз требовалось
загружать большую стопку перфокарт.
▪ 4. В конце концов трансляция завершалась. Программист часто начинал нервничать, потому что
если компилятор находил ошибку в программе, ему приходилось исправлять ее и начинать
процесс ввода программы заново. Если ошибок не было, компилятор выдавал в виде перфокарт
программу на машинном языке.
▪ 5. Тогда программист помещал эту программу на машинном языке в устройство считывания
вместе с пачкой перфокарт из библиотеки подпрограмм и загружал обе эти программы.
Исполнение программы
▪ Начиналось исполнение программы. В большинстве случаев она не
работала, неожиданно останавливаясь в середине. Обычно в этом случае
программист начинал дергать переключатели на пульте и смотрел на
лампочки. В случае удачи он находил и исправлял ошибку, подходил к
шкафу, в котором лежала стопка перфокарт с надписью «Компилятор
FORTRAN», и начинал все заново. В случае неудачи он делал распечатку
содержания памяти, которая называлась дампом оперативной памяти , и
брал эту распечатку домой для изучения.
Эта процедура с небольшими вариациями была обычной во многих
компьютерных центрах на протяжении многих лет. Программистам
приходилось учиться, как работать с машиной и что нужно делать, если она
выходила из строя, — а происходило это довольно часто. Машина
постоянно простаивала без работы, пока люди носили перфокарты по
комнате или ломали головы над тем, почему программа не работает.
Изобретение операционной системы
▪ В 60-е годы человек попытался ускорить дело, автоматизировав работу
оператора. Программа под названием операционная система
загружалась в компьютер на все время его работы. Программист
приносил пачку перфокарт со специализированной программой, которая
исполнялась операционной системой.
▪ Операционная система считывала перфокарту *JOB и использовала
содержащуюся на ней информацию для учета системных ресурсов.
Затем операционная система считывала перфокарту *FORTRAN —
команду для загрузки компилятора FORTRAN с магнитной ленты. После
этого компилятор считывал и компилировал программу, написанную на
языке FORTRAN.
▪ Как только компилятор заканчивал работу, операционная система
считывала перфокарту *DATA — команду по исполнению
транслированной программы с использованием перфокарт данных.
Принципы построения операционных систем
▪ Операционная система была придумана для того, чтобы автоматизировать работу
оператора (отсюда и название), она стала первым шагом в развитии новой виртуальной
машины. Перфокарту *FORTRAN можно рассматривать как виртуальную команду
«откомпилировать программу», а перфокарту *DATA — как виртуальную команду
«выполнить программу». И хотя этот уровень состоял всего из двух команд, он стал
первым шагом в развитии виртуальных машин.
▪ В последующие годы операционные системы все больше и больше усложнялись. К
уровню архитектуры набора команд добавлялись новые команды, приспособления и
функции, из которых в конечном итоге сформировался новый уровень. Некоторые
команды нового уровня были идентичны командам предыдущего, но некоторые (в
частности, команды ввода-вывода) полностью отличались.
▪ Эти новые команды тогда назывались макросами операционной системы , или
вызовами супервизора . Сейчас обычно используется термин системный вызов .
Развитие операционных систем
▪ Первые операционные системы считывали пачки перфокарт и
распечатывали результат на принтере. Такая организация вычислений
называлась пакетным режимом . Чтобы получить результат, обычно
приходилось ждать несколько часов. При таких условиях было трудно
развивать программное обеспечение.
▪ В начале 60-х годов исследователи Массачусетского технологического
института разработали операционную систему, которая давала
возможность работать с компьютером сразу нескольким программистам.
▪ В этой системе к центральному компьютеру через телефонные линии
подсоединялись отдаленные терминалы. Таким образом, центральный
процессор разделялся между большим количеством пользователей.
Программист мог напечатать свою программу и получить результаты
почти сразу прямо там, где находился терминал. Эти системы
назывались (и сейчас называются) системами разделения времени.
Развитие микропрограммирования
▪ С 1970 года получило развитие микропрограммирование, так как новые
машинные команды можно добавлять простым расширением
микропрограммы. Иначе говоря, производители могли добавлять
«аппаратное обеспечение» (новые команды) путем программирования.
▪ Производители начали конкурировать друг с другом — каждый старался,
чтобы его набор команд был больше и лучше, чем у других. Многие
команды не представляли особой ценности, поскольку те же задачи
можно было легко решить, используя уже существующие команды, но
обычно они выполнялись немного быстрее.
▪ Например, во многих компьютерах использовалась команда INC
(INCrement), которая прибавляла к числу единицу. Команда INC
работала немного быстрее, чем ADD , поэтому ее также включили в
набор команд.
Конец микропрограммирования
▪ В 60-х–70-х годах количество микропрограмм значительно увеличилось.
Однако они работали все медленнее и медленнее, поскольку занимали
все больше места. В конце концов исследователи осознали, что отказ от
микропрограмм резко сократит количество команд, и компьютеры станут
работать быстрее. Таким образом, компьютеры вернулись к тому
состоянию, в котором они находились до изобретения
микропрограммирования.
▪ Современные процессоры продолжают использовать микропрограммы
для преобразования сложных команд во внутренний микрокод, который
может напрямую выполняться на оптимизированных аппаратных
компонентах.
Общие принципы
построения
архитектуры
Общие принципы архитектуры компьютеров
▪ Граница между аппаратным и программным обеспечением постоянно
смещается. Сегодняшнее программное обеспечение может быть
завтрашним аппаратным обеспечением, и наоборот
▪ Также обстоит дело и с уровнями — между ними нет четких границ. Для
программиста не важно, как на самом деле исполняется команда.
Программист, работающий на уровне архитектуры набора команд, может
использовать команду умножения, как будто это аппаратная команда, и
даже не задумываться об этом. То, что для одного человека —
программное обеспечение, для другого — аппаратное
Этапы развития компьютеров
▪ Нулевое поколение — механические компьютеры (1642–1945)
▪ Первое поколение — электронные лампы (1945–1955)
▪ фон-неймановская вычислительная машина
▪ Второе поколение — транзисторы (1955–1965)
▪ компьютеры с общей шиной
▪ Третье поколение — интегральные схемы (1965–1980)
▪ Многозадачность
▪ Четвертое поколение — сверхбольшие интегральные схемы (1980–?)
▪ персональные компьютеры
▪ Пятое поколение — компьютеры небольшой мощности и невидимые компьютеры
Типы современных компьютеров
Тип
«Одноразовые» компьютеры
Встроенные компьютеры
(микроконтроллеры)
Мобильные и игровые
компьютеры
Персональные компьютеры
Серверы
Мэйнфреймы
Цена,
долларов
0,5
5
50
500
5000
5 000 000
Сфера применения
Поздравительные открытки
Часы, машины, различные
приборы
Домашние компьютерные игры,
смартфоны
Настольные и портативные
компьютеры
Сетевые серверы
Пакетная обработка данных в
банке
Одноразовые компьютеры
В самой верхней строчке находятся микросхемы, которые приклеиваются
внутреннюю сторону поздравительных открыток для проигрывания
мелодий типа «Happy Birthday», свадебного марша или чего-нибудь в этом
роде.
▪ Наиболее значимым достижением в области одноразовых компьютеров
стало появление микросхем RFID (Radio Frequency Identification —
радиочастотная идентификация). На безбатарейных микросхемах
толщиной меньше 0,5 мм и себестоимостью в несколько центов
устанавливаются крошечные приемопередатчики радиосигналов; кроме
того, им присваивается уникальный 128-разрядный идентификатор.
▪ При получении импульса с внешней антенны они получают питание на
время, достаточное для отправки ответного импульса со своим номером.
Разновидности RFID
Технологическая основа RFID стремительно развивается. Наиболее миниатюрные из
микросхем этого типа пассивны (не содержат внутреннего источника питания), а их
возможности ограничиваются передачей уникальных идентификаторов по внешним
запросам.
Более крупные микросхемы RFID активны, в них могут быть встроены аккумуляторы и
элементарный компьютер, а соответственно, они способны выполнять определенный
набор вычислительных операций. В эту последнюю категорию, помимо прочих, входят
смарт-карты, применяемые в финансовых операциях.
Микросхемы RFID также различаются по применяемым радиочастотным диапазонам.
Чем ниже частота, тем ниже скорость передачи данных, но в то же время тем больше
расстояние от антенны, на котором возможно считывание информации с микросхемы.
Соответственно, микросхемы, работающие на высоких частотах, характеризуются
высокой скоростью передачи данных и весьма ограниченным радиусом действия.
Микрокомпьютеры
Вторую строку в таблице занимают компьютеры, которыми оснащаются разного рода бытовые устройства.
Такого рода встроенные компьютеры, называемые также микроконтроллерами , выполняют функцию управления
устройствами и организации их пользовательских интерфейсов. Диапазон устройств, работающих с помощью
микрокомпьютеров, крайне широк (примеры даются в скобках)
▪ бытовые приборы (будильники, стиральные машины, сушильные аппараты, микроволновые печи, охранные
сигнализации);
▪ коммуникаторы (беспроводные и сотовые телефоны, факсимильные аппараты, пейджеры);
▪ периферийные устройства (принтеры, сканеры, модемы, приводы CDROM);
▪ развлекательные устройства (видеомагнитофоны, DVD-плееры, музыкальные центры, MP3-плееры,
телеприставки);
▪ формирователи изображений (телевизоры, цифровые фотокамеры, видео-камеры, объективы,
фотокопировальные устройства);
▪ медицинское оборудование (рентгеноскопические аппараты, томографы, кардиомониторы, цифровые
термометры);
▪ военные комплексы вооружений (крылатые ракеты, межконтинентальные баллистические ракеты, торпеды);
▪ торговое оборудование (торговые автоматы, кассовые аппараты);
▪ игрушки (говорящие куклы, приставки для видеоигр, радиоуправляемые машинки и лодки).
Сферы применения микроконтроллеров
▪ В любой современной машине представительского класса
устанавливается до 50 микроконтроллеров, которые управляют
различными подсистемами, в частности автоблокировкой колес,
впрыском топлива, магнитолой, освещением и системой навигации.
▪ В реактивных самолетах количество микроконтроллеров достигает 200 и
даже более
▪ В любом домашнем хозяйстве имеется по несколько сот компьютеров,
причем члены семьи зачастую даже не подозревают об их
существовании.
▪ Через несколько лет практически все приборы, работающие на
источниках электропитания, будут оснащаться микроконтроллерами
Особенности микроконтроллеров
▪ Микроконтроллеры представляют собой полноценные вычислительные устройства.
Каждый микроконтроллер состоит из процессора, памяти и средств ввода-вывода.
Ввод-вывод, как правило, осуществляется отслеживанием состояния кнопок и
переключателей с контролем состояния световых индикаторов, дисплея и звуковых
компонентов устройства.
▪ Программное обеспечение микроконтроллеров в большинстве случаев прошивается.
производителем в виде постоянной памяти.
▪ Все микроконтроллеры можно разделить на два типа: универсальные и
специализированные.
▪ Первые фактически являют собой обычные компьютеры, уменьшенные в размере.
Специализированные же микроконтроллеры отличаются индивидуальной архитектурой
и набором команд, приспособленными для решения определенного круга задач,
например, связанных с воспроизведением мультимедийных данных.
▪ Микроконтроллеры бывают 4-, 8-, 16- и 32-разрядными.
Различия между ПК и микроконтроллерами
▪ Во-первых, разница в цене, может отличаться на порядок.
▪ Во-вторых, почти все микроконтроллеры работают в реальном времени.
За каждым входным сигналом должен следовать незамедлительный
отклик. К примеру, после нажатия пользователем кнопки во многих
приборах включается световой индикатор, причем между первым и
вторым событием не должно быть никаких пауз.
▪ В-третьих, встроенные системы зачастую ограничены по многим
электрическим и механическим параметрам, таким как размер, вес и
энергопотребление. С учетом этих ограничений и разрабатываются
микроконтроллеры, устанавливаемые в такого рода системах.
Мобильные и игровые компьютеры
▪ В сущности, это обычные компьютеры, в которых расширенные
возможности графических и звуковых контроллеров сочетаются с
ограничениями по объему ПО и пониженной расширяемостью.
▪ Первоначально в эту категорию входили компьютеры с процессорами
низших моделей для простых телефонов и игр типа пинг-понга, которые
предусматривали вывод изображения на экран телевизора. С годами они
превратились в достаточно мощные системы, которые по некоторым
параметрам производительности ничем не хуже, а иногда даже лучше
персональных компьютеров.
Аппаратные характеристики игровых
компьютеров
▪ Sony PlayStation 3: содержит многоядерный специализированный
процессор с частотой 3,2 ГГц на базе RISC-процессора IBM PowerPC, и
семь 128-разрядных элементов SPE (Synergistic Processing Elements).
PlayStation 3 также оснащается 512 Мбайт памяти, графическим
процессором Nvidia с частотой 550 МГц и проигрывателем Blu-ray.
▪ Microsoft Xbox 360: содержит трехъядерный процессор IBM PowerPC с
частотой 3,2 ГГц с 512 Мбайт памяти, графическим процессором ATI с
частотой 500 МГц, DVD-проигрывателем и жестким диском.
▪ Планшет Samsung Galaxy: содержит двухъядерный ARM-процессор с
частотой 1 ГГц, а также графический процессор (интегрированный в
однокристальную систему Nvidia Tegra 2), 1 Гбайт памяти, две камеры, 3осевой гиродатчик и флэш-память.
Персональные компьтеры
▪ Персональные компьютеры делятся на две основных категории: настольные и
портативные (ноутбуки).
▪ Как правило, те и другие комплектуются модулями памяти общей емкостью в несколько
гигабайт, жестким диском с данными на несколько терабайтов, приводом CDROM/DVD/Blu-ray, звуковой картой, сетевым интерфейсом, монитором с высоким
разрешением и другими периферийными устройствами.
▪ На них устанавливаются сложные операционные системы, они расширяемы, при работе
с ними используется широкий спектр программного обеспечения.
▪ Центральным компонентом любого персонального компьютера является печатная плата,
на которой устанавливаются процессор, память и устройства ввода-вывода (звуковая
плата, возможно — модем и т. д.), а также интерфейсы клавиатуры, мыши, дискового
привода, сетевой платы и прочих периферийных устройств, а также расширительные
гнезда.
Серверы
▪ Мощные персональные компьютеры и рабочие станции часто
используются в качестве сетевых серверов — как в локальных сетях
(обычно в пределах одной организации), так и в Интернете. Серверы, как
правило, поставляются в однопроцессорной и мультипроцессорной
конфигурациях. В системах из этой категории обычно устанавливаются
модули памяти общим объемом в несколько гигабайтов, жесткие диски
емкостью в терабайты и высокоскоростные сетевые интерфейсы.
Некоторые серверы способны обрабатывать тысячи транзакций в
секунду.
▪ С точки зрения архитектуры, однопроцессорный сервер не слишком
отличается от персонального компьютера. Он просто работает быстрее,
занимает больше места, содержит больше дискового пространства и
устанавливает более скоростные сетевые соединения.
Кластеры
▪ Кластер состоит из нескольких стандартных серверных систем,
подключенных друг к другу по высокоскоростной сети и снабженных
специальным программным обеспечением, которое позволяет
направлять их ресурсы на решение единых задач (как правило, научных
и инженерных). В большинстве случаев компоненты кластера — это
совершенно обычные коммерческие машины. Основным дополнением
становятся высокоскоростные сетевые соединения, которые, как
правило, тоже можно организовать при помощи стандартных сетевых
плат.
▪ Большие кластеры обычно размещаются в специальных залах или
зданиях, называемых центрами обработки данных . Размеры центров
обработки данных изменяются в широких пределах, от десятков до
сотен тысяч и более машин.
Мейнфреймы
Большие компьютеры размером с комнату, традиционно называемых мэйнфреймами. В
большинстве случаев эти системы — прямые потомки больших компьютеров серии 360.
▪ Обычно они работают не намного быстрее, чем мощные серверы, но у них выше
скорость процессов ввода-вывода и они часто оснащаются огромными дисковыми
массивами, в которых хранятся многие тысячи гигабайт информации.
▪ Такие системы обходятся дорого, но часто продолжают работать из-за значительных
вложений в программное обеспечение, данные и персонал, обслуживающий эти
компьютеры
▪ Мэйнфреймы начали возрождаться под влиянием Интернета, в котором они заняли
нишу мощных серверов, способных обрабатывать огромное количество транзакций в
секунду, что крайне актуально для электронной коммерции в целом, и компаний,
вынужденных обслуживать громадные базы данных в частности.
Download