Проанализировать системное программирование. Дать характеристику системному программному обеспечению. Формализация задачи и разработка алгоритма. Определить исполнителя алгоритмов (ЭВМ).

1.3. Анализ системного программирования:

Системное программирование (или программирование систем) — род деятельности, заключающийся в работе над системным программным обеспечением.

Основная отличительная черта системного программирования по сравнению с прикладным программированием заключается в том, что результатом последнего является выпуск программного обеспечения, предлагающего определённые услуги пользователям (например, текстовый процессор). В то время как результатом системного программирования является выпуск программного обеспечения, предлагающего сервисы по взаимодействию с аппаратным обеспечением (например, дефрагментация жёсткого диска), что подразумевает сильную зависимость таких программ от аппаратной части. В частности, выделим следующее:

программист должен учитывать специфику аппаратной части и другие свойства системы в которой функционирует программа, использовать эти свойства, например, применяя специально оптимизированный для данной архитектуры алгоритм. Обычно используется низкоуровневый язык программирования или такой диалект языка программирования, который позволяет функционирование в окружении с ограниченным набором системных ресурсов. Работает максимально эффективно и имеет минимальное запаздывание по времени завершения. Имеет маленькую библиотеку времени выполнения (RTL) или не имеет её вообще. Позволяет прямое управление (прямой доступ) к памяти и управляющей логике. Позволяет делать ассемблерные вставки в код. Отладка программы может быть затруднена при невозможности запустить её в отладчике из-за ограничений на ресурсы, поэтому может применяться компьютерное моделирование для решения этой проблемы.

Системное программирование существенно отличается от прикладного, что обычно приводит к специализации программиста в одном из них.

Часто, для системного программирования доступен ограниченный набор средств. Использование автоматической сборки мусора довольно редкое явление и отладка обычно сложна. Библиотека времени выполнения, при её наличии, часто менее способная и совершает меньшее количество проверок. В связи с этими ограничениями обычно применяют при мониторинге и записи данных — операционные системы.

1.4. Характеристика системного программного обеспечения.

Системное программное обеспечение — комплекс программ, которые обеспечивают управление компонентами компьютерной системы, такими как процессор, оперативная память, устройства ввода-вывода, сетевое оборудование, выступая как «межслойный интерфейс», с одной стороны которого аппаратура, а с другой — приложения пользователя. В отличие от прикладного программного обеспечения, системное не решает конкретные практические задачи, а лишь обеспечивает работу других программ, предоставляя им сервисные функции, абстрагирующие детали аппаратной и микропрограммной реализации вычислительной системы, управляет аппаратными ресурсами вычислительной системы.

1.5. Формализация задачи и разработка алгоритма:

Постановка и формализация задачи состоит из следующих этапов:

· Содержательная постановка задачи. На данном этапе формулируется сущность проблемы, принимаемые предпосылки и допущения, выделяются черты и свойства моделируемого объекта, изучается его структура, взаимосвязь элементов.

· Формализация и построение математической модели. Выражение проблемы в виде конкретных математических зависимостей. На данном этапе строится математическая модель - система математических соотношений - формул, уравнений, неравенств и т. д., отражающих существенные свойства объекта или явления. Необходимо отметить, что при построении математических моделей далеко не всегда удается найти формулы, явно выражающие искомые величины через данные. В таких случаях используются математические методы, позволяющие дать ответы той или иной степени точности. Для сложных объектов обычно строится несколько моделей, каждая из которых характеризует лишь некоторые стороны объекта, а другие учитываются приближенно. Выявляются общие свойства модели и ее решений. Важным моментом является доказательство существования решения сформулированной задачи, определение единственно ли это решение.

· Разработка структуры входных и выходных данных. Это наиболее трудоемкий этап моделирования. Здесь принимаются во внимание не только возможность получения информации требуемого качества, но и затраты на подготовку информационных массивов.

На начальном этапе развития информационных технологий каждый из этих этапов выполняли люди с ответствующей специализацией. Математик формализовал задачу, программист разрабатывал программу, результаты работы программы оценивал специалист в той области знаний, для которой разрабатывалась программа. Каждый из этих этапов является составной частью изучения предмета информатики. За рубежом эта область знаний называется компьютерной наукой (computer science or computing science) и рассматривается как один из разделов математики.

1.6. Определение исполнителя алгоритмов (ЭВМ):

Исполнителя хаpактеpизуют: сpеда; элементаpные действия; cистема команд; отказы.

Сpеда (или обстановка) — это "место обитания" исполнителя.

Система команд. Каждый исполнитель может выполнять команды только из некотоpого стpого заданного списка — системы команд исполнителя. Для каждой команды должны быть заданы условия пpименимости (в каких состояниях сpеды может быть выполнена команда) и описаны pезультаты выполнения команды. Напpимеp, команда Pобота "ввеpх" может быть выполнена, если выше Pобота нет стены. Ее pезультат — смещение.Pобота на одну клетку ввеpх.

После вызова команды исполнитель совеpшает соответствующее элементаpное действие.

Отказы исполнителя возникают, если команда вызывается пpи недопустимом для нее состоянии сpеды.

Наши рекомендации