- •1. Определение системного программного обеспечения.
- •1. Ретроспектива развития спо.
- •2. Windows-динамически вызываемые библиотеки.
- •2. Характеристика системы прерывания.
- •Прерывания и способы их обработки
- •Драйверы устройств
- •2. Режимы пакетной обработки и разделения времени.
- •1. Принципы работы компилятора.
- •1. Принципы работы интерпретатора.
- •2. Программные прерывания.
- •2. Общая структура системы прерывания.
- •1. Объектный модуль.
- •1. Загрузочный модуль.
- •1. Перемещаемая объектная программа.
- •2. Программный и аппаратный таймер в пк.
- •1. Редактирование связей.
- •2. Общая постановка задачи управления памятью.
- •2. Мультипрограммные режимы и разделение памяти.
- •1. Загрузка программы.
- •2. Многозадачность и многопоточность.
- •2. Физическая и логическая структура памяти.
- •2. Таблица fat.
- •2. Управление файлами.
- •1. Подсистема ввода/вывода.
- •2. Графические файлы. Файлы bmp
1
1. Определение системного программного обеспечения.
Системное программное обеспечение - комплекс управляющих и обрабатывающих
программ, описаний и инструкций, обеспечивающих функционирование вычислительной
системы, а также разработку и исполнение программ пользователей.
СПО может быть разделено на следующие пять групп:
1. Операционные системы.
2. Системы управления файлами.
3. Интерфейсные оболочки для взаимодействия пользователя с ОС и операционные
среды.
4. Системы программирования.
5. Утилиты.
1.1 Операционные системы
Операционная система – совокупность программ, управляющих ходом работы вычислительной
машиной идентифицирующих программы и данные и осуществляющих
связь между машиной и оператором. Операционная система повышает производительность
вычислительного комплекса за счёт гибкой организации прохождения потока задач
через машину, равномерной загрузки оборудования, оптимального использования всех ресурсов
ЭВМ, стандартной организации хранения в машине больших массивов данных при
наличии разнообразных способов доступа к ним.
Любой из компонентов программного обеспечения вычислительной системы обязательно
работает под управлением ОС.
1.2. Системы управления файлами
Назначение системы управления файлами – организация более удобного доступа к
данным, организованным как файлы. Благодаря системе управления файлами вместо низкоуровневого
доступа к данным с указанием конкретных физических адресов нужной нам
записи используется логический доступ с указанием имени файла и записи в нем. Как правило,
все современные ОС имеют соответствующие системы управления файлами.
Однако выделение этого вида СПО в отдельную категорию представляется целесообразным,
поскольку ряд ОС позволяет работать с несколькими файловыми системами
(либо с одной из нескольких, либо сразу с несколькими одновременно). Более того, некоторые
простейшие ОС могут работать и без файловых систем, а значит, им необходимо
иметь системы управления файлами.
В то же время любая система управления файлами не существует сама по себе – она
разработана для работы в конкретной ОС и с конкретной файловой системой.
1.3. Интерфейсные оболочки
Назначение интерфейсных оболочек – либо расширение возможностей по управлению
ОС, либо изменение встроенных в систему возможностей: от изменения внешнего
вида графического интерфейса, до организации выполнения программ, созданных для
других ОС.
К этому же классу СПО следует отнести и эмуляторы, позволяющие смоделировать
в одной операционной системе какую-либо другую машину или операционную систему.
3
1.4. Системы программирования
Система программирования включает в себя прежде всего следующие компоненты: транслятор
с соответствующего языка программирования, библиотеки подпрограмм, текстовый
редактор, компоновщик и отладчик. Не бывает самостоятельных (оторванных от ОС) систем
программирования. Любая система программирования может работать только в соответствующей
ОС, под которую она и создана, однако при этом она может позволять разрабатывать
программное обеспечение и под другие ОС.
Трансляторы – это специальные программы переводчики, которые переводят программы
пользователей написанные на различных языках программирования, в машинный
язык. Существует три вида трансляторов: ассемблеры, компиляторы, и интерпретаторы.
Ассемблер – транслятор, преобразующий программу, написанную на языке ассемблера,
в машинный код. При написании программ на языке ассемблера программист использует
мнемонические обозначения машинных команд и адресов (имена и метки). В
процессе трансляции ассемблер заменяет все мнемонические обозначения их двоичными
кодами.
Компилятор – это системная программа, которая воспринимает на входе текст программы
на языке высокого уровня (исходный модуль), а на выходе генерирует программу
на языке ассемблера или машинном языке (объектный модуль). Объектный модуль состоит
из двух основных частей: тела модуля, представляющего собой программу в кодах команд
конкретной ЭВМ, и заголовка, содержащего внешние имена (имена переменных, используемых
в данном модуле, но определённых в других модулях). Эта информация необходима
для построения из набора объектных модулей программы или программной системы,
готовой к выполнению. Объектные модулиобрабатываются компоновщиком (редактором
связей), который строит исполняемую программу (исполняемый файл, exe-модуль,
загрузочный модуль) содержащую только команды ЭВМ.
Интерпретатор – системная программа, которая транслирует каждый оператор исходной
программы в промежуточный код, интерпретирует его посредством одной или
нескольких команд и выполняет эти команды. В отличие от компилятора интерпретатор
не генерирует объектный код, а выдаёт результаты работы выполняемых операторов исходной
программы.
1.5. Утилиты
Под утилитами понимают специальные системные программы, с помощью которых
можно как обслуживать саму ОС, так и подготавливать для работы носители данных,
выполнять перекодирование данных, осуществлять оптимизацию разрешения данных на
носителе и производить некоторые другие работы, связанные с обслуживанием вычислительной
системы.
2. Основные правила и сложности программирования для Windows.
2