Cтраница 1
Разбиение программы на участки, удовлетворяющие тому пли иному критерию оптимальности, носит название сегментации программы, а сами участки называются сегментами. Необходимость в сегментации возникает в основном по двум причинам: в связи с использованием многоуровневой памяти и в связи с организацией некоторых оптимизирующих преобразований логической пли информационной структуры программы. [1]
Разбиение программы на модули, осуществляемое на стадиях проектирования и алгоритмизации, хотя и является весьма непростым делом, позволяет существенно облегчить в дальнейшем работу над программой на различных этапах. [2]
Разбиение программы на операторы не является однозначным. Например, арифметический оператор часто можно разделить на несколько арифметических операторов, а иногда даже каждую из его команд можно считать самостоятельным оператором. Но такое измельчение операторов нецелесообразно, так как оно приводит к удлинению логической схемы программы и лишает ее обозримости. Нужно стараться объединить в каждом операторе возможно большее количество команд. [3]
Цикл разработки программы. [4] |
Разбиение программы на модули может быть проиллюстрировано и документировано блок-схемой, которая показывает взаимосвязи между модулями. Рассмотрим, например, следующие внешние спецификации. [5]
Разбиение программы на фазы выполняется с помощью оператора PHASE. Оператор PHASE идентифицирует имя и начальный адрес каждой фазы. [6]
Разбиение программы на операторы не является однозначным; чрезмерное дробление операторов нецелесообразно, так как это усложняет логическую схему программы. Чаще всего выбирают такое разбиение программы на операторы, при котором логическая схема проще и требует меньших затрат труда программиста. [7]
Список примеров и упражнений по рекурсии, приведенных в тексте Общее методическое замечание. [8] |
Разбиение программы на функции аккуратным, иерархическим образом способствует систематизации конструирования программного обеспечения. [9]
Разбиение программы на фазы выполняется с помощью оператора PHASE. Оператор PHASE идентифицирует имя и начальный адрес каждой фазы. При определении имени фазы следует помнить, что первые четыре символа имени для всех фаз данной программы должны быть одинаковыми и не могут совпадать с первыми четырьмя символами любой другой фазы в библиотеке абсолютных модулей. [10]
При разбиении программы на программные единицы необходимо учитывать такой фактор, как размер объектного модуля. Оптимальным является объектный модуль, размер которого не превышает 8 Кбайт. Для базирования программы такого размера достаточно двух регистров. Однажды загруженные, эти регистры могут использоваться на протяжении всего времени выполнения программы. [11]
Способы же разбиения программы в разных методах проектирования различны и будут служить основным объектом изучения в этой и следующей главах. [12]
Приведенное выше разбиение программ СПО на четыре группы довольно условно, так как развитые операционные системы часто имеют в своем составе несложные сервисные программные средства и даже элементы системы технического обслуживания. [13]
Хотя методика разбиения программ на части в настоящее время широко распространена, она сильно ограничивает возможности программистов и проектировщиков операционных систем общего назначения и накладывает дополнительные ограничения на возможности вычислительных систем. Очевидным решением многих возникающих проблем служит в настоящее время виртуальная, или кажущаяся, память. Развитие этой концепции прошло через несколько этапов. [14]
Заключается в разбиении программ, которые должны выполняться параллельно, на сегменты, соединяемые в единую программу. Функция каждого сегмента и порядок соединения сегментов определяются таким образом, чтобы максимально использовать процессорное вре - - мя. При помощи интерфейса мультиплексного канала осуществляется чередование операций обмена с несколькими низкоскоростными внешними устройствами. [15]