Ixemul.library

Ixemul.library

The ixemul.library is a software source-code compatibility library for the Commodore AmigaOS. It allows software for Unix-like platforms to be easily compiled on Amiga systems with minimal source code modification.

Description

The ixemul.library provides a number of BSD system API calls that are then internally converted to native Amiga kernel calls. The API was specifically modeled against NetBSD, providing a similar system for process control, multitasking, file operations, signals, pipes and other messaging methods. The library provides this with low overhead, requiring roughly 200KB of memory.

Most Unix-like programs can be compiled without modification (see "limitations" below). Programs that require BSD Sockets networking can use the related ixnet.library. Programs that include X Window client support can use the Amiga port of X.

There is no restriction against using both ixemul and Amiga native API calls simultaneously.

History

The library was originally developed around 1991-92 by Markus Wild as an aid in porting the GNU Compiler Collection and PDKsh. Several incomplete source snapshots were made available online while he continued to release new binaries. When Markus shifted his attention to NetBSD development full time, development of the library stalled.

Around 1994, Rafael W. Luebbert produced a fork of the project, gluing together different working parts of the public source code. This version soon became the "de facto" standard within the Amiga community.

A second fork of the project was later started by Leonard Norrgard. Due to overlapping version numbers, this resulted in some ambiguity between projects. The projects were later merged under a single maintainer, which is its current state.

Limitations

The library does not emulate the BSD system API in its entirety. Some of the signals, such as SIGSTOP, are missing. The use of some process control functions, such as fork(), cannot be fully implemented due to the Amiga's lightweight, non-virtual memory system; instead, more lightweight versions, such as vfork(), are utilized.

The library does not claim POSIX compliance.

The library does not act as emulator for BSD system calls when using pre-compiled binaries from other operating systems. Binaries from NetBSD/m68k and SunOS/m68k remain incompatible.

ee Also

* Cygwin
* Microsoft POSIX subsystem
* Microsoft Windows Services for UNIX
* UWIN

References

* [http://amiga.sourceforge.net/index.php?sfcontent=/project/shownotes.php?release_id=315727&group_id=48010 ixemul.library release notes]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Comparison of operating systems — Usage share of web client operating systems. (Source: Median values from Usage share of operating systems for August 2011.)   Windows XP (35.21%) …   Wikipedia

  • AmigaOS 4 — A screenshot of AmigaOS 4.1 Update 2. Company / developer Hyperion Entertainment Programmed in C OS family …   Wikipedia

  • MorphOS — Basisdaten Entwickler MorphOS Team …   Deutsch Wikipedia

Share the article and excerpts

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