IBM-PC-совместимый компьютер
![](https://cdn.xn--h1ajim.xn--p1ai/thumb.php?f=Compaq_portable.jpg&width=300)
IBM-PC-совместимый компьютер — семейство компьютеров, происходящее от IBM PC, XT и AT, обладающее определёнными архитектурными особенностями, развивавшееся под влиянием компаний Intel и Microsoft[1]. Совместимость касается как программного обеспечения, позволяя запускать его на актуальных машинах без эмуляции, так и аппаратного за счёт использования открытых стандартов. Из-за ослабления влияния фирмы IBM её название отпало, и их стали называть просто PC-совместимым или даже «PC». Не любой персональный компьютер является PC[2], в то же время не любой PC является персональным компьютером — существуют PC-совместимые серверы и кластеры.
История
Предыстория
PC не был первым персональным компьютером вообще и даже первым персональным компьютером фирмы IBM. С 1975 года выпускались машины серии 51XX на процессоре собственной разработки IBM PALM , представлявшем собой набор микросхем невысокой степени интеграции и отдельных транзисторов. В 1980 году готовился к выпуску наследник этой серии уже на микропроцессоре Intel 8085 — IBM System/23, известный как «Datamaster», однако из-за проблем с портированием на новую систему языка BASIC выход новой машины задерживался[3]. Этот восьмибитный компьютер был значительно дороже конкурентов: Apple II, Commodore VIC-20, Atari 400/800 и TRS-80 CoCo и не имел даже возможности отображать графику. Компании требовалась более дешёвая модель, разработку которой поручили Дону Эстриджу. Для ускорения разработки ему дали полную свободу действий, в том числе широкое использование компонентов сторонних производителей.
Оригинальный IBM PC
Несмотря на небольшой размер команды, разработка IBM PC заняла всего год — компьютер был представлен в августе 1981, спустя месяц после выхода System/23. Важнейшими особенностями IBM PC были модульный принцип — когда устройство состояло из сменных модулей, и принцип открытой архитектуры, заключавшийся в том, что устройство компьютера не держалось в секрете, комплект схем продавался за $49 — для того, чтобы облегчить сторонним производителям задачу разработки периферии[4]. Другая важная особенность IBM PC — использование BIOS, прошитого в ПЗУ системной платы промежуточного ПО, реализующего стандартный программный интерфейс для доступа к её функциям без знания их конкретной аппаратной реализации и обращений к ОС. Этот же подход приняли многие разработчики периферии (например, жёстких дисков), записывая в ПЗУ своих устройств ПО драйверов низкого уровня, реализующих стандартные протоколы. Чтобы помешать конкуренции, компания IBM запатентовала прошивку BIOS, запретив её использование в компьютерах конкурентов[5][6][7]. Однако запатентован был лишь конкретный код прошивки, но не её программный интерфейс, что впоследствии позволило сторонним разработчикам выпускать программно-совместимые продукты, обходя патент IBM с использованием метода «чистой комнаты»[6].
Первые совместимые компьютеры
Слухи о том, что другие компании готовятся к выпуску совместимых с IBM PC компьютеров возникли сразу же после выхода PC[8][9] Спустя год после выхода в журнале InfoWorld появилась заметка[10]:
Обратная сторона открытых стандартов — подражание. Если их текст понятен, чтобы разрабатывать периферию, он подходит и для разработки всего компьютера. У Apple … есть патенты на два важнейших компонента их системы …, а у IBM похоже нет специальных патентов на PC, что делает их ещё более уязвимыми. Несколько PC-совместимых машин — по слухам не меньше 60 — уже скоро появятся на рынке.
Оригинальный текст (англ.)[показатьскрыть]The dark side of an open system is its imitators. If the specs are clear enough for you to design peripherals, they are clear enough for you to design imitations. Apple … has patents on two important components of its systems … IBM, which reportedly has no special patents on the PC, is even more vulnerable. Numerous PC-compatible machines—the grapevine says 60 or more—have begun to appear in the marketplace.
Популярность IBM PC была столь высока, что они сразу стали большим дефицитом, что также гарантировало высокий спрос на совместимые машины[11][12][13]. Первыми стали Columbia Data Products, выпустив в июне 1982 года модель MPC 1600. Тогда же вышел частично совместимый Eagle 1600 от Eagle Computer, а в ноябре — первый переносной PC-совместимый компьютер Compaq Portable . Проблему с патентом на BIOS компании решали путём реверс-инжиниринга по «методу чистой комнаты». В том же году лицензионные копии процессоров Intel стала выпускать компания AMD.
В мае 1984 года компания Phoenix Technologies выпустила на рынок Phoenix BIOS, вскоре появились и другие разработчики — American Megatrends и Award Software, что позволило выйти на рынок PC-совместимых компьютеров другим производителям.
Ослабление IBM, усиление роли Intel и Microsoft
Желая вытеснить конкурентов с рынка в 1987 году компания IBM выпустила модель PS/2[14] — серию компьютеров с более высокими характеристиками, чем у имевшихся на рынке моделей других производителей за счёт новой шины MCA с большей, чем у ISA, пропускной способностью, а также поддерживающую автоматическое определение подключенного устройства. Однако лицензионная политика в отношении новинки была слишком жёсткой, отчего производители предпочли скооперироваться и разработать шину EISA, которая не ломала бы совместимость со старыми устройствами. В дальнейшем компания Intel разработала более удачную шину PCI, которая оказалась более популярна, чем EISA и стала стандартом де-факто до выхода в 2004 году шины PCIe. Таким образом, вместо вытеснения конкурентов, с выпуском PS/2 компания IBM окончательно потеряла своё влияние на рынок PC-совместимых машин, уступив место Intel и Microsoft. В 2004 году IBM объявила об уходе с рынка PC-совместимых компьютеров[15], впоследствии продав все права на производство ноутбуков и настольных компьютеров компании Lenovo.
Эпоха Windows
Несмотря на то, что компьютеры с процессорами 80386 были доступны с 1986 года (один из первых — Compaq Deskpro ), основной операционной системой для PC оставалась MS-DOS, однозадачная ОС, не использовавшая всех возможностей процессора. Альтернативные ОС для PC существовали, но не пользовались популярностью, либо использовались только в узкоспециализированных нишах. Первые версии Windows также не получили широкого распространения, к тому же это были лишь надстройки над DOS, реализующие многозадачность и среду рабочего стола.
Но эту ситуацию изменил выход Windows 95, сопровождавшийся масштабной рекламной кампанией. По функциональности Windows 95 уже стояла наравне с конкурентами с других платформ, поддерживалась автоконфигурация оборудования (Plug&Play) и защита памяти. Кроме того, для игровых и мультимедийных приложений было разработано API DirectX, предоставляющее доступ к расширенным функциям видеоадаптера, звуковой карты и игровых контроллеров. С выходом Windows 95 Microsoft стала основным игроком, наряду с Intel, диктующим основные стандарты платформы. В частности, компании Intel и Microsoft в 1997—2001 годах выпускали набор спецификаций PC System Design Guide, диктовавший, какие стандарты должен поддерживать компьютер, чтобы считаться PC-совместимым.
Тем не менее, приложения для DOS, в том числе игры продолжали выпускаться и после появления Windows 95, в частности игры на движке Build Engine, такие как Duke Nukem 3D (1996). Основная причина — однозадачный DOS позволял отдавать все ресурсы процессора игре, что позволяло снизить системные требования, а также незрелость «игровых» API, имевших низкую функциональность и большие накладные расходы, что ограничивало производительность. Первой широко принятой индустрией видеоигр версией DirectX, обеспечивающей сравнимую с DOS производительность, была пятая, вышедшая одновременно с Windows 98 в мае 1998 года.
Дальнейшее развитие платформы
В 1995 году компания Intel представила стандарт ATX, диктующий геометрические размеры компонентов компьютера, расположение, форму и распиновку разъёмов и крепёжных элементов, а также параметры блока питания. Этот стандарт прижился не сразу, став массовым только с начала 2000-х годов — до тех пор производители ориентировались на IBM PC/AT.
С 1997 по 2001 компании Intel и Microsoft совместно выпускали документ под названием PC System Design Guide, содержащий рекомендации о том, какие стандарты должен поддерживать компьютер, чтобы считаться PC-совместимым. Было выпущено четыре редакции: PC97, PC98, PC99 и PC2001. Кроме основных стандартов они содержали рекомендации по цветовому кодированию разъёмов, а также о том, какие технологии следует считать устаревшими и воздержаться от их использования в новых моделях и от поддержки в новых версиях ПО.
Архитектура
IBM-PC-совместимые компьютеры построены на базе микропроцессоров, совместимых с 8086[16]. Обязательно также наличие BIOS или UEFI, стандартных для PC системы адресации, прерываний, прямого доступа к памяти и системных шин (в зависимости от поколения компьютера это может быть ISA, PCI или PCI-Express)[17].
Процессор
Оригинальный IBM PC производился с процессором Intel 8088. Кроме 16-битной системы команд этот процессор мог адресовать без дополнительных ухищрений до 1 мегабайта (220 байт) оперативной памяти, когда большинство применяемых в персональных компьютерах микропроцессоров могли адресовать только 64 килобайта[18]. Позже его сменил сначала Intel 80286, имевший защищённый режим и умевший адресовать до 16 мегабайт (224), а потом — Intel 80386, с 32-битным машинным словом и адресным пространством до 4 гигабайт (232)[18]. В дальнейшем, вплоть до перехода на x86-64, изменения практически не затрагивали систему команд, хотя его внутреннее устройство значительно перерабатывалось: математический сопроцессор был перенесён внутрь кристалла процессора, появился процессорный кэш, изменялась внутренняя архитектура процессора и т.д.
Математический сопроцессор
Изначально, вплоть до Intel 80386 процессоры Intel не имели встроенных средств для расчётов с плавающей запятой, однако в качестве опции для этой цели мог быть установлен дополнительный сопроцессор. Начиная с Intel 80486 блок для работы с плавающей запятой становится частью центрального процессора.
x86-64
На смену процессорам архитектуры IA-32 компания Intel готовила совершенно новую архитектуру — Itanium. Однако, ошибки в маркетинге и технические проблемы привели к тому, что конкуренцию выиграла архитектура x86-64, разработанная компанией AMD и почти полностью обратно совместимая с 32-битной архитектурой процессоров Intel.
Распределение памяти
Основная область памяти, барьер 640 килобайт
В процессорах intel 8086/8088 доступно лишь 1 мегабайт (220 байт) памяти, однако через часть этого пространства доступна видеопамять, память BIOS и различных внешних устройств, поэтому для самих программ остаётся только 640 килобайт (адреса 0x00000
— 0x9FFFF
)[19]. Более поздние модели процессоров имеют больший объём адресуемой памяти, но для этого требовалось перейти в другой режим процессора. Кроме того, особенность конструкции процессора intel 80286 позволяла с помощью определённых ухищрений обращаться к дополнительным 64К памяти (0x100000
− 0x10FFFF
), и для обеспечения совместимости с таким режимом был организован специальный ключ, доступный через порт контроллера клавиатуры[20].
Верхняя память (UMA)
Адреса с 0xA0000
по 0xFFFFF
заполнены данными различных устройств: сюда проецируется часть видеопамяти, BIOS , память настроек и области конфигурирования Plug and Play[21]. Для ускорения работы с этой областью памяти может использоваться так называемое «теневое ОЗУ», когда данные при записи копируются и в память устройства, и в специальную область ОЗУ, а при чтении берутся только из ОЗУ, однако такой режим доступен на процессорах 80386 и выше, и только для тех устройств, которые не могут самостоятельно изменять значения этой памяти[22].
Кроме того, существует возможность отображать на область UMA и области из дополнительной памяти — с помощью спецификаций EMS и XMS[23].
Дополнительная память
Начиная с процессора 80286 появился защищённый режим, который имеет две функции: доступ к областям памяти дальше 1 мегабайта и защита памяти. Изначально существовало два способа доступа к памяти: сегментный и страничный, однако первый, несмотря на свои преимущества, так и не получил распространения из-за своей сложности, поэтому начиная с x86-64 процессоры поддерживают только страничную адресацию[24].
Память режима SMM
Область памяти, доступная в режиме SMM — достаточно невелика, но к ней невозможно стандартными средствами обратиться из операционной системы и прикладных программ. Эта память используется для того, чтобы режим SMM включался прозрачно для других программ и не портил регистры процессора, а также для хранения данных и кода, необходимых для работы SMM[25].
Виртуальная память
Процессоры типа x86 позволяют адресовывать больше памяти, чем физически имеется в системе. При попытке обращения к недоступной памяти процессор генерирует специальное исключение, которое обрабатывает операционная система, и при необходимости может либо подгрузить нужные данные из внешнего устройства (как правило, с диска), либо выдать ошибку. Благодаря механизму страничной адресации часть памяти может быть в любой момент выгружена, а на её место загружены другие данные, благодаря этому происходит прозрачная для выполняемых программ подкачка[24][26].
Пространство ввода-вывода
В процессорах типа x86 хотя для адресации портов ввода-вывода используется шина адреса, на процессоре имеются специальные выходы для переключения между пространством памяти и ввода-вывода. Таким образом, запись в порт ввода-вывода с адресом равным адресу ячейки памяти не приведёт к записи в эту ячейку и наоборот. На шине ISA эта адресация использовалась напрямую, на более поздних — передаётся в виде специальных команд. Для ввода-вывода доступно только 16 бит адреса, следовательно — не более 65536 портов, однако в некоторых картах могла использоваться неполная дешифрация, из-за чего учитывались только первые 10 или 12 бит. Первые 256 адресов назначаются стандартным устройствам, расположенным как правило на материнской плате: системному таймеру, клавиатуре, контроллеру прерываний, FPU и т.д. В шине ISA адреса устройствам назначались жёстко, в более поздних шинах (MCA, PCI, PCIe) — программированием чипсета и мостов[27]. Однако, начиная с шины PCI есть тенденция к уходу от использования регистров ввода-вывода и непосредственного отображения устройств на память, что позволяет снять ограничение на количество портов и перемещать эти области в любую часть памяти[28].
Прерывания
PC имеет достаточно развитую систему прерываний, с приоритетами, маскируемыми и немаскируемыми прерываниями. За обработку маскируемых прерываний отвечают специальные контроллеры прерываний. Немаскируемые прерывания генерируются схемами чипсета и материнской платы и используются для работы с памятью и системной шиной. Кроме того существует специальное прерывание, переводящее процессор в режим SMM[29]. При этом одна линия запроса прерывания может использоваться одновременно несколькими устройствами.
Традиционный контроллер прерываний
Контроллер 8259A позволял обрабатывать до 8 запросов прерываний. В IBM PC/AT использовалось каскадное включение двух контроллеров, что позволило увеличить количество запросов до 15. Контроллер позволяет выбирать вектор прерывания для каждого из запросов, а также настраивать вид запроса прерывания (по уровню или перепаду), маскировать отдельные линии[30].
Улучшенный контроллер прерываний
Улучшенный контроллер прерываний позволил работать в многопроцессорном режиме. Кроме обработки маскируемых, немаскируемых и SMI-прерываний и распределения их по процессорам новый контроллер позволял посылать прерывания от одного процессора на другой. Для этого каждый процессор имеет свой локальный контроллер прерываний, а также контроллеры для устройств ввода-вывода (I/O APIC), все контроллеры при этом соединены специальной шиной. Новый контроллер также позволяет увеличить количество входов запросов прерываний[31].
Прямой доступ к памяти
В шине ISA использовался специализированный контроллер intel 8237A . Начиная с шины PCI контроллер стал частью мастера шины и уже не был стандартным и централизованным, но мог работать в режиме совместимости с 8237A. Основные устройства, использующие прямой доступ к памяти — это накопители (жёсткие диски, SSD, CD/DVD), звуковые карты. Тем не менее, во времена шины ISA жёсткие диски могли работать без ПДП, несмотря на то, что такой режим создавал нагрузку на процессор: потому, что стандартный контроллер не обеспечивал достаточной скорости работы, и ему была доступна не вся память[32].
BIOS
Одно из важнейших особенностей платформы стала система BIOS — набор программ, хранящихся в ПЗУ и предоставляющих стандартизированные вызовы для работы с базовыми возможностями платформы. Использование BIOS позволило с одной стороны вносить изменения в реализацию отдельных устройств компьютера, не теряя совместимости с платформой. Кроме того, на BIOS возложены функции начального тестирования (POST) и загрузки операционной системы. С появлением Plug-and-play, ACPI эти функции также возложены на BIOS[33]. BIOS была одним из компонентов, который IBM запатентовала, поэтому сторонние разработчики PC-совместимых компьютеров вынуждены были разрабатывать собственные версии BIOS по методу «чистой комнаты».
Энергонезависимая память BIOS
Часть настроек BIOS может изменяться в процессе эксплуатации компьютера, такие как частота тактового генератора, устройство, на котором хранится операционная система, и т.д. На первых PC эти настройки осуществлялись переключением перемычек или dip-переключателей, но такой способ сильно ограничивал возможности настройки. В дальнейшем для хранения настроек стала использоваться микросхема памяти небольшого объёма, которая может работать от собственного малогабаритного источника питания. Для работы с этими настройками используется специальная программа BIOS setup, которая вызывается специальным сочетанием клавиш при запуске компьютера.
Часы реального времени
Кроме хранения настроек, наличие элемента питания позволило включить в число стандартных устройств часы реального времени, позволяющих получать значения текущей даты и времени. Некоторые ранние реализации часов хранили только две десятичные цифры года и содержали упрощённый алгоритм расчёта високосных годов, из-за чего были подвержены проблеме-2000[34].
UEFI
Изначальная реализация BIOS работала исключительно в реальном режиме процессора и использовала только 16-битные команды. Для замены BIOS была разработана новая спецификация, названная «UEFI». Кроме 32-битного режима и расширенных возможностей конфигурирования оборудования, UEFI включала новую спецификацию таблиц разделов и загрузочной записи — GPT.
Системный таймер
В отличие от многих персональных компьютеров 70−80-х, тактовая частота PC не привязана жёстко к архитектуре и может меняться даже в процессе работы. Не является неизменной величиной также и количество тактов, за которые процессор выполняет те или иные операции. Для того, чтобы отмерять интервалы времени — более короткие, чем доступны через опрос часов реального времени — используются специальные таймеры. В IBM PC и PC/XT использовалась микросхема intel 8253, в AT — более совершенная intel 8254 , в дальнейшем их функции взял на себя чипсет. Кроме того, один из каналов этого таймера подключается к динамику, который до появления полноценных звуковых карт был основным способом вывода звука для всех PC-совместимых компьютеров[35]. С 2005-го года этот таймер стал заменяться на таймер нового стандарта, названного HPET, который позволил отмерять интервалы времени с большей точностью.
Несмотря на наличие таймера, некоторые ранние игры для PC не использовали таймер, а опирались на традиционный для домашних компьютеров 80-х подсчёт тактов процессора. Для сохранения совместимости с такими играми, некоторые компьютеры оснащались кнопкой «Turbo», переключавшей тактовую частоту процессора между частотой оригинального IBM PC и более высокой, поддерживаемой данной моделью[36][37][38].
Шины расширения
В большинстве случаев, PC-совместимые компьютеры, в зависимости от поколения, используют одну из шин: ISA, PCI или PCIe. Для целей совместимости со старым оборудованием могут устанавливаться слоты более старых шин, подключенные через межшинный мост. В компьютерах, использовавших в качестве основной шины расширения шину PCI, для подключения видеокарт могла использоваться специализированная шина — AGP. Для подключения внешних устройств также используются не специфичные конкретно для PC шины: USB, Fire Wire, SCSI и другие.
ISA
Шина расширения, позже названная ISA, которая использовалась в первых IBM PC, была почти полностью взята из компьютера System/23. В PC было изменено назначение лишь пяти сигнальных линий[39]. В 1984 году к шине ISA было добавлено ещё 36 линий для увеличения её пропускной способности. В 1987 году компания IBM перешла на новую шину MCA, однако лицензионная политика оттолкнула производителей периферии и консорциум из девяти производителей компьютеров разработал свой вариант шины, обратно совместимый с ISA — EISA. Новая шина также не получила распространения в персональных компьютерах, где продолжала использоваться старая шина, пока она не была вытеснена шиной PCI, но использовалась в серверах.
PCI
Этот раздел не завершён. |
AGP
Этот раздел не завершён. |
PCI Express
Этот раздел не завершён. |
Видеоподсистема
Этот раздел не завершён. |
Текстовый режим
Знакогенераторы большинства PC-совместимых компьютеров содержали достаточно богатый набор дополнительных символов, прежде всего символов рисования рамок, заполнения знакомест и различных спецсимволов. Это, а также тот факт, что графический режим был прост в программировании и имел высокое быстродействие, определило его достаточно высокую популярность. К примеру, многие текстовые процессоры, такие как Word Star, в основном работали в текстовом режиме, а в графический режим переключались исключительно для демонстрации готового документа перед его печатью.
VESA
Этот раздел не завершён. |
Аудиоподсистема
Этот раздел не завершён. |
AC97
Этот раздел не завершён. |
High Definition Audio
Этот раздел не завершён. |
Электропитание
Ранние PC требовали для питания четырёх напряжений: ±5 В и ±12 В[40]. Большинство цепей питалась от напряжения +5 В — стандартного напряжения питания для микросхем ТТЛ. От +12 вольт питались отдельные мощные потребители, такие как двигатели приводов гибких и жёстких дисков. Отрицательные напряжения нужны были для работы некоторых портов ввода-вывода и для соблюдения спецификации шины ISA. Для надёжного запуска компьютера имеется также контакт «Power Good», на который подаётся напряжение только после того, как на выходе источника питания установится стабильное напряжение[41]. В первых PC выключатель питания располагался в задней части правой панели корпуса, там где располагался блок питания[42], позже был вынесен на переднюю панель.
По мере роста тактовой частоты процессора появилась потребность в источниках питания более низкого напряжения, но при этом способных отдавать достаточно большой ток. Для этой цели на материнской плате стали устанавливать модуль регулятора напряжения (VRM).
Отдельные потребители, такие как дисководы жёстких и гибких дисков, а также корпусные вентиляторы, системы охлаждения и подсветки, могут подключаться к блоку питания через отдельные кабели с разъёмами MOLEX 8981, AMP 171822-4 или MOLEX 88751.
Блок питания ATX
Важнейшей особенностью стандарта ATX стала новая схема электропитания. Прежде всего, вместо непосредственной коммутации сетевого напряжения выключателем, используется косвенное управление с помощью низковольтного сигнала PS-ON#[43]. Для её работы, а также для питания некоторых цепей компьютера, работающих в дежурном режиме, блок питания стал оснащаться дополнительным маломощным источником дежурного режима (+5VSB). Также блок питания выдаёт напряжение +3,3 В, однако это не привело к отказу от модуля VRM, так как напряжение питания процессора продолжило снижаться. Для лучшей стабилизации напряжения 3,3 В на разъёме питания распаивается дополнительный провод обратной связи (+3.3VSense). По мере роста мощности рассеивания центральных процессоров роль линий +3,3 и +5 В стала снижаться, основным потребителем становится линия +12 В. Для питания высокопроизводительных процессоров и видеокарт могут устанавливаться дополнительные разъёмы +12 В в непосредственной близости от потребителя.
Управление электропитанием
Этот раздел не завершён. |
Устройства хранения
Оригинальный IBM PC поставлялся с одним или двумя 5,25″ — дисководами и разъёмом для подключения магнитофона. В IBM PC/XT был добавлен жёсткий диск с интерфейсом ST-506, но убран разъём магнитофона. Начиная с PC/AT стал использоваться более совершенный интерфейс жёстких дисков, получивший название IDE.
IDE/ATA
Интерфейс ST-506 обладал серьёзными недостатками: прежде всего, шлейф между диском и контроллером был чувствителен к помехам, кроме того, каждое новое поколение жёстких дисков требовало бы нового контроллера. Чтобы избежать этого, компания Western Digital в 1986 году разработала новый интерфейс, в котором контроллер, управляющий позиционированием головок и считыванием данных располагался непосредственно на корпусе диска, а та часть контроллера, которая устанавливалась в шину расширения отвечала бы лишь за передачу команд жёсткому диску. Позже интерфейс ATA был расширен для возможности подключения к нему приводов компакт-дисков.
SATA
Серьёзный недостаток интерфейса ATA — то, что накопитель подключается широкий многоконтактный шлейф, достаточно неудобный в эксплуатации. Кроме того, несмотря на то, что параллельный интерфейс при той же частоте следования импульсов передаёт данные с большей скоростью, для гибких шлейфов достаточно большой длины с ростом частоты возникают проблемы синхронизации. Таким образом, несмотря на переход с параллельного на последовательный интерфейс, SATA позволил увеличить скорость обмена данными. К тому же SATA предполагал подключение каждого накопителя к индивидуальному разъёму, что облегчило задачу «горячей» замены накопителя.
NVMe
Этот раздел не завершён. |
Отдельные периферийные устройства
COM-порт
PC-совместимые компьютеры могут иметь до четырёх аппаратных портов RS-232, обозначаемых как COM1…COM4, поддерживаемых на уровне BIOS. Каждый занимает по 8 8-битных регистров ввода-вывода (от 0x2E8
до 0x3FF
) разделяют два аппаратных прерывания на четыре порта (IRQ4 для COM1 и COM3 и IRQ3 для COM2 и COM4). Также COM-порт может работать со средствами прямого доступа к памяти. Достаточно длительное время с помощью COM-портов подключали мыши, модемы и некоторое другое оборудование, однако из-за невысокой скорости работы, отсутствия средств автоматического конфигурирования и других недостатков, начиная со спецификации PC99 использование этого порта не рекомендуется[44]. Вместо этого используются порты USB, а при необходимости связи с устройствами, имеющими интерфейс RS-232 применяются как специальные мосты USB-UART.
В DOS встроены средства непосредственной передачи консольного вывода в COM-порт и приёма через него консольного ввода, что позволяло подключать через него терминалы. Кроме того, возможно соединение компьютеров с помощью так называемого нуль-модемного кабеля, что позволяло объединять компьютеры в примитивную локальную сеть[45].
Параллельный порт
Другой способ подключения внешних устройств, существовавший с первых IBM PC — параллельный порт, который обозначался как «LPT» (Line Printer Terminal). Основное назначение этого порта — подключение принтера[46]. По большей части этот порт совместим со ставшим к тому времени стандартом интерфейсом принтеров «Centronics», однако компания IBM намеренно внесла в него некоторые изменения, чтобы сделать невозможным подключение имеющихся в продаже принтеров к новому компьютеру, за исключением собственных моделей. Однако производители принтеров достаточно быстро начали выпускать принтеры, совместимые как с IBM, так и с Centronics[47]. Позже появилось множество расширений порта LPT, которые позволяли использовать его для различных целей, отличных от подключения принтера, в том числе сделать его симметрично-двусторонним[48]. В конечном итоге все эти расширения были сведены в стандарт IEEE 1284[49].
Кроме принтера, через параллельный порт могли подключаться и другие устройства. В отличие от COM-порта, LPT обеспечивал более высокую скорость передачи, поэтому его часто использовали для сканеров, внешних накопителей (в частности, Iomega Zip). Имелась возможность соединения с помощью параллельного порта компьютеров в сеть[50]. Кроме того, за счёт возможности управлять напрямую состоянием отдельных контактов разъёма, LPT-порт мог использоваться вместо GPIO в различных самодельных и мелкосерийных устройствах.
Клавиатура
Механическая часть клавиатуры первого IBM PC почти без изменений была взята от System/23, только вынесена в отдельный корпус и изменены обозначения клавиш. Однако, электрическая часть была переработана, так как в System/23 она соединялась с материнской платой многожильным кабелем, что было неудобно. В дальнейшем, PC-клавиатура претерпела два кардинальных изменения раскладки и одно изменения интерфейса, после чего значительно не менялась, пока не была вытеснена стандартом USB HID.
Мышь PS/2
Этот раздел не завершён. |
Частично совместимые компьютеры
![](https://cdn.xn--h1ajim.xn--p1ai/thumb.php?f=DEC_Rainbow_100.jpg&width=300)
Использование процессора архитектуры x86 или x86-64 недостаточно, чтобы компьютер мог называться PC-совместимым. Он должен поддерживать актуальные на момент его выпуска BIOS/UEFI и стандарты шин. Например, на x86-смартфонах невозможно установить нативно Microsoft Windows, так как для этого нужен в том числе транслятор вызовов для BIOS[51].
В начале эры IBM PC-совместимых компьютеров выпускались также так называемые MS-DOS-совместимые компьютеры. На них можно было запускать ПО, использующее стандартные вызовы MS-DOS а часть более специфических возможностей не поддерживалась. Наиболее известный пример тех лет — Tandy 2000. Также сама компания IBM в 1983 году выпустила IBM PCjr, предназначенный в основном для игр — но его постиг маркетинговый провал, в том числе из-за неполной совместимости со «старшим братом». Тем не менее, совместимый с PCjr Tandy 1000 (позволявший использовать стандартные карты расширения без переходников — PCjr использовал громоздкие и имеющие другую систему разъёмов внешние модули-«коляски» — и обладавший значительно большей программной совместимостью с XT) оказался достаточно успешен — именно из-за улучшенной совеместимости. В СССР наряду с полностью совместимыми ЕС 18xx и Искра 1030 выпускался частично совместимый «Поиск», сильно упрощённый и максимально использующий отечественные компоненты[52]. После распада СССР под маркой «Поиск» стали выпускаться уже полностью совместимые компьютеры.
![](https://cdn.xn--h1ajim.xn--p1ai/thumb.php?f=Mac_Mini_2009_7841.jpg&width=300)
C 2005 года компания Apple отказалось от процессоров PowerPC, перейдя на процессоры архитектуры x86-64. Это позволяло устанавливать на них операционную систему Windows, однако для этого требовалась эмуляция вызовов BIOS и установка специфических драйверов устройств. Для этой цели была выпущена специальная программа Boot Camp[53][54]. C 2020 года в Apple отказались от процессоров Intel в пользу собственной архитектуры Apple silicon, отказавшись от частичной совместимости с PC[55][56].
Wintel
С понятием PC-совместимого компьютера пересекается понятие Wintel (Windows+Intel) — компьютер на x86 — процессоре с операционной системой Windows[57]. Хотя за исключением ранних моделей, PC-совместимый компьютер может работать под управлением Windows, может использоваться и другая операционная система, например Linux, FreeBSD и т. д.
PC как игровая платформа
PC изначально создавался исключительно как платформа для бизнеса. Как домашний компьютер, PC был слишком дорогим. Возможности графического адаптера CGA хоть на момент выхода и не отставали от конкурентов, вскоре стали появляться модели с более широкими возможностями графики, в том числе аппаратными спрайтами и прокруткой. Кроме того, единственным звуковым устройством был системный динамик, который мало годился для игр. В 1983 году компания IBM предприняла попытку выйти на рынок домашних компьютеров с моделью PCjr, но попытка провалилась — PCjr был слишком дорог для «просто домашнего компьютера», а как PC он не был полностью совместим. Тем не менее игры для PC были, в основном порты с других платформ[58].
Лишь к концу 1980-x PC стал рассматриваться как игровая платформа с широким распространением EGA, VGA и SVGA-совместимых видеоадаптеров а также звуковых карт. Важным фактором стало появление CD-ROM, позволявшего хранить значительный по тем временам объём данных в 500 мегабайт. Компьютер, подходящий для работы с играми в те годы назывался мультимедийным. PC тех лет всё ещё отставал от других платформ по графическим и звуковым возможностям: в нём не было никаких средств ускорения обработки графики: ни скроллинга, ни спрайтов, ни тем более 3d-ускорителей (которые уже существовали в компьютерах Amiga). Однако большая производительность центрального процессора и отсутствие клэшинга позволяла компенсировать этот недостаток: в вышедшем в 1990 году Commander Keen in Invasion of the Vorticons был применён плавный программный скроллинг, а в 1992 году вышел Wolfenstein 3D, ставший родоначальником всего жанра игр FPS. В середине 1990-х начали появляться и первые популярные графические ускорители для PC: наиболее известны карты 3dfx Voodoo.
Критика
Этот раздел не завершён. |
Примечания
- ↑ Гук, 2006, с. 96.
- ↑ Is a Mac a PC? (англ.). Computer Hope (24.01.2018). Дата обращения: 19 июля 2021. Архивировано 19 июля 2021 года.
- ↑ Byte, 1990.
- ↑ Tanenbaum, 2018, с. 45.
- ↑ (1984-02-27) «IBM wins disputes over PC copyrights». InfoWorld: 15.
- ↑ 6,0 6,1 (1984-07-10) «Phoenix Says Its BIOS May Foil IBM's Lawsuits». PC Magazine: 56.
- ↑ What Is The BIOS?, Computing Basics (July 1994). Архивировано 10 марта 2012 года. Дата обращения 26 июня 2021.
- ↑ Libes, Sol. Bytelines, BYTE (December 1981), С. 314–318.
- ↑ Lookalikes From Home & Abroad, PC Magazine (February–March 1982), С. 5. Архивировано 26 января 2021 года. Дата обращения 26 июня 2021.
- ↑ Zussman, John Unger. Let's keep those systems open, InfoWorld (23 August 1982), С. 29. Архивировано 26 июня 2021 года. Дата обращения 26 июня 2021.
- ↑ Barmash, Isadore. Corporate Triumph, Then Death in a Ferrari (англ.), The New York Times (10 June 1983), С. A1. Архивировано 26 июня 2021 года. Дата обращения 26 июня 2021.
- ↑ Mace, Scott. IBM PC clone makers shun total compatibility, InfoWorld (9–16 January 1984), С. 79–81. Архивировано 26 июня 2021 года. Дата обращения 26 июня 2021.
- ↑ PC-Compatible Portables, PC Magazine (24 January 1984), С. 39. Архивировано 26 июня 2021 года. Дата обращения 26 июня 2021.
- ↑ Фигурнов, 1995.
- ↑ IBM, LG winding down joint venture (англ.), CNET (31 August 2004). Архивировано 23 апреля 2019 года. Дата обращения 25 ноября 2018.
- ↑ Norton, Peter. Software for Once and All, PC Magazine (5 February 1985), С. 103. Архивировано 5 апреля 2016 года. Дата обращения 28 октября 2013.
- ↑ Гук, 2006, с. 97.
- ↑ 18,0 18,1 Гук, 2006, с. 98.
- ↑ Гук, 2006, с. 99.
- ↑ Гук, 2006, с. 98−99.
- ↑ Гук, 2006, с. 103−104.
- ↑ Гук, 2006, с. 105.
- ↑ Гук, 2006, с. 106−108.
- ↑ 24,0 24,1 Гук, 2006, с. 262−263.
- ↑ Гук, 2006, с. 102−103.
- ↑ Гук, 2006, с. 108−109.
- ↑ Гук, 2006, с. 109−112.
- ↑ Гук, 2006, с. 148−149.
- ↑ Гук, 2006, с. 112−117.
- ↑ Гук, 2006, с. 117−119.
- ↑ Гук, 2006, с. 119−122.
- ↑ Гук, 2006, с. 124−126.
- ↑ Гук, 2006, с. 160−162.
- ↑ Гук, 2006, с. 129−133.
- ↑ Гук, 2006, с. 127−129.
- ↑ PC Cases — Everything You Need To Know Архивная копия от 12 июля 2001 на Wayback Machine. PC Guide.
- ↑ Turbo button Архивная копия от 24 июля 2022 на Wayback Machine, Computer Hope, 10-17-2017
- ↑ Why Did the Turbo Button Slow Down Your PC in the '90s? . howtogeek.com (19 января 2021). Дата обращения: 14 марта 2021. Архивировано 21 января 2021 года.
- ↑ Byte, 1990, p. 418−420.
- ↑ Гук, 2006, с. 78.
- ↑ Гук, 2006, с. 78−79.
- ↑ Byte, 1990, p. 414.
- ↑ Гук, 2006, с. 79-83.
- ↑ Гук, 2006, с. 842−844.
- ↑ Гук, 2006, с. 852−854.
- ↑ Гук, 2006, с. 823.
- ↑ Durda IV, Frank Centronics and IBM Compatible Parallel Printer Interface Pin Assignment Reference (2004). Дата обращения: 5 октября 2007. Архивировано 13 сентября 2007 года.
- ↑ Гук, 2006, с. 825−826.
- ↑ Гук, 2006, с. 826−836.
- ↑ Гук, 2006, с. 838.
- ↑ Paul Morris. How To Install Windows 7 On Android Tablet (англ.) (2015-6-15). Дата обращения: 20 января 2016. Архивировано 13 января 2016 года.
- ↑ Удачный «Поиск» // Наука и жизнь. — 1991. — № 2. — P. 83—86. — ISSN 0028-1263.
- ↑ Broersma, Matthew (April 13, 2006). «Users Find Flaw in Boot Camp».
- ↑ Mossberg, Walter. Boot Camp Turns Your Mac Into a Reliable Windows PC (April 6, 2006). Архивировано 6 марта 2007 года. Дата обращения 19 июля 2021.
- ↑ Apple (2020-06-22). Apple announces Mac transition to Apple silicon. Пресс-релиз. Архивировано из первоисточника 22 июня 2020. Проверено 2021-07-19.
- ↑ Warren, Tom Apple is switching Macs to its own processors starting later this year (англ.). The Verge (22 июня 2020). Дата обращения: 22 июня 2020. Архивировано 22 июня 2020 года.
- ↑ Windows + Intel = Wintel? (англ.). Mayin.org. Дата обращения: 12 января 2010. Архивировано 16 мая 2012 года.
- ↑ У истоков IBM PC — когда ПК стал игровой платформой // Old-Games.RU Podcast : подкаст. — Вып. 83.
Литература
- Э. Танненбаум, Т. Остин. Архитектура компьютера = Structured computer organization. — 6. — Питер, 2018. — С. 42−45. — 816 с. — ISBN 978-5-496-00337-7.
- Фигурнов В.Э. IBM PC для пользователя. — 6-е переработанное и дополненное. — М.: Инфра-М, 1995. — С. 18−21. — 432 с. — ISBN 5-86225-125-1.
- Bradley, David J. The Creation of the IBM PC : [англ.] // BYTE. — 1990. — September. — С. 414—420. — ISSN 0360-5280/90.
- Михаил Гук. Аппаратные средства IBM PC. — 3-е. — СПб.: Питер, 2006. — 1072 с. — 5000 экз. — ISBN 5-469-01182-8.
- Соломенчук Валентин Георгиевич. Аппаратные средства PC. — 6. — СПб.: БХВ-Петербург, 2010. — 800 с. — ISBN 9785977504324.
- Cory Doctorow. 'IBM PC Compatible': How Adversarial Interoperability Saved PCs From Monopolization (англ.). Electronic Frontier Foundation (5 августа 2019). Дата обращения: 14 июля 2021.