|
|
|
|
Описание библиотеки исполняющей системы
Что такое библиотека исполняющей системы? Как известно, библиотека представляет из себя собрание полезных подпрограмм, которые могут быть вызваны из
программы. Большинство библиотек являются скомпонованными (отредактированными) библиотеками, в которых требуемые подпрограммы включаются в программный
файл (.EXE или .COM) во время компоновки. Т.к. они являются частью программного файла, подпрограммы скомпонованной библиотеки загружаются вместе с
программой при загрузке программного файла. RTL непосредственно не компонуется с программой, но подключается во время выполнения. RTL должна уже
находиться в памяти, или она должна быть занесена в память, когда это необходимо, но, в любом случае RTL не является частью самого программного
файла.
RTL непосредственно не объединяется с программой, так как же программа выполняет ее вызов? Программа должна каким-либо образом поставить в
известность либо операционную систему, либо RTL о поддержке процесса, с помощью которого запрашивается библиотека. Это может быть выполнено через
вызовы, внутренние прерывания, исключительные ситуации или прерывания, зависящие от комплекса аппаратных средств и операционной системы. В среде
операционной системы MS-DOS/8086 наиболее подходящим способом является способ оповещения через прерывание.
Почему же используют библиотеки RTL, если они требуют дополнительных усилий: предварительной загрузки, вызова и т.д.? Во-первых, библиотеки RTL часто
используются при разработке прикладных программ, которые имеют большое количество программ, совместно использующих общие подпрограммы или для обеспечения
общими ресурсами всех пользователей отдельного языка программирования. При использовании библиотек RTL, разработчикам необходимо сохранять только одну
копию библиотеки, вместо того, чтобы каждая программа содержала такую копию. Пока интерфейс между программами и RTL остается неизменным, подпрограммы в
RTL могут обновляться без модификации или перекомпоновки программ, которые их вызывают. Поэтому RTL может выглядеть как расширение операционной системы,
т.к. она обеспечивает такие средства, которые необходимы разработчикам, но которые не поддерживает операционная система. Во-вторых, библиотеки RTL имеют
дополнительные преимущества по уменьшению дисковой памяти и ускорению времени загрузки программы, т.к. RTL не загружается с каждой программой в
отдельности.
|
|