алгоритмическими. Имеют в составе:
• машинно-зависимые (ассемблер). Применяются для написания программ, явно использующих специфику конкретной аппаратуры. Каждый компьютер имеет такую систему программирования, которая изготавливается и поставляется фирмой-изготовителем вместе с компьютером;
• машинно-ориентированные (язык С). Объединяет идеи ассемблера и алгоритмического языка. Программы компактны и работают очень быстро.
• универсальные (Турбо-Паскаль, Бэйсик). Приближены максимально, насколько это возможно, к естественному английскому языку: название каждой команды – английское слово;
2) функциональные. Применяются, как правило, для машинного моделирования той или иной проблематики. Имеют в составе:
• проблемно-ориентированные (GPSS). Моделируют систему с помощью последовательности событий. Применяются, в частности, при проектировании вычислительных комплексов;
• объектно-ориентированные (Форт). Имеют встроенные средства для моделирования новых объектов программирования;
• логико-ориентированные (Prolog). Отдельно описываются правила предметной области, по которым затем выводятся новые факты.
Системы программирования включают:
1) интегрированную среду разработчика программы, состоящую, в частности, из текстового редактора, позволяющего создавать и корректировать исходные тексты программ, средств поддержки интерфейса программиста с системными средствами для выполнения различных сервисных функций (например, сохранения или открытия файла);
2) транслятор – программу, переводящую исходный текст во внутреннее представление компьютера;
3) отладчик – программу для трассировки и анализа выполнения прикладных программ. Она позволяет отслеживать выполнение программы в пооператорном режиме, идентифицировать место и вид ошибок в программе, наблюдает за изменением значений переменных, выражений и т. д.;
4) компоновщик – программа для подготовки прикладной программы к работе в конкретных адресах основной памяти компьютера;
5) справочные системы.
Инструментальная среда пользователя – специальные средства, встроенные в ППП:
1) библиотеки функций, процедур, объектов и методов обработки;
2) макрокоманды;
3) программные модули-вставки;
4) конструкторы экранных форм и отчетов;
5) языки запросов высокого уровня.
Обращает на себя внимание обилие средств, относящихся к инструментарию технологии программирования. Это связано со сложностью разработки программного продукта. Традиционная схема проектирования программы рассмотрена далее.
3.5. Операционные системы
Операционная система (ОС) – это совокупность программных средств, осуществляющих управление ресурсами ЭВМ, запуск прикладных программ и их взаимодействие с внешними устройствами и другими программами, а также обеспечивающих диалог пользователя с компьютером. Ресурсом является любой компонент ЭВМ и предоставляемые им возможности: центральный процессор, оперативная или внешняя память, внешнее устройство, программа и т. д. ОС загружается при включении компьютера. Она предоставляет пользователю удобный способ общения (интерфейс) с вычислительной системой. Интерфейс при этом может быть программным и пользовательским.
Программный интерфейс – это совокупность средств, обеспечивающих взаимодействие устройств и программ в рамках вычислительной Системы.
Пользовательский интерфейс – это программные и аппаратные средства взаимодействия пользователя с программой или ЭВМ. Каждый компьютер обязательно комплектуется операционной системой, для каждой из которых создается свой набор прикладных программ (приложений).
Операционные системы классифицируются по:
• количеству одновременно работающих пользователей:
• однопользовательские (MS-DOS, Windows 3.x, ранние версии OS/2);
• многопользовательские (UNIX, Windows NT, Windows 2000, Windows XP).
Главным отличием многопользовательских систем от однопользовательских является наличие средств защиты информации каждого пользователя от несанкционированного доступа других пользователей. Многопользовательские операционные системы, в отличие от однопользовательских, поддерживают одновременную работу на ЭВМ нескольких пользователей за различными терминалами;
• количеству решаемых задач:
– однозадачные (например, MS-DOS, MSX);
– многозадачные (OC EC, OS/2, UNIX, Windows 95-XP).
Однозадачные ОС поддерживают режим выполнения только одной программы в отдельный момент времени. Понятие многозадачности означает поддержку параллельного выполнения нескольких программ, существующих в рамках одной вычислительной системы, в один момент времени;
• количеству поддерживаемых процессоров:
– однопроцессорные, Windows 95, 98, Ме, MS-DOS, MSX;
– многопроцессорные; Solaris 2.x, Open Server 3.x, OS/2, Windows NT, Net-Ware 4.1.
Многопроцессорные ОС, в отличие от однопроцессорных, поддерживают режим распределения ресурсов нескольких процессоров для решения той или иной задачи;
• типу интерфейса:
– Командный – предполагает выдачу на экран приглашения для ввода команды (MS-DOS); этом виде интерфейса пользователь подает команды компьютеру, а компьютер их выполняет и выдает результат пользователю.
– WIMP – (Window-окно, Image-изображение, Menu-меню, Pointer-указатель) (Windows 95/98/NT/2000/XP). Характерной особенностью этого вида интерфейса является то, что диалог с пользователем ведется не с помощью команд, а с помощью графических образов – меню, окон, других элементов. Хотя и в этом интерфейсе подаются команды машине, но это делается через графические образы. Отличительные особенности этого интерфейса заключаются: в выделении областей экрана; в переопределении клавиш клавиатуры в зависимости от контекста; в использовании манипуляторов и клавиатуры для управления курсором; в широкое использовании цветных мониторов; в том, что вся работа с программами, файлами и документами происходит в окнах – определенных очерченных рамкой частях экрана; в том, что все программы, файлы, документы, устройства и другие объекты представляются в виде значков – иконок, при открытии иконки превращаются в окна; все действия с объектами осуществляются с помощью меню.
– SILK – (Speech-речь, Image-изображение, Language-язык, Knowledge-знание) (например, Brocade Fabric OS). Этот вид интерфейса наиболее приближен к обычной, человеческой форме общения. В рамках этого интерфейса идет обычный «разговор» человека и компьютера. При этом компьютер находит для себя команды, анализируя человеческую речь и находя в ней ключевые фразы. Результат выполнения команд он также преобразует в понятную человеку форму. Разновидностями являются интерфейсы на основе речевой и биометрической технологий;
• типу доступа пользователя к ЭВМ:
– системы пакетной обработки (например, OC EC), из программ, подлежащих выполнению, формируется пакет (набор) заданий, вводимых в ЭВМ и выполняемых в порядке очередности с возможным учетом приоритетности;
– системы разделения времени (UNIX, VMS), обеспечивающие одновременный диалоговый (интерактивный) режим доступа к ЭВМ нескольких пользователей на разных терминалах, которым по очереди выделяются ресурсы машины, что координируется операционной системой в соответствии с заданной дисциплиной обслуживания;