These classnotes are depreciated. As of 2005, I no longer teach the classes. Notes will remain online for legacy purposes

UNIX02/Devices, Processes, Files, And Daemons Oh My

Classnotes | UNIX02 | RecentChanges | Preferences

File abstraction

This is review. It should have been covered in the previous course.

  • Almost everything under Linux is designed with "file abstraction" in mind. This means that interfacing between different things (such as applications, devices and even servers) can be done as if they were files.

This is actually not entirely true, but for our purposes we will assume that it is


  • The devices connected to your system can be interfaced via the /dev filesystem.

Note: Althought it may not directly affect you, the device handling internals of the Linux kernel have been undergoing some significant changes in the last several years. Previously, all devices had to be registered out of a fixed number of "major" and "minor" numbers. This created an undesirable limit on the number of deviced Linux could support. As of 2.3.46 of the Linux kernel (part of the development branch between 2.2 and 2.4) a new device subsystem has been included which allows a more desirable "namespace" identification of devices. This system is called "devfs". Of course, "desirable-ness" is relative, and some people do have a problem with this method of handling devices. At any rate, this system (or something similar to it) is the way Linux is headed, so it is important to become familier with it. For more information, click here:


  • A synonym for server, particular to software designed for UNIX systems. Not to be confused with demon, which is an appelation for an evil spirit.

Linux has "Tux, the Linux Penguin" (see as its "official" mascot (though, some will argue as to whether it really is "official"). But long before Linux, the FreeBSD world had "The FreeBSD Daemon" (aka, Beastie) as their cute and cudly mascot (see

Classnotes | UNIX02 | RecentChanges | Preferences
This page is read-only | View other revisions
Last edited August 14, 2003 11:27 pm (diff)
(C) Copyright 2003 Samuel Hart
Creative Commons License
This work is licensed under a Creative Commons License.