stringtranslate.com

Настольный аксессуар

Настольный аксессуар (DA) или настольный компьютер в вычислительной технике — это небольшое временное или вспомогательное приложение , которое можно запускать в среде рабочего стола одновременно с любым другим приложением в системе. В ранних примерах, таких как настольные аксессуары Sidekick и Macintosh, использовались специальные модели программирования, чтобы обеспечить небольшую степень многозадачности в системах, которые изначально не имели каких-либо других возможностей многозадачности.

Персональные информационные менеджеры

Ранние менеджеры личной информации, такие как Norton Desktop и Borland's Sidekick , предоставляли всплывающий калькулятор, будильник, календарь и другие функции для однозадачных операционных систем, таких как MS-DOS, с использованием резидентных методов завершения и пребывания .

Apple Макинтош

Представленный в 1984 году как часть операционной системы компьютера Apple Macintosh , Desk Accessory (DA) представлял собой часть программного обеспечения, написанную как драйвер устройства и соответствующую определенной модели программирования. Целью этой модели было разрешить запуск очень маленьких приложений вспомогательного типа одновременно с любым другим приложением в системе. Это обеспечивало небольшую степень многозадачности в системе, которая изначально не имела никаких других возможностей многозадачности.

DA были реализованы как специальный класс драйверов . Он был установлен в очередь драйверов и получал время периодически и совместно в результате вызова ведущего приложения SystemTask() в своем основном цикле . DA разрешалось иметь пользовательский интерфейс, если он был ограничен одним главным окном. Специальная рамка окна с черной строкой заголовка и закругленными углами была зарезервирована для использования DA, чтобы пользователь мог отличить ее от окон хост-приложения.

Типичные ранние DA включали калькулятор и будильник. Панель управления , Chooser и Scrapbook изначально были реализованы как DA. Можно приобрести сторонние DA, такие как средства проверки правописания. Считалось, что написать DA сложно, особенно на ранних этапах, когда инструментов разработчика было мало. [1] Однако, поскольку в ранних версиях Mac OS драйверы не имели каких-либо особых привилегий, написание DA с практикой оказалось не сложнее, чем создание любого другого приложения.

Для изменения конфигурации DA использовалась специальная утилита Font/DA Mover . Поскольку DA не устанавливались и не запускались так же, как приложения, пользователь не мог перетаскивать DA в систему или из нее. Они находились в ресурсах «DRVR» системного файла , как и настоящие драйверы, хотя их можно было установить в любой файл, ресурсы которого были загружены в память, и хранились в «чемоданах», когда они не были установлены в системный файл. Если они установлены в отдельном приложении, таком как MacWrite, их функции будут доступны только во время работы этого приложения. То есть настольный аксессуар, установленный в качестве ресурса в приложении, будет отображаться в меню Apple как настольный аксессуар только тогда, когда это приложение будет активно. Затем его можно было активировать во время работы приложения, а затем исчезнуть, когда приложение было закрыто с помощью функции выхода. (Аналогично, ресурсы FKEY могут быть установлены либо внутри системы, чтобы быть общедоступными, либо внутри приложения, чтобы быть доступными только тогда, когда это приложение активно). Поскольку была реализована схема нумерации ресурсов для маркировки ресурсов как принадлежащих другому ресурсу определенного типа и номера в том же файле, например DA («DRVR»), настольные аксессуары могли иметь ограниченную «вилку ресурсов». свои собственные в файле, в котором они содержались; Утилита перемещения распознала такие ресурсы и переместила их вместе с фактическим ресурсом кода DA, с которым они были связаны.

С появлением System 7 , которая включала стандартную функцию совместной многозадачности , потребность в DA значительно уменьшилась, и вместо этого разработчикам было предложено разрабатывать небольшие приложения. Система продолжала использовать DA (и продолжает работать до Mac OS 9.x ) для обеспечения обратной совместимости. В системе 7 и более поздних версиях DA можно было перемещать и переименовывать с помощью Finder, как обычные приложения, устраняя необходимость в Font/DA Mover и ограничивая чемоданы управлением шрифтами . Когда DA запускался в системе 7, он всегда выполнялся в адресном пространстве Finder . Значок настольной вспомогательной программы в системе 7 и более поздних версиях представляет собой примерно перевернутую версию значка приложения: пишущая рука находится слева, а не справа.

Подобный механизм, позволяющий запускать небольшие служебные программы вместе с обычными приложениями, также присутствовал в операционных системах Apple IIGS и Apple IIe .

драгоценный камень

Поставляемые настольные аксессуары в OpenGEM

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

С точки зрения программирования настольные аксессуары были реализованы, как и другие приложения GEM, в виде файлов DOS .EXE с именами, заканчивающимися на .ACC (Аксессуар), а не на .APP (Приложение). Каждый файл .ACC может поддерживать несколько аксессуаров; все три стандартных аксессуара GEM (калькулятор, часы и диспетчер очереди печати) были предоставлены CALCLOCK.ACC. Для установки нужно было просто поместить .ACC в правильный каталог — \GEMBOOTв более ранних версиях, а также \GEMAPPS\GEMSYSв GEM/3 и более поздних версиях.

Поскольку каждый загруженный настольный аксессуар уменьшал объем памяти, доступной для программ, одним из способов временного увеличения доступного пространства было переименование одного или нескольких файлов .ACC с использованием другого суффикса (обычно .ACX) и перезапуск GEM. Например, на Amstrad PC-1512 аксессуар Snapshot поставлялся как .ACC SNAPSHOT.ACX, и перед использованием его нужно было переименовать в .ACC.

Настольные аксессуары продолжали поддерживаться в ViewMAX , файловом менеджере DR-DOS , который поставлялся с почти неизмененными версиями Калькулятора и Часов.

Пальмовая ОС

По той же причине, по которой настольные аксессуары использовались в Mac OS и GEM, а именно, чтобы разрешить одновременное использование более чем одной программы в системе, которая не поддерживала многозадачность, концепция настольных аксессуаров была распространена на Palm OS сторонними разработчиками. DA — это апплеты, запускаемые приложением или хаком, служащие средством запуска DA. Программа запуска DA может отслеживать нажатия клавиш или другие системные события и отображать заранее определенный настольный аксессуар. Многие универсальные приложения запуска Palm OS также способны запускать DA.

Программа настольного аксессуара представляет собой базу данных ресурсов Palm типа «DAcc», включающую один ресурс «код» № 1000, содержащий двоичный код, реализующий настольный аксессуар. Глобальные или статические переменные недоступны, но DA может вызывать API пользовательского интерфейса. DA может иметь ресурсы пользовательского интерфейса в своей базе данных. Средство запуска настольных аксессуаров передает выполнение первому байту ресурса «код» № 1000.

DA обеспечивают некоторую многозадачность. Однако, в отличие от Mac OS и GEM, после того, как пользователь завершил работу с DA, его необходимо закрыть, чтобы вернуться к базовому приложению. Можно разместить один DA поверх другого DA, хотя это может привести к исчерпанию пространства стека.

Рекомендации

  1. ^ «Настольные аксессуары сложно писать, потому что они устроены совершенно иначе, чем хост-программы, от которых они зависят. Они написаны как драйверы устройств, что, среди прочего, означает, что они управляются таблицами, поэтому их необходимо небольшой (максимум около 8 КБ), и им следует быть очень осторожными, чтобы не изменить среду, в которой они работают». Байт, сентябрь 1986 г.

Смотрите также