состав компьютераЛюбой IBM PC-совместимый компьютер представляет собой реализацию так называемой фон-неймановской архитектуры вычислительных машин. Эта архитектура была представлена Джорджем фон Нейманом еще в 1945 году и имеет следующие основные признаки. Машина состоит из блока управления, арифметико-логического устройства (АЛУ), памяти и устройств ввода-вывода. В ней реализуется концепция хранимой программы: программы и данные хранятся в одной и той же памяти. Выполняемые действия определяются блоком управления и АЛУ, которые вместе являются основой центрального процессора. Центральный процессор выбирает и исполняет команды из памяти последовательно, адрес очередной команды задается «счетчиком адреса» в блоке управления. Этот принцип исполнения называется последовательной передачей управления. Данные, с которыми работает программа, могут включать переменные — именованные области памяти, в которых сохраняются значения с целью дальнейшего использования в программе. Фон-неймановская архитектура — не единственный вариант построения ЭВМ, есть и другие, которые не соответствуют указанным принципам (например, потоковые машины). Однако подавляющее большинство современных компьютеров основаны именно на указанных принципах, включая и сложные многопроцессорные комплексы, которые можно рассматривать как объединение фон-неймановских машин. Конечно же, за более чем полувековую историю ЭВМ классическая архитектура прошла длинный путь развития. Тем не менее ПК можно разложить «по полочкам» следующим образом. Центральный процессор (АЛУ с блоком управления) реализуется микропроцессором семейства х86 — от 8086/88 до Pentium 4 и Athlon (и это не конец истории). При всей внутренней суперскалярности, суперконвейеризированности и спекулятивности современного процессора внешне он соблюдает вышеупомянутый принцип последовательной передачи управления. Набор арифметических, логических и прочих инструкций насчитывает несколько сотен, а для потоковой обработки придуман принцип SIMD — множество комплектов данных, обрабатываемых одной инструкцией (расширения ММХ, SDNow!, SSE). Процессор имеет набор регистров, часть которых доступна для хранения операндов, выполнения действий над ними и формирования адреса инструкций и операндов в памяти. Другая часть регистров используется процессором для служебных (системных) целей, доступ к ним может быть ограничен (есть даже программно-невидимые регистры). Все компоненты компьютера представляются для процессора в виде наборов ячеек памяти или (и) портов ввода-вывода, в которые процессор может производить запись и (или) считывание содержимого. Память «расползлась» по многим компонентам. Оперативная память (ОЗУ) — самый большой массив ячеек памяти со смежными адресами — реализуется, как правило, на модулях (микросхемах) динамической памяти. Для повышения производительности обмена данными (включая и считывание команд) оперативная память кэшируется сверхоперативной памятью. Первый, а зачастую и второй уровень кэширования территориально располагается в микропроцессоре. Оперативная память вместе с кэшем всех уровней (в настоящее время до трех) представляет собой единый массив памяти, непосредственно доступный процессору для записи и чтения данных, а также считывания программного кода. Кроме оперативной память включает также постоянную (ПЗУ), из которой можно только считывать команды и данные, и некоторые виды специальной памяти (например, видеопамять графического адаптера). Вся эта память вместе с оперативной располагается в едином пространстве с линейной адресацией. В любом компьютере обязательно есть постоянная память, в которой хранится программа начального запуска компьютера и минимально необходимый набор сервисов (ROM BIOS). Память дополняется устройствами хранения данных, например, дисковыми. Эти устройства предназначены для записи данных с целью последующего считывания (возможно, и на другом компьютере). От рассмотренной выше памяти, называемой также внутренней, устройства хранения отличаются тем, что процессор не имеет непосредственного доступа к данным по линейному адресу. Доступ к данным на устройствах хранения выполняется с помощью специальных программ, обращающихся к контроллерам этих устройств. Устройства ввода-вывода (УВВ) служат для преобразования информации из внутреннего представления в компьютере (биты и байты) в форму, доступную окружающим, и обратно. Под окружающими понимаем как людей, так и другие машины (например, технологическое оборудование, которым управляет компьютер). К традиционным устройствам ввода относятся клавиатура, мышь, джойстик, к устройствам вывода — дисплей, принтер. Устройства хранения к УВВ относить некорректно, поскольку здесь преобразования информации ради доступности внешнему миру не происходит — что сохранил (неважно, на каком носителе), то и прочитал (если удалось). Существует еще большой класс коммуникационных устройств, предназначенных для передачи информации между компьютерами и (или) их частями. Эти устройства обеспечивают, например, соединение компьютеров в локальной сети или подключение терминала (это УВВ) к компьютеру через пару модемов. Устройства ввода-вывода, хранения данных, коммуникационные и прочие будем называть просто устройствами. От определения «периферийные» здесь пока воздержимся, оно характеризует способ подключения (см. ниже). Процессор, память и устройства взаимодействуют между собой с помощью шин и интерфейсов, аппаратных и программных; стандартизация интерфейсов делает архитектуру компьютеров открытой. | ||