Mac OS X Internals: A Systems Approach

Addison-Wesley Professional, June 2006


Signaled Receiver Processing

José Brustoloni, Eran Gabber, Abraham Silberschatz and Amit Singh, USENIX Annual Technical Conference, San Diego, California, June 2000

Resource Management for QoS in Eclipse/BSD

Blanquer, Bruno, Gabber, McShea, Özden, Silberschatz and Singh, Proceedings of the FreeBSD Conference, Berkeley, California, October 1999

Quality of Service Support for Legacy Applications

José Brustoloni, Eran Gabber, Abraham Silberschatz and Amit Singh, NOSSDAV, New Jersey, 1999

*nix Mischiefs: The New Frontiers

Amit Singh, 1998
Bell Laboratories, Murray Hill, New Jersey

Aberration in behavior is inescapable for almost any entity capable of behaving. Computers are particularly prone to misbehaving. It has been discussed aplenty that software misbehavior is an inherent aspect of the stored-program concept. A widely held belief is that while Microsoft systems are excessively prone to malicious programs (especially viruses) wreaking havoc, UNIX and derived systems are not. People have tried to refute this claim, and several *nix "viruses" have been created. This paper evaluates some of these claims and their counter claims. Furthermore, it attempts a broad look at the kind of "mischiefs" (methodologies of making software misbehave) more than a quarter century of UNIX has led to. No attempt is made to classify malicious code into categories like viruses, worms, trojans etc., for which extensive documentation exists.

Popular Publications

Extended Binary Format Support for Mac OS X

January, 2009

Ancient Unix File Systems on Mac OS X

December 17, 2008
[original] [Slashdot]

UnixFS: A General-Purpose Layer for Writing Unix-Style User-Space File Systems

November, 2008

Understanding Apple's Binary Protection in Mac OS X

October 30, 2006
[original] [Slashdot]

A New Screen of Death for Mac OS X

September 12, 2006
[original] [Slashdot]

A Technical History of Apple's Operating Systems

July 25, 2006
[original] [Slashdot]

Experimenting with Light on Apple Notebook Computers

June 19, 2006
[original] [Slashdot]

A Tour of the Mac OS X Kernel

May 31, 2005
[original] [Slashdot]

The Construction Of Panpipes

April 13, 2005
[original] [Slashdot]

The Apple Motion Sensor As A Human Interface Device

March 21, 2005
[original] [Slashdot]

The PowerBook Sudden Motion Sensor

March 3, 2005
[original] [Slashdot]

UNIX® on the Game Boy Advance

September 8, 2004
[original] [Slashdot]

A Taste of Computer Security

July 29, 2004
[original] [Slashdot]

More Power to Firmware

June 17, 2004
[original] [Slashdot]

Making an Operating System Faster

June 3, 2004
[original] [Slashdot]

Fragmentation in HFS Plus Volumes

May 19, 2004
[original] [Slashdot]

A History of Apple's Operating Systems

March 5, 2004
[original] [Slashdot]

An Introduction to Virtualization

February 5, 2004
[original] [Slashdot]

What is Mac OS X?

January 7, 2004
[original] [Slashdot]

Many Systems on a PowerBook

December 14, 2003
[original] [Slashdot]

108 Implementations of Towers of Hanoi

December 8, 2003
[original] [Slashdot]


Mac OS X

Amit Singh, Enigma, Issue 7, Yorkshire Mac User Group Magazine, UK, January 2004

Towering Inferno

Amit Singh, PC World, pp. 104-114, February 1999

An introduction to Lucent Technologies' Inferno Operating System.

Emulating Console Games and Game Consoles

Amit Singh, PC World, pp. 96-99, September 1998

A digression on software emulation of game consoles.

The Ever Changing Face of Computing [Cover Story]

Amit Singh, PC World, pp. 52-77, December 1997

A brief history of computing, and an attempt to approximate software and hardware trends in key areas of computing in the near future.

Untangling the Web: Pushing, Pulling, and More ...

Amit Singh, PC World, pp. 104-111, November 1997

A discussion of some WWW technologies, with emphasis on popular mechanisms for supporting dynamic web objects on the Internet.

The Ultimate Guide to Setting Up a Multi-Boot PC

Amit Singh, PC World, pp. 88-97, October 1997

Effective use of boot managers and other such software for convenient simultaneous residence of several UNIX-like operating systems on a PC, along with systems like Windows NT, Windows 95, and MS-DOS.

Computer Industry Scenario In India

Amit Singh, Weekly ASCII, Japan, pp. 24, September 22, 1997

Operating Systems: Then, Now, and Tomorrow

Amit Singh, PC World, pp. 44-50, September 1997

Reflections on some operating system design and implementation issues in various contexts, switching in time.

A Guide to Tweaking Your Linux System

Amit Singh, PC Quest, pp. 91-94, September 1997

Guidelines for effective system configuration and other hints for getting more out of a Unix-like system on real-life hardware.

Knowing Too Many Programming Languages and the 5 Language Programming Trick

Amit Singh, PC Quest, pp. 167-169, August 1997

A light-hearted discussion on the need for, and the repercussions of knowing too many programming languages. The trick refers to a piece of code representing the ubiquitous "Hello World" program whose syntactic structure is such that it is valid code for C, DOS Assembly, FORTRAN, Unix shell and Perl. The program outputs the same string ("Hello, World!") upon execution in all cases.

GUI Development Under Linux

Amit Singh, PC Quest, pp. 30-32, July 1997

An exploration of some key toolkits and systems for developing graphical user interfaces on a Unix or Unix-like platform.

Emulating Microsoft Windows in Linux: WINE

Amit Singh, PC Quest, pp. 120-123, June 1997
A critique of WINE, an open source Windows API emulator with programming support.

Emulating Microsoft DOS in Linux: DOSEMU

Amit Singh, PC Quest, pp. 98-101, May 1997

A critique of DOSEMU, an open source DOS emulator that runs on Linux and NetBSD.