Модулированные сети могут одновременно передавать телепрограммы, речь, двоичные данные и т. п. 8 страница
На эффективность применения кэш-памяти в иерархической системе памяти влияет целый ряд моментов. К наиболее существенным из них можно отнести:
– емкость кэш-памяти;
– размер строки;
– способ отображения основной памяти на кэш-память;
– алгоритм замещения информации в заполненной кэш-памяти;
– алгоритм согласования содержимого основной памяти и кэш-памяти;
– число уровней кэш-памяти.
Рис. 2.21. Структура системы с основной памятью и кэш-памятью
Современные технологии позволяют разместить кэш-память и ЦП на общем кристалле. Такая внутренняя кэш-память строится по технологии статического ОЗУ и является наиболее быстродействующей. Емкость ее обычно не превышает 64 кбайт. Попытки увеличения емкости приводят к снижению быстродействия, главным образом из-за усложнения схем управления и дешифрации адреса. Общую емкость кэш-памяти ВМ увеличивают за счет второй (внешней) кэш-памяти, расположенной между внутренней кэш-памятью и ОП. Такая система известна под названием двухуровневой, где внутренней кэш-памяти отводится роль первого уровня (L1), а внешней – второго уровня (L2). Емкость L2 обычно на порядок больше, чем у L1, а быстродействие и стоимость – несколько ниже. Память второго уровня также строится, как статическое ОЗУ. Типичная емкость кэш-памяти второго уровня – 256 и 512 кбайт, реже 1 Мбайт, а реализуется она, как правило, в виде отдельной микросхемы, хотя в последнее время L2 часто размещают на одном кристалле с процессором, за счет чего сокращается длина связей и повышается быстродействие.
При доступе к памяти ЦП сначала обращается к кэш-памяти первого уровня. В случае промаха производится обращение к кэш-памяти второго уровня. Если информация отсутствует и в L2, выполняется обращение к ОП и соответствующий блок заносится сначала в L2, а затем и в L1. Благодаря такой процедуре часто запрашиваемая информация может быть быстро восстановлена из кэш-памяти второго уровня.
Потенциальная экономия за счет применения L2 зависит от вероятности попаданий как в L1, так и в L2. Использование кэш-памяти второго уровня существенно улучшает производительность.
В большинстве семейств микропроцессоров предусмотрены специальные ИМС контроллеров внешней кэш-памяти, например микросхема 82491 – для Intel Pentium. Для ускорения обмена информацией между ЦП и L2 между ними часто вводят специальную шину (шину заднего плана), в отличие от шины переднего плана, связывающую ЦП с основной памятью.
Количество уровней кэш-памяти не ограничивается двумя. В некоторых ВМ уже можно встретить кэш-память третьего уровня (L3) и ведутся активные дискуссии о введении также и кэш-памяти четвертого уровня (L4). Характер взаимодействия очередного уровня с предшествующим аналогичен описанному для L1 и L2. Таким образом, можно говорить об иерархии кэш-памяти. Каждый последующий уровень характеризуется большей емкостью, меньшей стоимостью, но и меньшим быстродействием, хотя оно все же выше, чем у ЗУ основной памяти.
2.4.3 Внешняя память
2.4.3.1 Классификация внешних запоминающих устройств
Носитель – материальный объект, способный хранить информацию.
Устройства внешней памяти, или внешние запоминающие устройства, весьма разнообразны. Их можно классифицировать по целому ряду признаков: виду носителя, типу конструкции, принципу записи и считывания информации, методу доступа и т. д.
Один из возможных вариантов классификации ВЗУ – по виду носителей и типу конструкции – приведен на рисунке 2.22.
Рис. 2.22. Классификация внешних запоминающих устройств
В зависимости от вида носителя все ВЗУ можно подразделить на накопители на магнитной ленте и дисковые накопители.
Накопители на магнитной ленте по типу конструкции, в свою очередь, бывают двух видов: накопители на бобинной магнитной ленте (НБЛМ) и накопители на кассетной магнитной ленте (НКМЛ – стримеры). В ПК используются только стримеры.
Диски по методу считывания относятся к машинным носителям информации с прямым доступом. Понятие "прямой" доступ означает, что ПК может "обратиться" к дорожке, на которой начинается участок с искомой информацией или куда нужно записать новую информацию, непосредственно, где бы ни находилась головка чтения накопителя.
Накопители на дисках более разнообразны (табл. 2.4):
Таблица 2.4 Сравнительные характеристики дисковых накопителей
Тип накопителя | Емкость, Мбайт | Время доступа, мс | Трансферт, кбайт/с | Вид доступа |
НГМД | 1,2; 1,44 | 65 ¸ 100 | чтение-запись | |
Винчестер | 250 ¸ 320000 | 8 ¸ 20 | 500 ¸ 3000 | чтение-запись |
Бернулли | 20 ¸ 230 | 500 ¸ 2000 | чтение-запись | |
Floptical | 20,8 | 100 ¸ 300 | чтение-запись | |
120 ¸ 240 | 200 ¸ 600 | чтение-запись | ||
250 ¸ 64000 | 15 ¸ 300 | 150 ¸ 1500 | только чтение | |
CC WORM | 120 ¸ 64000 | 15 ¸ 150 | 150 ¸ 1500 | чтение-одно-кратная запись |
НМОД | 128 ¸ 64000 | 15 ¸ 150 | 300 ¸ 2000 | чтение-запись |
Примечание. Время доступа – средний временной интервал, в течение которого накопитель находит требуемые данные, – представляет собой сумму времени для позиционирования головок чтения-записи на нужную дорожку и ожидания нужного сектора. Трансферт – скорость передачи данных при последовательном чтении.
– накопители на гибких магнитных дисках (НГМД), т. е. флоппи-дисках или на дискетах;
– накопители на жестких магнитных дисках (НЖМД) типа "винчестер";
– накопители на сменных, жестких магнитных дисках, использующие эффект Бернулли;
– накопители на флоптических дисках, т. е. floptical-накопители;
– накопители сверхвысокой плотности записи, т. е. VHD-накопители;
– накопители на оптических компакт-дисках CD-ROM (Compact Disk ROM);
– накопители на оптических дисках типа CC WORM (Continuous Composite Write Once Read Many – однократная запись – многократное чтение);
– накопители на магнитооптических дисках (НМОД) и др.
2.4.3.2 Накопители на гибких магнитных дисках
На гибком магнитном диске (дискете) магнитный слой наносится на гибкую основу. Используемые в ПК ГМД имеют формат 5,25 и 3,5 дюйма, емкость ГМД колеблется в пределах от 180 кбайт до 2,88 Мбайт.
ГМД диаметром 5,25 дюйма помещается в плотный гибкий конверт, а диаметром 3,5 дюйма – в пластмассовую кассету для защиты от пыли и механических повреждений.
Конструктивно диск диаметром 133 мм изготовляется из гибкого пластика (лавсана), покрытого износоустойчивым ферролаком, и помещается в футляр – конверт. Дискета имеет две прорези: центральное отверстие для соединения с дисководом и смещенное от центра небольшое отверстие (обычно скрытое футляром), определяющее радиус – вектор начала всех дорожек на ГМД. Футляр также имеет несколько прорезей: центральное отверстие, чуть больше чем отверстие на дискете, широкое окно для считывающих и записывающих магнитных головок и боковую прорезь в виде прямоугольника, закрытие которой, например липкой лентой, защищает дис-кету от записи и стирания информации.
Диск диаметром 89 мм имеет более жесткую конструкцию, более тщательно защищен от внешних воздействий и имеет примерно те же конструктивные элементы. Режим запрета записи на этих дисках устанавливается специальным переключателем, расположенным в одном из углов диска.
В последние годы появились диски с тефлоновым покрытием (Verbutim Data Life Plus), которое предохраняет магнитное покрытие и записанную информацию от грязи, пыли, воды, жира, отпечатков пальцев и даже от растворителей типа ацетона.
Возможная емкость 3,5-дюймового диска Data Life Plus – 2,88 Мбайт. Следует упомянуть и диски "Go anywhere", распространяемые у нас в стране под названием "Вездеход". Они также обладают стойкостью к различным внешним воздействиям: температуре, влажности, запыленности.
Основные характеристики некоторых типов НГМД приведены в таблице 2.5.
Таблица 2.5 Основные характеристики некоторых типов НГМД
Параметр | Тип ГМД | ||||
133 мм (5,25 дюйма) | 89 мм (3,5 дюйма) | ||||
Полная емкость, кбайт Рабочая емкость, кбайт (после форматирования) Плотность записи, бит/мм Плотность дорожек, дорожек/мм Число дорожек на одной поверхности диска Число поверхностей (сторон) Среднее время доступа, мс Скорость передачи, кбайт/с Скорость вращения, оборотов/мин Число секторов Емкость сектора дорожки, байт | 1,9 | 3,8 | 3,8 | 5,3 | 5,3 |
Каждый новый диск в начале работы с ним следует отформатировать.
Форматирование диска – это создание структуры записи информации на его поверхности: разметка дорожек, секторов, запись маркеров и другой служебной информации.
Возможный вариант форматирования зависит от типа диска (маркируемого на его конверте):
− SS/SD – односторонний диск (Single Sides) одинарной плотности (Single Density);
− SS/DD – односторонний диск двойной плотности ( Double Density);
− DS/SD – двухсторонний диск (Double Sides) одинарной плотности;
− DS/DD – двухсторонний диск двойной плотности;
− DS/HD – двухсторонний диск высокой плотности (Hign Den-sity), обеспечивающий максимальные емкости.
Программы дисковой операционной системы МS-DOS записывают в любой сектор информацию объемом не более 512 байт. Таким образом, общая емкость D любого диска, используемого DOC, составляет D = 512 ´ Nt ´ Ns ´ 2 байт, где Nt – количество дорожек; Ns – количество секторов на дорожке; множитель 2 учитывает две поверхности диска.
Например, для широко распространенных дисков диаметром 133 мм для формата DS/DD Nt = 40, Ns = 9.
Емкость равна D = 512 ´ 40 ´ 9 ´ 2 = 360 ´ 1024 = к60 кбайт.
Для формата DSHD Nt = 80, Ns = 15 и емкость диска составляет
D = 512 ´ 80 ´ 15 ´ 2 = 1200 ´ 1024 = 1,2 Мбайт.
Для форматирования используется команда операционной системы MS-DOS: format <имя диска>.
Например: format A:\
2.4.3.3 Правила обращения с дисками
Необходимо соблюдать следующие правила пользования дисками:
− не сгибать, не прикасаться руками к магнитному покрытию;
− не подвергать воздействию магнитных полей;
− хранить в бумажном конверте при положительной температуре;
− надписи на приклеенной к диску этикетке следует делать без нажима карандашом;
− брать только за один угол защищенного конверта;
− не мыть;
− извлекать перед выключением ПК;
− вставлять диск в дисковод и вынимать его только тогда, когда не горит сигнальная лампочка включения дисковода.
2.4.3.4 Накопители на жестких магнитных дисках
Первый жесткий диск создан задолго до появления персональных компьютеров. Его разработала в 1957 г. фирма IBM для системы сохранения данных RAMDAC 350. Размер рабочих дисков был равен 24 дюймам, емкость накопителя составляла 5 Мбайт, стоила система более 30 тыс. долл. В качестве накопителей на жестких магнитных дисках (НЖМД) широкое распространение в ПК получили накопители типа "винчестер".
Термин "винчестер" возник из жаргонного названия первой модели жесткого диска для компьютеров PC XT емкостью 1 Мбайт (IBM, 1973 г.), имевшего 30 дорожек по 30 секторов, что случайно совпало с калибром 30/30 известного в то время многозарядного карабина фирмы Winchester.
Конструктивно в этих накопителях один или несколько жестких дисков, изготовленных из сплавов алюминия или керамики, покрытых ферролаком. Вместе с блоком магнитных головок считывания-записи они помещены в герметически закрытый корпус. Емкость этих накопителей благодаря чрезвычайно плотной записи достигает нескольких тысяч мегабайт. Быстродействие их также значительно более высокое, нежели у НГМД.
НЖМД весьма разнообразны. Диаметр дисков чаще всего 3,5 дюйма (89 мм), но есть и другие, в частности 5,25 дюйма (133 мм) и 1,8 дюйма (45 мм). Наиболее распространенная высота корпуса дисковода 25 мм у настольных ПК, 41 мм – у машин-серверов, 13 мм – у портативных ПК и др.
Объем возможной для хранения на НЖМД информации определяется количеством цилиндров (дорожек на рабочей поверхности), головок (рабочих поверхностей) и секторов.
Цилиндр – это совокупность дорожек, к которым возможно обращение без перемещения головок.
В современных НЖМД используется метод зонной записи. В этом случае все пространство диска делится на несколько зон. Во внешних зонах размещается больше данных, чем во внутренних. Это позволило увеличить емкость жестких дисков примерно на 30 %.
Для того чтобы получить на магнитном носителе структуру диска, включающую в себя дорожки и сектора, над ним должна быть выполнена процедура, называемая физическим, или низкоуровневым, форматированием (physical, или low – level formatting). В ходе выполнения этой процедуры контроллер записывает на носитель служебную информацию, определяющую разметку цилиндров диска на сектора и нумерующую их. Форматирование низкого уровня предусматривает и маркировку дефектных секторов для исключения обращения к ним в процессе эксплуатации диска.
Для разделения ЖМД на логические диски используется логическое форматирование утилитой FDISK.
Максимальная емкость и скорость передачи данных существенно зависят от интерфейса, используемого накопителем.
2.4.3.5 Накопители на оптических дисках
В последние годы все большее распространение получают накопители на оптических дисках (НОД). Благодаря маленьким размерам (используются компакт-диски диаметром 3,5 и 5,25 дюйма), большой емкости и надежности эти накопители становятся все более популярными.
Неперезаписываемые лазерно-оптические диски обычно называют компакт-дисками ПЗУ (Compact Disk – CD-ROM). Эти диски поставляются фирмой-изготовителем с уже записанной на них информацией (в частности, с программным обеспечением). Запись информации на них возможна только вне ПК в лабораторных условиях лазерным лучом большой мощности, который оставляет на активном слое CD след-дорожку с микроскопическими впадинами. Таким образом создается первичный "мастер-диск". Процесс массового тиражирования CD-ROM по "мастер-диску" выполняется путем литья под давлением. В оптическом дисководе ПК эта дорожка читается лазерным лучом существенно меньшей мощности.
CD-ROM ввиду чрезвычайно плотной записи информации имеют емкость от 250 Мбайт до 1,5 Гбайт, время доступа в разных оптических дисках также колеблется от 30 до 300 мс, скорость считывания информации от 150 до 1500 кбайт/с.
Основными достоинствами НОД являются:
– сменяемость и компактность носителей;
– большая информационная емкость;
– высокая надежность и долговечность CD и головок считывания/записи (до 50 лет);
– меньшая (по сравнению с НМД) чувствительность к загрязнениям и вибрациям;
– нечувствительность к электромагнитным полям.
2.4.3.6 Накопители на магнитной ленте
Накопители на магнитной ленте были первыми ВЗУ вычислительных машин. В универсальных ЭВМ широко использовались и используются накопители на бобинной магнитной ленте, а в персональных ЭВМ – накопители на кассетной магнитной ленте.
Кассеты с магнитной лентой (картриджи) весьма разнообразны: они отличаются как шириной применяемой магнитной ленты, так и конструкцией. Объемы хранимой на одной кассете информации постоянно растут. Так, емкость картриджей первого поколения, содержащих магнитную ленту длиной 120 м, шириной 3,81 мм с 2¸4 дорожками, не превышала 25 Мбайт. В конце 80-х гг. прошлого века появились картриджи с большей плотностью записи на ленте шириной четверть дюйма (стандарты QIC-40/80). Последние модели таких картриджей (стандарт QIC 3010¸3020) имеют емкость 340, 680 и даже 840¸1700 Мбайт и более. При сжатии данных может быть достигнута еще большая емкость, например, НКМЛ Conner CTD 8000 имеет емкость 8 Гбайт, Sony DDS – 2¸16 Гбайт при трансферте 250 кбайт/с.
Лентопротяжные механизмы для картриджей носят название стримеров. Это инерционные механизмы, требующие после каждой остановки небольшой перемотки ленты назад (перепозиционирования). Такое перепозиционирование увеличивает и без того большое время доступа к информации на ленте (десятки секунд), поэтому стримеры нашли применение в персональных компьютерах лишь резервного копирования и архивирования информации с жестких дисков и бытовых компьютерах для хранения пакетов игровых программ.
Скорость считывания информации с магнитной ленты в стримерах также невысока и обычно составляет около 100 кбайт/с. НКМЛ могут использовать локальные интерфейсы SCSI.
Тема 3. Программное обеспечение ПЭВМ
3.1 Общая характеристика и состав программного
обеспечения
3.1.1 Состав и назначение программного обеспечения
Процесс взаимодействия человека с компьютером организуется устройством управления в соответствии с той программой, которую пользователь разработал и ввел в память компьютера. На начальном этапе развития вычислительной техники это так и было. Пользователь представлял свои программы на машинном языке в виде двоичных кодов, а устройство управления в зависимости от их содержания подключало нужные электронные цепи и схемы.
По мере усложнения задач и повышения требований к параметрам ЭВМ появилась потребность в более гибком органе управления, чем существующее электронное устройство управления. И такой орган был найден. Так называемые системные управляющие программы благодаря своей гибкости взяли на себя большую часть функций устройства управления по организации процесса обработки информации на компьютере, оставив ему прежние полномочия в рамках возможностей соответствующих электронных схем.
Для примера рассмотрим некоторые режимы, которые должны организовать управляющие программы независимо от назначения программ пользователя. В режиме разделения времени необходимо организовать работу так, чтобы одновременно работали разные устройства и несколько пользователей. Режим реального времени потребовал от компьютера мгновенной реакции на поступающие в ходе технологического процесса внешние прерывания. Разные функции ЭВМ определяют специфику работы устройств управления, но уже не как электронного устройства, а как некоего органа, состоящего из программной и электронной частей.
Такой важный момент, как создание ''дружественной'' среды общения человека и компьютера, тоже заслуга целого комплекса специально разработанных программ, которые обеспечивают, с одной стороны, управление процессом обработки информации в самом компьютере, а с другой – необходимый сервис для работы пользователя. Процесс составления программ любой сложности на символическом языке, близком к математическим и логическим выражениям, тоже стал возможным только тогда, когда была создана специальная система программирования, состоящая из взаимосвязанных отдельных программ.
Таким образом создание компьютера – только первый шаг на пути компьютеризации общества. Перед математиками и программистами стоит задача разработать комплекс разнообразных и взаимосвязанных по своим функциям программ, так называемое программное обеспечение.
Программное обеспечение – это совокупность программ, позволяющих организовать решение задач пользователя на компьютере.
До недавнего времени программное обеспечение отождествляли с понятием математического обеспечения.
Математическое обеспечение – это математические методы, алгоритмы, обеспечивающие решение поставленной задачи.
Программное обеспечение является составной частью компьютера, и некоторая его часть поставляется вместе с технической аппаратурой.
3.1.1.1 Классификация программного обеспечения
Программные продукты можно классифицировать по различным признакам. Рассмотрим классификацию, в которой основополагающим признаком является сфера (область) использования программных продуктов.
Для поддержки информационной технологии в этих областях выделим соответственно три класса программных продуктов (рис. 3.1):
− системное программное обеспечение;
− пакеты прикладных программ;
− инструментарий технологии программирования.
Системное программное обеспечение (System Software) – совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ, направленное:
- на создание операционной среды функционирования других программ;
- обеспечение надежной и эффективной работы самого компьютера и вычислительной сети;
- проведение диагностики и профилактики аппаратуры компьютера и вычислительных сетей;
- выполнение вспомогательных технологических процессов (копирование, архивирование, восстановление файлов программ и баз данных и т. д.).
Рис. 3.1. Классификация программного обеспечения по сфере
Использования
Данный класс программных продуктов тесно связан с типом компьютера и является его неотъемлемой частью. Программные продукты ориентированы в основном на квалифицированных пользователей – профессионалов в компьютерной области: системных программистов, администраторов сети, прикладных программистов, операторов. Однако знание базовой технологии работы с этим классом программных продуктов требуется и конечным пользователям персонального компьютера, которые самостоятельно не только работают со своими программами, но и выполняют обслуживание компьютеров, программ и данных.
Программные продукты данного класса носят общий характер применения независимо от специфики предметной области. К ним предъявляются высокие требования по надежности и технологичности работы, удобству и эффективности использования.
Пакет прикладных программ (application program package) – это комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области; служит программным инструментарием решения функциональных задач и является самым многочисленным классом программных продуктов, выполняющих обработку информации различных предметных областей.
Установка программных продуктов на компьютер выполняется квалифицированными пользователями, а непосредственную их эксплуатацию осуществляют, как правило, конечные пользователи – потребители информации, деятельность которых во многих случаях весьма далека от компьютерной области. Данный класс программных продуктов может быть весьма специфичными для отдельных предметных областей.
Инструментарий технологии программирования – совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программных продуктов:
Транслятор – это комплекс программ, обеспечивающих перевод программы, написанной на символическом языке, в совокупность машинных команд. В зависимости от функционального назначения транслятор может быть компилятором, интерпретатором, ассемблером или языковым процессором.
Компилятор – это транслятор, выполняющий перевод программы, написанной на алгоритмическом языке, в совокупность машинных команд без ее выполнения на компьютере.
Интерпретатор – транслятор, производящий перевод каждой конструкции алгоритмического языка в машинные команды и одновременное выполнение этих конструкций в компьютере.
Ассемблер – транслятор, переводит программы, записанные на машинно-ориентированном языке ассемблера в машинные коды.
Языковый процессор – это транслятор, объединяющий в себе функции компиляции, интерпретации и ассемблирования.
К категории инструментальных средств относятся не только трансляторы с языков высокого уровня, но и загрузчики, отладчики, иные системные программы.
Инструментарий технологии программирования обеспечивает процесс разработки программ и включает специализированные программные продукты, которые являются инструментальными средствами разработчика. Программные продукты данного класса поддерживают все технологические этапы процесса проектирования, программирования, отладки и тестирования программ. Пользователями технологии программирования являются системные и прикладные программисты.
3.1.2 Система программирования
Даже при наличии десятков тысяч программ IBM PC пользователям может потребоваться что-то такое, чего не делают (или делают, но не так) имеющиеся программы. В таких случаях следует использовать системы программирования, т. е. системы для разработки новых программ. Современные системы программирования для персональных компьютеров обычно представляют собой весьма мощные и удобные средства для разработки программ, в них входят:
- компьютер, осуществляющий электронное преобразование программ на языке программирования в программу в машинных кодах;
- библиотеки программ, содержащие заранее подготовленные подпрограммы, которыми могут пользоваться программисты;
- различные вспомогательные программы, например, отладчики, программы для получения перекрестных ссылок и др.
3.1.2.1 Языки программирования
Под языком понимают определенный набор символов и правил (соглашений), устанавливающих способы комбинации этих символов для записи осмысленных сообщений (текстов).
Все языки делят на естественные и искусственные.
Искусственный язык, предназначенный для записи программ, называется языком программирования.
В мире насчитывается несколько сотен символических языков программирования различных структур и возможностей. Но все их можно разделить на две большие группы: машинно-ориентированные и алгоритмические (рис. 3.2).
Рис. 3.2. Классификация языков программирования
Машинный язык представляет собой программу в машинных кодах. Например, машинный код для выполнения сложения C = A + B:
0011 10011010 10001001 10110011
операция адрес адрес адрес
сложения ячейки ячейки ячейки
операнда А операнда В операнда С
В символьном кодировании, за исключением машинного кода, используются символические обозначения операций и адресов операндов.
Пример:
C = A + B можно представить в виде команды:
СЛ A B C
Операция (+) адреса операндов
Вместо двоичных кодов, как в машинной команде, здесь используются условные обозначения, и команда имеет более простой вид. Такую группу языков называют языками символического кодирования. К ним относят Ассемблер, Макроассемблер, автокоды.
Алгоритмические языки – это набор символов и терминов, которые в соответствии с правилами синтаксиса описывают алгоритм решения задачи.
Языки профессиональных программистов – основная группа алгоритмических языков. К наиболее известным относят Фортран, Алгол, Кобол, ПЛ/1, Паскаль, Ада, Си, ЛИСП.
ФОРТРАН (FORmula TRANslation) является первым алгоритмическим языком; был создан в конце 50-х гг.; очень близкий по форме записи к математическим формулам. Существенный недостаток: он не обеспечивает надежности программирования из-за своей громоздкости и несовершенства логических возможностей. Программирование на Фортране можно сравнить с ездой на телеге по автостраде с оживленным автомобильным движением.
АЛГОЛ-60 (Algoritmic Language) появился в 1960 г., более гибок и надежен в программировании, чем Фортран, лежит в основе таких языков, как ПЛ/1, Паскаль, Ада.
Язык СИ изобретен в 1972 г. Денисом Ричи для использования при написании весьма популярной операционной системы Unix. В нем сочетаются свойства языка высокого уровня с возможностью эффективного использования ресурсов компьютера, которое обычно обеспечивается только при программировании на языке Ассемблера. Он не очень прост в обучении и требует тщательности в программировании, но позволяет писать сложные и высокоэффективные программы. Бьярном Страустрапом был разработан язык Си++ – расширенные языки Си, реализующие популярные в последнее время концепции объективно-ориентированного программирования и облегчающие создание сложных программ.
На IBM PC наибольшей популярностью пользуются реализации этого языка фирм Borland (Turbo C) и Mikrosoft (Mikrosoft C и Quik), а также фирмы Symantec (Zortech C). Многие из этих реализаций обеспечивают работу как с классическими Си, так и с Си++.