Системное программирование для персональных компьютеров
Понятие системного программирования
Понятие "Системное программирование" существует со времен появления компьютерной техники. И с самого его появления считалось, что "Системщик" – это программист, который работает на самом "нижнем" уровне программного обеспечения и пишет программы на машинном языке (команды процессора или язык Ассемблер). Это содержание сохранилось и сегодня. Однако, оно расширилось и включило в себя новые области.
Граница между системным программированием и прикладным программированием зависит от обстоятельств. Например, с точки зрения программиста, который занимается ядром операционной системы, человек, создающий компилятор, является пользователем системы (т.е. прикладным программистом). Этот же человек будет, вероятно, рассматриваться как системный программист тем лицом, которое занимается написанием подпрограмм отыскания минимума функции. Вместе с тем, человек, который будет использовать программу минимизации, может считать всех трех вышеупомянутых программистов системными программистами.
Основываясь на этом примере, можно увидеть обширность применения понятия "Системное программирование". Но такая неопределенность не может послужить основой для построения курса. Поэтому, мы выберем некоторую область и попытаемся обосновать этот выбор.
Системное программирование – это создание системного программного обеспечения, то есть написание таких программ, которые в совокупности составляют некоторую программную систему либо набор элементов для построения программных систем.
Примеров таких систем можно привести множество: операционная система, офисное программное обеспечение, системы проектирования и т.п. Можно сказать, что любой современный пакет, который продается сегодня на рынке, представляет собой сложную программную систему.
Системное программирование для персональных компьютеров
Системное программирование – это прежде всего, программирование для какой-то аппаратной системы. Наиболее распространенными системами на сегодняшний день (с точки зрения обучения и повседневного использования) являются персональные компьютеры. Персональный компьютер – это аппаратно-программная система, которая состоит из аппаратной части (процессор память, контроллеры, и т.п.) – hardware - и, как минимум, операционной системы (ОС) – программы (или совокупности программ), которая загружается при включении компьютера и управляет как оборудованием так и исполняемыми прикладными программами - software .
Любая программа представляет собой набор команд, которые выполняются либо аппаратурой (процессором, дисководом, принтером), либо операционной системой. В последнем случае команда операционной системы является некоторой функцией (подпрограммой), которая, в конечном счете, также исполняется оборудованием. Программа может содержать команды обоих типов (рис.1).
Рис.1 Пример программы, содержащей команды операционной системы и команды процессора
– 5 –
В настоящий момент трудно представить персональный компьютер без операционной системы и прикладную программу, не использующую функции операционной системы, а содержащую только команды процессора. Таким образом, если говорить о системном программировании для персонального компьютера, необходимо рассматривать его как неразрывное сочетание ОС и аппаратуры.
Наиболее распространенной ОС для персональных компьютеров в настоящее время является ОС Windows . Однако, несмотря на то, что это ОС для ПК, она содержит в себе большинство особенностей, характерных для современных программных систем, например, многозадачность, сетевую поддержку. Именно на примере программирования для Win 32 и построен настоящий курс.
Следует также сказать несколько слов о языке, который выбран в качестве демонстрации излагаемого материала. По большому счету, все, о чем будет говориться в курсе, можно исполнить на любом языке программирования ( Delphi , C ++, Assembler ). Однако, мы выберем для показа примеров язык С++ по трем причинам. Во-первых, язык С общепризнанно считается языком системного программирования и является наиболее близким к аппаратуре из языков высокого уровня. Во-вторых, большинство документации по системному программированию (включая наиболее полную документацию - MSDN ) написано с его использованием. И, наконец, среда Microsoft Visual C ++ ( которая лежит в основе практической части курса ) и ОС Windows разработаны одной фирмой ( Microsoft ) и имеют очень хорошую интеграцию.
Дата добавления: 2016-11-22; просмотров: 984;