Системный уровень — переходной. Программы, работающие на этом уровне, обеспечивают взаимодействие программ с программами базового уровня, то есть выполняют «посреднические» функции. Например, при подключении нового оборудования на системном уровне должна быть установлена программа, обеспечивающая для других программ взаимосвязь с этим оборудованием, такие программы называют драйверами. Программы системного уровня отвечают за взаимодействие с пользователем, то есть благодаря им он получает возможность вводить данные в вычислительную систему, управлять ее работой, получать результат. Совокупность программного обеспечения системного уровня образует ядро операционной системы.
Служебный уровень – программы обслуживания операционной системы. К этому уровня относятся все сервисные программы, называемые утилитами (архиваторы, антивирусные программы, программы проверки диска и т.д.)
Прикладной уровень – программы для решения конкретных прикладных программ (например, Microsoft Word, Microsoft Access, 1С:Бухгалтерия и т.д.)
Файл – это поименованная область на диске, имеющая уникальное имя. Имя файла может содержать от 1 до 8 символов для DOS и от 1 до 255 символов для Windows. Расширение описывает содержание файла.
*.exe, *.com, *.bat – исполнимые файлы
Каталог (папка) – это специальное место на диске, в котором хранятся имена файлов, сведения о размерах файлов, времени их последнего обновления, атрибуты (свойства) файлов. Папки и файлы образуют иерархическую структуру, которая называется файловой структурой.
Программа – упорядоченная последовательность команд компьютера, составленная для решения задачи.
Процесс создания программы можно представить схематично в виде последовательности действий:
Постановка задачи – алгоритм решения – программирование – отладка программы – программный продукт.
Постановка задачи – обобщенный термин, который определяет исходные и выходные условия решаемой задачи.
Алгоритм – система инструкций, определяющая процесс преобразования исходных данных (входная информация) в результат решения поставленной задачи (выходная информация).Алгоритм – это конечная последовательность однозначных предписаний, исполнение которых позволяет с помощью конечного числа шагов получить решение задачи, однозначно определяемое исходными данными.
Свойства алгоритмов:
- дискретность – возможность разбиения процесса обработки информации на более простые этапы;
- определенность – однозначность выполнения отдельного шага преобразования информации;
- выполнимость (результативность) – возможность получения желаемого результата при заданной входной информации за конкретное число шагов;
- универсальность (массовость) – пригодность алгоритма для решения определенного класса задач.
Программирование – это решение задачи средствами конкретного языка программирования и оформление полученных результатов в виде программы.
Отладка программы – процесс обнаружения и устранения ошибок в программе, производимой по результатам ее тестирования на компьютере.
Программный продукт – комплекс взаимосвязанных программ для решения определенной задачи.
Алгоритмы подразделяются на:
- линейные - наборы команд, выполняемых последовательно во времени друг за другом;
- разветвляющиеся – алгоритмы, содержащие хотя бы одно условие, в результате проверки которого обеспечивается переход на один из двух возможных шагов;
- циклические – алгоритмы, предусматривающие многократное повторение одного и того же действия над новыми исходными данными.
Способы представления алгоритмов.
1. Словесно-формульное описание – на естественном языке с использованием математических формул.
2. Графическое описание в виде блок-схемы – набор связанных между собой геометрических фигур. Для обозначения шагов решения в виде схемы алгоритма используются специальные обозначения:
Выполнение операции или группы операций, в результате которых изменяется значение, форма представления или расположения данных. | |
Выбор направления выполнения алгоритма или программы в зависимости от условий | |
Ввод исходных данных или вывод результатов обработки | |
Начало, конец выполнения программы | |
Использование ранее созданных или отдельно описанных алгоритмов или программ | |
Указание связи между прерванными линиями потока, связывающими графические обозначения блок-схемы | |
Комментарий |
Программа – это набор машинных команд, которые следует выполнить для реализации алгоритма. Команды, поступающие в процессор по его шинам, на самом деле являются электрическими сигналами, то есть их можно представить как совокупность нулей и единиц. Разным командам соответствуют разные числа. Поэтому программа, с которой работает процессор, представляет собой последовательность чисел, называемую машинным кодом. Для представления алгоритма в виде, понятном компьютеру служат языки программирования. Текст программы обрабатывается специальными служебными программами, которые называются трансляторами. С помощью языка программирования создается не готовая программа, а только ее текст, описывающий ранее разработанный алгоритма. Чтобы получить работающую программу, надо этот текст либо автоматически перевести в машинный код (для этого служат программы-компиляторы), либо поочередно выполнять команды языка (программы-интерпретаторы.
Разновидности программирования:
- объектно-ориентированное – центральным является понятие класса (множество объектов, обладающих определенными свойствами);
- структурное- сосредотачивается на процессе разделения программы на логические части, называемые модулями, и последовательное программирование каждой части.
Если язык программирования ориентирован на конкретный тип процессора и учитывает его особенности, то он называется языком программирования низкого уровня. Языком самого низкого уровня является язык ассемблера.
СРСП 5 – Программное обеспечение ПК
Подготовьте (устно) ответы на следующие вопросы:
1 Каково происхождение слова «алгоритм»?
2 Что такое исполнитель? Приведите примеры.
3 Из каких элементов состоят алгоритмы?
4 Охарактеризуйте способы представления алгоритмов.
5 Какова роль языка в представления алгоритмов?
6 В чем состоит свойство дискретности алгоритма?
7 В чем состоит свойство детерминированности алгоритма? Можно ли говорить о детерминированности алгоритмов, использующих случайные числа?
8 Что означает свойство результативности алгоритма?
9 Можно ли считать алгоритмами процедуры, подразумевающие обработку бесконечных последовательностей чисел?
10 В чем состоит свойство локальности шагов алгоритма?
11 Что означает «массовость» алгоритма?
12 Каков жизненный цикл программных систем?
13 Каковы основные общие требования к процессу проектирования программ?
14 Что такое декомпозиция?
15 В чем состоит модульный подход к разработке программ?
16 В чем состоит структурный подход к проектированию программ?
17 В чем состоит объектный подход к разработке программ?
18 Что называется тестированием программы?
Осн.:[2],[3],[6],[7][9 c. 560 - 607]
Доп.:[30],[33],[34]
Тема 4 Операционные системы, оболочки, среды
Цель: раскрыть понятия – операционная система, операционная оболочка, операционная среда; изучить функции операционных систем, примеры операционных систем.
Операционная система в наибольшей степени определяет облик всей вычислительной системы в целом. При работе с диском программисту-пользователю достаточно представлять его в виде некоторого набора файлов, каждый из которых имеет имя. Работа с файлом заключается в его открытии, выполнении чтения или записи, а затем в закрытии файла. Вопросы подобные таким, как следует ли при записи использовать усовершенствованную частотную модуляцию или в каком состоянии сейчас находится двигатель механизма перемещения считывающих головок, не должны волновать пользователя. Программа, которая скрывает от программиста все реалии аппаратуры и предоставляет возможность простого, удобного просмотра указанных файлов, чтения или записи - это, конечно, операционная система. Точно также как ОС ограждает программистов от аппаратуры дискового накопителя и предоставляет ему простой файловый интерфейс, операционная система берет на себя все малоприятные дела, связанные с обработкой прерываний, управлением таймерами и оперативной памятью, а также другие низкоуровневые проблемы.
Таким образом, под ОС обычно понимают комплекс управляющих и обрабатывающих программ, который, с одной стороны, выступает как интерфейс между аппаратурой компьютера и пользователем с его задачами, а с другой – предназначен для наиболее эффективного использования ресурсов вычислительной системы и организации надежных вычислений. Любой из компонентов прикладного ПО обязательно работает под управлением ОС (пользователи взаимодействуют со своими программами через интерфейс ОС. Любые команды, прежде чем попасть в прикладную программу, проходят через ОС).