IBM-PC-совместимый компьютер

Материал из Википедии — свободной энциклопедии
(перенаправлено с «IBM PC-совместимый компьютер»)
Перейти к навигации Перейти к поиску
Один из первых IBM-PC-совместимых компьютеров, произведённых не компанией IBM — Compaq portable, поступивший в продажу в 1983 году

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 — уже скоро появятся на рынке.

Популярность 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. Кроме основных стандартов они содержали рекомендации по цветовому кодированию разъёмов, а также о том, какие технологии следует считать устаревшими и воздержаться от их использования в новых моделях и от поддержки в новых версиях ПО.

Архитектура[править | править код]

Структурная схема устройств PC-совместимого компьютера, традиционно располагающихся на материнской плате

IBM-PC-совместимые компьютеры построены на базе микропроцессоров, совместимых с 8086[16]. Обязательно также наличие BIOS или UEFI, стандартных для PC системы адресации, прерываний, прямого доступа к памяти и системных шин (в зависимости от поколения компьютера это может быть ISA, PCI или PCI-Express)[17].

Процессор[править | править код]

Оригинальный IBM PC производился с процессором Intel 8088. Кроме 16-битной системы команд этот процессор мог адресовать без дополнительных ухищрений до 1 мегабайта оперативной памяти, когда большинство применяемых в персональных компьютерах микропроцессоров могли адресовать только 64 килобайта. Позже его сменил сначала Intel 80286, имевший защищённый режим и умевший адресовать до 16 мегабайт, а потом — Intel 80386, с 32-битным машинным словом и адресным пространством до 4 гигабайт. В дальнейшем, вплоть до перехода на x86-64, изменения практически не затрагивали систему команд, хотя его внутреннее устройство значительно перерабатывалось: математический сопроцессор был перенесён внутрь кристалла процессора, появился процессорный кэш, изменялась внутренняя архитектура процессора и т.д.

Математический сопроцессор[править | править код]

Изначально, вплоть до Intel 80386 процессоры Intel не имели встроенных средств для расчётов с плавающей запятой, однако в качестве опции для этой цели мог быть установлен дополнительный сопроцессор. Начиная с Intel 80486 блок для работы с плавающей запятой становится частью центрального процессора.

x86-64[править | править код]

На смену процессорам архитектуры IA-32 компания Intel готовила совершенно новую архитектуру — Itanium. Однако, ошибки в маркетинге и технические проблемы привели к тому, что конкуренцию выиграла архитектура x86-64, разработанная компанией AMD и почти полностью обратно совместимая с 32-битной архитектурой процессоров Intel.

Распределение памяти[править | править код]

Основная область памяти, барьер 640 килобайт[править | править код]

Верхняя память (UMA)[править | править код]

Дополнительная память[править | править код]

Память режима SMM[править | править код]

Виртуальная память[править | править код]

Пространство ввода-вывода[править | править код]

Прерывания[править | править код]

Традиционный контроллер прерываний[править | править код]

Улучшенный контроллер прерываний[править | править код]

Прямой доступ к памяти[править | править код]

BIOS[править | править код]

UEFI[править | править код]

Системный таймер[править | править код]

Часы реального времени[править | править код]

Энергонезависимая память BIOS[править | править код]

Шины расширения[править | править код]

В большинстве случаев, PC-совместимые компьютеры, в зависимости от поколения, используют одну из шин: ISA, PCI или PCIe. Для целей совместимости со старым оборудованием могут устанавливаться слоты более старых шин, подключенные через межшинный мост. В компьютерах, использовавших в качестве основной шины расширения шину PCI, для подключения видеокарт могла использоваться специализированная шина — AGP. Для подключения внешних устройств также используются не специфичные конкретно для PC шины: USB, Fire Wire, SCSI и другие.

ISA[править | править код]

Шина расширения, позже названная ISA, которая использовалась в первых IBM PC, была почти полностью взята из компьютера System/23. В PC было изменено назначение лишь пяти сигнальных линий[18]. В 1984 году к шине ISA было добавлено ещё 36 линий для увеличения её пропускной способности. В 1987 году компания IBM перешла на новую шину MCA, однако лицензионная политика оттолкнула производителей периферии и консорциум из девяти производителей компьютеров разработал свой вариант шины, обратно совместимый с ISA — EISA. Новая шина также не получила распространения в персональных компьютерах, где продолжала использоваться старая шина, пока она не была вытеснена шиной PCI, но использовалась в серверах.

PCI[править | править код]

AGP[править | править код]

PCI Express[править | править код]

Видеоподсистема[править | править код]

Текстовый режим[править | править код]

VESA[править | править код]

Аудиоподсистема[править | править код]

AC97[править | править код]

High Definition Audio[править | править код]

Электропитание[править | править код]

Блок питания ATX[править | править код]

Управление электропитанием[править | править код]

Устройства хранения[править | править код]

Оригинальный IBM PC поставлялся с одним или двумя 5,25″ — дисководами и разъёмом для подключения магнитофона. В IBM PC/XT был добавлен жёсткий диск с интерфейсом ST-506, но убран разъём магнитофона. Начиная с PC/AT стал использоваться более совершенный интерфейс жёстких дисков, получивший название IDE.

IDE/ATA[править | править код]

SATA[править | править код]

NVMe[править | править код]

Отдельные периферийные устройства[править | править код]

COM-порт[править | править код]

Порт принтера[править | править код]

Клавиатура[править | править код]

Механическая часть клавиатуры первого IBM PC почти без изменений была взята от System/23, только вынесена в отдельный корпус и изменены обозначения клавиш. Однако, электрическая часть была переработана, так как в System/23 она соединялась с материнской платой многожильным кабелем, что было неудобно. В дальнейшем, PC-клавиатура претерпела два кардинальных изменения раскладки и одно изменения интерфейса, после чего значительно не менялась, пока не была вытеснена стандартом USB HID.

Мышь PS/2[править | править код]

Частично совместимые компьютеры[править | править код]

DEC Rainbow 100 — один из компьютеров, работавших под MS-DOS, но не бывший совместимым с PC

Использование процессора архитектуры x86 или x86-64 недостаточно, чтобы компьютер мог называться PC-совместимым. Он должен поддерживать актуальные на момент его выпуска BIOS/UEFI и стандарты шин. Например, на x86-смартфонах невозможно установить нативно Microsoft Windows, так как для этого нужен в том числе транслятор вызовов для BIOS[19].

В начале эры IBM PC-совместимых компьютеров выпускались также так называемые MS-DOS-совместимые компьютеры. На них можно было запускать ПО, использующее стандартные вызовы MS-DOS а часть более специфических возможностей не поддерживалась. Наиболее известный пример тех лет — Tandy 2000. Также сама компания IBM в 1983 году выпустила IBM PCjr, предназначенный в основном для игр — но его постиг маркетинговый провал, в том числе из-за неполной совместимости со «старшим братом». Тем не менее, совместимый с PCjr Tandy 1000 (позволявший использовать стандартные карты расширения без переходников — PCjr использовал громоздкие и имеющие другую систему разъёмов внешние модули-«коляски» — и обладавший значительно большей программной совместимостью с XT) оказался достаточно успешен — именно из-за улучшенной совеместимости. В СССР наряду с полностью совместимыми ЕС 18xx и Искра 1030 выпускался частично совместимый «Поиск», сильно упрощённый и максимально использующий отечественные компоненты[20]. После распада СССР под маркой «Поиск» стали выпускаться уже полностью совместимые компьютеры.

С 2006 по 2020 годы компьютеры Apple оснащались процессорами Intel. На фото — Mac mini 2009 года

C 2005 года компания Apple отказалось от процессоров PowerPC, перейдя на процессоры архитектуры x86-64. Это позволяло устанавливать на них операционную систему Windows, однако для этого требовалась эмуляция вызовов BIOS и установка специфических драйверов устройств. Для этой цели была выпущена специальная программа Boot Camp[21][22]. C 2020 года в Apple отказались от процессоров Intel в пользу собственной архитектуры Apple silicon, отказавшись от частичной совместимости с PC[23][24].

Wintel[править | править код]

С понятием PC-совместимого компьютера пересекается понятие Wintel (Windows+Intel) — компьютер на x86 — процессоре с операционной системой Windows[25]. Хотя за исключением ранних моделей, PC-совместимый компьютер может работать под управлением Windows, может использоваться и другая операционная система, например Linux, FreeBSD и т. д.

PC как игровая платформа[править | править код]

PC изначально создавался исключительно как платформа для бизнеса. Как домашний компьютер, PC был слишком дорогим. Возможности графического адаптера CGA хоть на момент выхода и не отставали от конкурентов, вскоре стали появляться модели с более широкими возможностями графики, в том числе аппаратными спрайтами и прокруткой. Кроме того, единственным звуковым устройством был системный динамик, который мало годился для игр. В 1983 году компания IBM предприняла попытку выйти на рынок домашних компьютеров с моделью PCjr, но попытка провалилась — PCjr был слишком дорог для «просто домашнего компьютера», а как PC он не был полностью совместим. Тем не менее игры для PC были, в основном порты с других платформ[26].

Лишь к концу 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.

Критика[править | править код]

Примечания[править | править код]

  1. Гук, 2006, с. 96.
  2. Is a Mac a PC? (англ.). Computer Hope (24.01.2018). Дата обращения: 19 июля 2021. Архивировано 19 июля 2021 года.
  3. Byte, 1990.
  4. Tanenbaum, 2018, с. 45.
  5. Caruso, Denise (1984-02-27). “IBM wins disputes over PC copyrights”. InfoWorld: 15. Архивировано из оригинала 2015-03-19. Дата обращения 2015-01-15.
  6. 1 2 Langdell, James (1984-07-10). “Phoenix Says Its BIOS May Foil IBM's Lawsuits”. PC Magazine: 56. Архивировано из оригинала 2014-01-01. Дата обращения 2013-10-25.
  7. What Is The BIOS?, Computing Basics (July 1994). Архивировано 10 марта 2012 года. Дата обращения 26 июня 2021.
  8. Libes, Sol. Bytelines, BYTE (December 1981), С. 314–318. Дата обращения 29 января 2015.
  9. Lookalikes From Home & Abroad, PC Magazine (February–March 1982), С. 5. Архивировано 26 января 2021 года. Дата обращения 26 июня 2021.
  10. Zussman, John Unger. Let's keep those systems open, InfoWorld (23 August 1982), С. 29. Архивировано 26 июня 2021 года. Дата обращения 26 июня 2021.
  11. Barmash, Isadore. Corporate Triumph, Then Death in a Ferrari (англ.), The New York Times (10 June 1983), С. A1. Архивировано 26 июня 2021 года. Дата обращения 26 июня 2021.
  12. Mace, Scott. IBM PC clone makers shun total compatibility, InfoWorld (9–16 January 1984), С. 79–81. Архивировано 26 июня 2021 года. Дата обращения 26 июня 2021.
  13. PC-Compatible Portables, PC Magazine (24 January 1984), С. 39. Архивировано 26 июня 2021 года. Дата обращения 26 июня 2021.
  14. Фигурнов, 1995.
  15. IBM, LG winding down joint venture (англ.), CNET (31 August 2004). Архивировано 23 апреля 2019 года. Дата обращения 25 ноября 2018.
  16. Norton, Peter. Software for Once and All, PC Magazine (5 February 1985), С. 103. Архивировано 5 апреля 2016 года. Дата обращения 28 октября 2013.
  17. Гук, 2006, с. 97.
  18. Byte, 1990, p. 418−420.
  19. Paul Morris. How To Install Windows 7 On Android Tablet (англ.) (2015-6-15). Дата обращения: 20 января 2016. Архивировано 13 января 2016 года.
  20. Удачный «Поиск» // Наука и жизнь. — 1991. — № 2. — P. 83—86. — ISSN 0028-1263.
  21. Broersma, Matthew (April 13, 2006). “Users Find Flaw in Boot Camp”. PC World. Архивировано из оригинала 2019-05-03. Дата обращения August 2, 2011.
  22. Mossberg, Walter. Boot Camp Turns Your Mac Into a Reliable Windows PC (April 6, 2006). Архивировано 6 марта 2007 года. Дата обращения 19 июля 2021.
  23. Apple (2020-06-22). Apple announces Mac transition to Apple silicon. Пресс-релиз. Архивировано из первоисточника 22 июня 2020. Проверено 2021-07-19.
  24. Warren, Tom Apple is switching Macs to its own processors starting later this year (англ.). The Verge (22 июня 2020). Дата обращения: 22 июня 2020. Архивировано 22 июня 2020 года.
  25. Windows + Intel = Wintel? (англ.). Mayin.org. Дата обращения: 12 января 2010. Архивировано 16 мая 2012 года.
  26. У истоков 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.