Application directory

Application directory

An application directory is a grouping of software code, help files and resources that together comprise a complete software package but are presented to the user as a single object.

They are currently used in RISC OS and the ROX Desktop, and are also form the basis of the Zero Install application distribution system. Similar technology includes the NEXTSTEP, GNUstep and Mac OS X concept of bundles. Their heritage lies in the system for automatically launching software stored on floppy disk on Acorn's earlier 8bit micros such as the BBC Micro (the "!BOOT" file).

Bundling various files in this manner allows tools for manipulating applications to be replaced by tools for manipulating the file system. Applications can often be "installed" simply by dragging them from a distribution medium to a hard disk, and "uninstalled" by deleting the application directory.

Fixed Contents

In order to support user interaction with application directories, several files have special status.

Application binaries

Launching an application directory causes the included file "AppRun" (ROX Desktop) or "!Run" (RISC OS) to be launched. On RISC OS this is generally an Obey file (a RISC OS command script) which allocates memory and loads OS extension modules and shared libraries before executing the application binary. Under the ROX Desktop, it is not uncommon for it to be a shell script that will launch the correct system binary if available or compile a suitable binary from source otherwise.

Help files and icons

Both RISC OS and the ROX Desktop allow the user to view help files associated with an application directory without launching the application. RISC OS relies on a file in the directory named "!Help" which is launched as if the user double-clicked on it when help is requested (and can be any format the system understands, but plain text and !Draw formats are common), while the ROX Desktop opens the application’s "Help" subdirectory.

Similarly, custom icons for the Application Directory may be contained within it—either ".DirIcon" (in any supported image format) or "AppIcon.xpm" under the ROX Desktop, or "!Sprites" and optionally "!Sprites22" under RISC OS.

!Boot

RISC OS application directories may contain a file named "!Boot" which is executed by the "Filer" either explicitly via the FilerBoot command, or when the bundle is first displayed (unless the user held Shift when opening that "Filer" window, which defeats application booting).

This allows an application to do tasks such as register supported filetypes (and setting command aliases for running or printing such files), or load different icons such as "ASprites" (icons with an alpha channel for RISC OS Select), "5Sprites" (icons with a RISC OS 5 appearance) or theme-specific icons. "!Boot" files are the most popular propagation vector for such RISC OS viruses as exist (such as the well-known Extend virus), though they can be defeated simply by holding "Shift".

The "!Boot" feature is not duplicated by the ROX Desktop.

The RISC OS !Boot system directory

Acorn's early machines allowed a medium to be "booted" (automatically run) by executing a file called "!BOOT" if present (this action, "booting a disc", was also toggled with the Shift, and hence became known as "shift-booting"). This was exploited in the RISC OS disc structure by having an application directory in the root of the default disc called "!Boot".

This application directory is therefore executed (run) when the machine boots (if so configured), causing its !Run file to be executed (i.e. $.!Boot.!Run in Acorn pathname syntax). This file then causes various files to be executed, OS modules loaded, standard icons to be loaded and filetypes defined, and defines a number of standard variables through which its various subdirectories are accessed.

External links

* [http://rox.sourceforge.net/Manual/Manual/Manual.html#AppDir ROX-Filer User Manual: Application directories]


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • Application virtualization — is an umbrella term that describes software technologies that improve portability, manageability and compatibility of applications by encapsulating them from the underlying operating system on which they are executed. A fully virtualized… …   Wikipedia

  • Directory Access Protocol — (DAP) is a computer networking standard promulgated by ITU T and ISO in 1988 for accessing an X.500 directory service. DAP was intended to be used by client computer systems, but was not popular as there were few implementations of the full OSI… …   Wikipedia

  • Directory traversal — A directory traversal (or path traversal) is to exploit insufficient security validation / sanitization of user supplied input file names, so that characters representing traverse to parent directory are passed through to the file APIs.The goal… …   Wikipedia

  • Directory traversal attack — A directory traversal (or path traversal) consists in exploiting insufficient security validation / sanitization of user supplied input file names, so that characters representing traverse to parent directory are passed through to the file APIs.… …   Wikipedia

  • Application Layer — The Application Layer is the seventh level of the seven layer OSI model, and the top layer of the TCP/IP model. It interfaces directly to and performs common application services for the application processes; it also issues requests to the… …   Wikipedia

  • Application layer — The Internet protocol suite (TCP/IP) and the Open Systems Interconnection model (OSI model) of computer networking each specify a group of protocols and methods identified by the name application layer. In TCP/IP, the application layer contains… …   Wikipedia

  • Application Gateway — Eine externe (Netzwerk oder Hardware ) Firewall (von engl. firewall [ˈfaɪəwɔːl] „die Brandwand“) stellt eine kontrollierte Verbindung zwischen zwei Netzen her. Das könnten z. B. ein privates Netz (LAN) und das Internet (WAN) sein; möglich ist… …   Deutsch Wikipedia

  • Directory Map object —    In Novell Directory Services (NDS), a leaf object that refers to a directory on a volume. The Directory Map object allows a drive to be mapped to an application or to a login script without requiring the actual path and volume where the… …   Dictionary of networking

  • Directory of Public Worship — Calvinism portal The Directory for Public Worship[1] (known in Scotland as the Westminster Directory having been approved by the Scottish Parliament in 16 …   Wikipedia

  • Directory — For Wikipedia’s directories, see Wikipedia:Directory. Directory may refer to: Directory (file systems), or folder, a file system structure in which to store computer files Directory (databases), stored information about a database Directory… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”