Cтраница 3
Обычно уже на ранних этапах проектирования можно сделать предварительные оценки размеров программ. На этом этапе следует принять решение, какую структуру будет иметь загрузочный модуль: простую структуру - все требуемые подпрограммы нахо -, дятся в памяти; динамическую структуру - в памяти находится только корневая подпрограмма, которая посредством подпрограмм, динамической загрузки по мере надобности динамически загружает в память требуемые сегменты программы. [31]
![]() |
Графики изменения величины коэффициента приведения К. 2 в зависимости от годовой производственной программы для основных типов авторемонтных предприятий. [32] |
Для предприятий других типов, а также для случаев, когда размеры программы выходят за пределы диапазонов, представленных на рис. VI.3.1, искомый коэффициент определяется из последнего выражения. [33]
Следует отметить, что в СМ-3 и СМ-4 без диспетчера памяти размер программы не может превышать 28 Кслов. В СМ-4 с диспетчером памяти, несмотря на то что память для программ может быть увеличена до 124 Кслов, объем одной программы не может превышать 32 Кслов. Использование остальной памяти СМ-4 в этом случае достигается за счет мультипрограммирования или разделения времени в соответствии с особенностями конкретных операционных систем СМ ЭВМ. [34]
Хотя желательно, чтобы разработка не зависела от времен выполнения и размеров программ, сложные задачи не всегда могут быть решены таким путем. Однако желательно, чтобы такая независимость обеспечивалась настолько, насколько это возможно. [35]
Кроме того, на этапе проектирования имеется гораздо больше возможностей по сокращению размеров программы и улучшению ее эксплуатационных характеристик посредством совершенствования алгоритмов и структур данных, чем при кодировании и локальной оптимизации, когда приходится прибегать к различного рода ухищрениям. [36]
Показанные выше макросы представляют собой понятные примеры выигрыша в скорости за счет увеличения размеров программы. [37]
Отсутствие контроля за вычислением логических выражений и гарантированного его порядка приводит к увеличению размера программ и необходимости использования дополнительных переменных. [38]
Показанные выше макросы представляют собой понятные примеры выигрыша в скорости за счет увеличения размеров программы. [39]
Часто будет найдено несколько решений, вполне корректных, но различающихся по эффективности, размерам программы или легкости понимания. В трудных случаях или в особо ответственных программах процесе детализации нужно выполнить дважды. Второй результат обычно бывает лучше первого. [40]
Модули, несомненно, влияют на успешное решение этих остающихся проблем, связанных с размером программы. Модули позволяют легко и надежно вести разработку программ бригадами, хранить компоненты программы в библиотеке и не дублировать их в каждой использующей их программе. Библиотечные средства значительно снижают время программирования и требования к вычислительным ресурсам. [41]
![]() |
Системная область связи. [42] |
При загрузке монитор извлекает из файла, содержащего программу основной задачи, информацию о размере программы, смещает KMON и USR в сторону младших адресов памяти и загружает задачу в память так, чтобы ее максимальный адрес непосредственно предшествовал области, в которой находятся драйверы ВУ или резидентный монитор, если драйверы отсутствуют. После настройки машинных команд и областей данных основной задачи на конкретный адрес загрузки монитор запускает основную задачу. Необходимость настройки делает процесс загрузки основной задачи более сложным и длительным по сравнению с загрузкой фоновой задачи. [43]
Взявшись за RTL, разработчики компании Borland могли несколько сократить излишество всех Delphi-приложений, сократив размер программы на несколько избыточных килобайт, характерных для всех раздутых современных программ, но для разработчиков это очень удобно. В некоторых случаях даже эти несколько килобайт ( умноженные в нескольких приложениях) могут уменьшить размер и, в конечном итоге, время загрузки программы. [44]
Самому написать программу в машинном коде весьма сложно, причем эта сложность резко возрастает с увеличением размера программы и трудоемкости решения нужной задачи. Условно можно считать, что машинный код приемлем, если размер программы не превышает нескольких десятков байтов и нет потребности в операциях ручного ввода / вывода данных. [45]