Примечание. Время доступа - средний временной интервал, в течение которого накопитель находит требуемые данные, - представляет собой сумму времени для позиционирования головок чтения-записи на нужную дорожку и ожидания нужного сектора. Трансферт - скорость передачи данных при последовательном чтении.
- накопители на гибких магнитных дисках (НГМД), т. е. флоппи-дисках или на дискетах;
- накопители на жестких магнитных дисках (НЖМД) типа "винчестер";
- накопители на сменных, жестких магнитных дисках, использующие эффект Бернулли;
- накопители на флоптических дисках, т. е. 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 дюйма)
Полная емкость, кбайт
Рабочая емкость, кбайт (после форматирования)
Плотность записи, бит/мм
Плотность дорожек, дорожек/мм
Число дорожек на одной поверхности диска
Число поверхностей (сторон)
Среднее время доступа, мс
Скорость передачи, кбайт/с
Скорость вращения, оборотов/мин
Число секторов
Емкость сектора дорожки, байт
500
360
231
1,9
40
2
80
50
3000
9
512
1000
720
233
3,8
80
2
100
50
3000
9
512
1600
1200
380
3,8
80
2
100
80
3600
15
512
1000
720
343
5,3
80
2
65
80
7200
9
512
1600
1440
558
5,3
80
2
65
150
7200
18
512
Каждый новый диск в начале работы с ним следует отформатировать.
Форматирование диска - это создание структуры записи информации на его поверхности: разметка дорожек, секторов, запись маркеров и другой служебной информации.
Возможный вариант форматирования зависит от типа диска (маркируемого на его конверте):
? 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 мм с 24 дорожками, не превышала 25 Мбайт. В конце 80-х гг. прошлого века появились картриджи с большей плотностью записи на ленте шириной четверть дюйма (стандарты QIC-40/80). Последние модели таких картриджей (стандарт QIC 30103020) имеют емкость 340, 680 и даже 8401700 Мбайт и более. При сжатии данных может быть достигнута еще большая емкость, например, НКМЛ Conner CTD 8000 имеет емкость 8 Гбайт, Sony DDS - 216 Гбайт при трансферте 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). Многие из этих реализаций обеспечивают работу как с классическими Си, так и с Си++.
ПЛ/1(Programming Language One) разработан в США для использования в больших ЭВМ фирмы IBM и ЭВМ семейства ЕС. Это очень большой и сложный для изучения язык; применяется в основном для научных расчетов, обработки больших массивов информации.
АДА-язык, разработанный в 1979 г. по заданию министерства обороны США и названный в честь первой программистки Ады Лавлейс, дочери Дж. Байрона которая еще в XIX в. создавала первые программы для счетно-аналитической машины Ч. Бэбиджа. В нем заимствованы лучшие конструкции других языков, однако трансляторы получились очень сложными и работают медленно.
КОБОЛ (COmmon Businers Oriented) - язык, ориентированный на обработку коммерческой информации, создан в 1960 г.
ЛИПС (LISt Processing - обработка списков) разработан в конце 50-х гг. и является самым популярным языком для работ по искусственному интеллекту.
ПАСКАЛЬ создан в 1970 г. Это очень простой и компактный язык, его понятия близки к фундаментальным понятиям математики. По своей структуре и синтаксису среди существующих языков он наиболее совершенен.
Система программирования Turbo Pascal появилась несколько позже IBM PC (в середине 80-х гг. и подобно аппаратным средствам фирмы IBM завоевала такую же популярность в классе систем программирования. Объясняется это счастливым сочетанием двух безусловных ее достоинств: исключительной простотой и естественностью языка программирования Turbo Pascal (насколько вообще легче может быть простым и естественным язык программирования) и великолепными сервисными возможностями диалоговой среды программирования фирмы Borland.
Эта система относится к семейству Турбо-компиляторов, разработанных фирмой Borland International, Inc. (Турбо-Си, Турбо-Бейсик, Турбо-Пролог, Турбо-Ассемблер) и отличающихся высокой скоростью компиляции и, что самое главное, тщательно продуманной и очень удобной средой, создаваемой в них для программиста. При использовании традиционных компиляторов работа программиста строится по схеме: текстовый редактор - компилятор - компоновщик - прогон программы. При этом неизбежные многочисленные возвраты к текстовому редактору после компиляции, компоновки или прогона программы для устранения обнаруженных ошибок и необходимой коррекции исходного текста делают процедуру создания новой программы весьма утомительной.
При работе в среде Turbo Pascal пользователю нет необходи-мости покидать ее для вызова компилятора, компоновщика или для пробного прогона программы. С точки зрения пользователя Turbo Pascal - это фактически достаточно совершенный текстовый редактор, в котором предусмотрены средства компиляции и прогона программы. Переход от режима редактирования к компиляции - компоновке - прогону программы осуществляется нажатием на одну-две клавиши. При обнаружении системой ошибок в программе компиляция или прогон программы прекращается и на экран выводится исчерпывающая диагностика с указанием места ошибки. В сложных случаях пользователь может применить мощные средства диалогового отладчика, входящего в состав Turbo Pascal. Все это существенно увеличивает эффективность труда программиста, который, как показывает практика, может стабильно в течение нескольких месяцев составлять в среднем 100 и более строк отлаженной программы в день.
Разумеется не только среда, пусть даже весьма совершенная, послужила причиной широкой популярности Turbo Pascal. Не следует забывать, что в его основе лежит мощный язык программирования, представляющий собой значительно расширенную версию языка Turbo Pascal. Задуманный первоначально автором Н. Вином как средство обучения студентов современной методике структурного программирования этот язык в интерпретации фирмы Borland приобрел множество дополнительных свойств, позволяющих говорить о нем как о вполне современном универсальном языке программирования. Именно в Turbo Pascal, как ни в одном другом языке программирования, разумно сочетаются лаконизм и естественность синтаксиса с достаточно гибкими возможностями управления структурами данных и ходом вычислительного процесса.
Вторая группа языков не очень многочисленна. Ее основное достоинство - простые конструкции, доступные для понимания любому человеку. Составлением программ на таких языках (Бэйсик, АПЛ, Пролог) с удовольствием занимаются даже дети.
Особенно широкое распространение получил язык Бэйсик (Вeginner's ALL - purpose Symbolic Instruction Code - универсальный код символических инструкций для начинающих). Он был создан в 1964 г. Томасом Куртом и Джином Камени как язык для начи-нающих, облегчающий написание простых программ. Существуют сотни различных версий Бейсика, которые не полностью (а иногда и мало) совместимы друг с другом. Бейсик очень распространен на микрокомпьютерах, он легок для обучения, но мало подходит для написания больших и сложных программ. На IBM PC широко используется Quick Basik фирмы Microsoft и Turbo Basik фирмы Borland (усовершенствованная версия Turbo Basik распространяется под именем Power Basik фирмой Spektra Publishing).
3.1.3 Прикладное программирование
Класс программных средств для прикладного программирования наиболее представителен, что обусловлено, прежде всего, широким применением средств компьютерной техники во всех сферах деятельности человека, созданием автоматизированных информационных систем различных предметных областей.
Примерная классификация и типовые представители прикладного программного обеспечения представлены на рисунке 3.3.
Рис. 3.3. Классификация пакетов прикладных программ
Проблемно-ориентированные пакеты прикладного программирования (ППП) - самый представительный класс программных продуктов, внутри которого проводится классификация по разным признакам:
- типам предметных областей;
- информационным системам;
- функциям и комплексам задач, реализуемых программным способом, и др.
Для некоторых предметных областей возможна типизация функций управления, структуры данных и алгоритмов обработки. Это вызвало разработку значительного числа ППП одинакового функционального назначения и, таким образом, создало рынок программных продуктов:
- автоматизированного бухгалтерского учета;
- финансовой деятельности;
- управления персоналом (кадровый учет);
- управления материальными запасами;
- управления производством;
- банковские информационные системы и т. п.
Основные тенденции в области развития проблемно-ориентированных программных средств:
- создание программных комплексов в виде автоматизированных рабочих мест (АРМ) управленческого персонала;
- создание интегрированных систем управления предметной областью на базе вычислительных сетей, объединяющих АРМы в единый программный комплекс с архитектурой клиент - сервер;
- организация данных больших информационных систем в виде распределенной базы данных на сети ЭВМ;
- наличие простых языковых средств конечного пользователя для запросов к базе данных;
- настройка функций обработки силами конечных пользователей (без участия программистов);
- защита программ и данных от несанкционированного доступа (парольная защита на уровне функций, режимов работы, данных).
ППП автоматизированного проектирования предназначены для поддержания работы конструктора и технологов, связанных с разработкой чертежей, схем, диаграмм, графическим моделированием и конструированием, созданием библиотеки стандартных элементов чертежей и их многократным использованием, созданием демонстрационных иллюстраций и мультфильмов.
Отличительной особенностью этого класса программных продуктов являются высокие требования к технической части системы обработки данных, наличие библиотек встроенных функций, объектов, интерфейсов с графическими системами и базами данных.
ППП общего назначения содержат широкий перечень программных продуктов, поддерживающих преимущественно информационные технологии конечных пользователей. Кроме конечных пользователей этими программными продуктами за счет встроенных средств технологии программирования могут пользоваться и программисты для создания усложненных программ обработки данных.
Представители программных продуктов общего назначения:
1. Серверы баз данных - успешно развивающийся вид программного обеспечения, предназначенный для создания и использования при работе в сети интегрированных баз данных в архитектуре клиент - сервер.
2. Генераторы (серверы) отчетов - самостоятельное направление развития программных средств, обеспечивающих реализацию запросов и формирование отчетов в печатном или экранном виде в условиях сети с архитектурой клиент - сервер.
3. Текстовые процессоры - автоматическое форматирование документов, вставка рисованных объектов и графики, составление оглавлений и указателей, проверка орфографии, шрифтовое оформление, подготовка шаблонов документов.
4. Табличный процессор - удобная среда для вычислений силами конечного пользователя; средства деловой графики, специализированная обработка (встроенные функции, работа с базами данных, статистическая обработка данных и др.).
5. Средства презентационной графики - специализированные программы, предназначенные для создания изображений и их показа на экране, подготовки слайд-фильмов, мультфильмов, видеофильмов, их редактирования, определения порядка следования изображений.
6. Интегрированные пакеты - набор нескольких программных продуктов, функционально дополняющих друг друга, поддерживающих единые информационные технологии, реализованные на общей вычислительной и операционной платформе.
Методно-ориентированные ППП включают программные продукты, обеспечивающие независимо от предметной области и функций информационных систем математические, статистические и другие методы решения задач.
Офисные ППП охватывают программы, обеспечивающие организационное управление деятельностью офиса:
1. Органайзеры (планировщики) - программное обеспечение для планирования рабочего времени, составления протоколов встреч, расписаний, ведения записной и телефонной книжек.
2. Программы-переводчики, средства проверки орфографии и распознавания текста включают:
– программы-переводчики, предназначенные для создания подстрочника исходного текста на указанном языке;
– словари орфографии, используемые при проверке текстов;
– словари синонимов, используемые для стилевой правки текстов программы, распознавания считанной сканерами информации и преобразования ее в текстовое представление.
3. Коммуникационные ППП предназначены для организации взаимодействия пользователя с удаленными абонентами или информационными ресурсами сети.
Настольные издательские системы включают программы, обеспечивающие информационную технологию компьютерной издательской деятельности:
– форматирование и редактирование текстов;
– автоматическую разбивку текста на страницы;
– создание заголовков;
– компьютерную верстку печатной страницы;
– монтирование графики;
– подготовку иллюстраций и т. п.
Программные средства мультимедиа являются относительно новым классом ППП.
Основное назначение программных продуктов мультимедиа - создание и использование аудио- и видеоинформации для расширения информационного пространства пользователя.
Этот класс ППП сформировался в связи с несколькими факторами:
– с изменением среды обработки данных;
– появлением лазерных дисков высокой плотности записи, с хорошими техническим параметрами, по доступным ценам;
– расширением состава периферийного оборудования, подключаемого к персональному компьютеру;
– развитием сетевой технологии обработки;
– появлением региональных и глобальных информационных сетей, располагающих мощными информационными ресурсами.
Системы искусственного интеллекта реализуют отдельные функции интеллекта человека. Их основными компонентами являются база знаний, интеллектуальный интерфейс пользователя и программа формирования логических выводов.
Разработка этих систем идет по следующим направлениям:
– программы оболочки для создания экспертных систем путем наполнения баз знаний и правил логического вывода;
– готовые экспертные системы для принятия решения в рамках определенных предметных областей;
– системы анализа и распознавания речи и др.
3.2 Операционные системы
3.2.1 Общие сведения об операционных системах
Структура системного программного обеспечения - базового программного обеспечения, которое, как правило, поставляется вместе с компьютером, и сервисного программного обеспечения, которое может быть приобретено дополнительно, представлена на рисунке 3.4.
Базовое программное обеспечение (base software) - минимальный набор программных средств, обеспечивающих работу компьютера.
Сервисное программное обеспечение - программы и программные комплексы, которые расширяют возможности базового программного обеспечения и организуют более удобную среду работы пользователя.
Рассмотрим назначение программных продуктов, относящихся к базовому программному обеспечению.
Операционные системы.
Операционная система предназначена:
– для управления выполнением пользовательских программ;
– планирования и управления вычислительными ресурсами ЭВМ;
– предоставления услуг пользователю.
Рис. 3.4. Классификация системного программного обеспечения
Операционные системы для персональных компьютеров делятся:
– на одно- и многозадачные, в зависимости от числа параллельно выполняемых прикладных процессов;
– одно- и многопользовательские, в зависимости от числа пользователей, одновременно работающих с операционной системой;
– непереносимые и переносимые на другие типы компьютеров;
– несетевые и сетевые, обеспечивающие работу в локальной вычислительной сети ЭВМ.
Наиболее традиционное сравнение ОС осуществляется по следующим характеристикам процесса обработки информации:
– управление памятью;
– функциональные возможности вспомогательных программ (утилит) в составе операционной системы;
– наличие компрессии диска;
– возможности архивирования файлов;
– поддержка многозадачного режима работы;
– наличие качественной документации;
– условия и сложность процесса инсталляции.
Большое значение сегодня имеет применение 32-разрядных операционных систем для персональных компьютеров:
– OS/2 во всех модификация (IBM);
– Windows NT во всех модификациях (Microsoft);
– Unix во всех модификациях;
– Next Step 3.2 (Next);
– SCO Open Desktop 3.0 1 (Sante Cruz Operation);
– Solaris 2.1 (SunSoft) - x86;
– UnixWare Personal Edition 1.0 (Novell).
По данным опроса пользователей программных продуктов, мнение респондентов относительно операционных систем распределилось, как указано в таблице 3.1.