jamesleon
Oct 4 2004, 10:03 PM
6 The various Unix-like systems on the market, some of which have a long history and may show signs of archaic practices, differ in many important respects. All commercial variants were derived from either SVR4 or 4.4BSD; all of them tend to agree on some common standards like IEEE's POSIX (Portable Operating Systems based on Unix) and X/Open's CAE (Common Applications Environment). Understanding the Linux Kernel 7 The current standards specify only an application programming interface (API) that is, a well-defined environment in which user programs should run. Therefore, the standards do not impose any restriction on internal design choices of a compliant kernel.[2] [2] As a matter of fact, several non-Unix operating systems like Windows NT are POSIX-compliant. In order to define a common user interface, Unix-like kernels often share fundamental design ideas and features. In this respect, Linux is comparable with the other Unix-like operating systems. What you read in this book and see in the Linux kernel, therefore, may help you understand the other Unix variants too. The 2.2 version of the Linux kernel aims to be compliant with the IEEE POSIX standard. This, of course, means that most existing Unix programs can be compiled and executed on a Linux system with very little effort or even without the need for patches to the source code. Moreover, Linux includes all the features of a modern Unix operating system, like virtual memory, a virtual filesystem, lightweight processes, reliable signals, SVR4 interprocess communications, support for Symmetric Multiprocessor (SMP) systems, and so on. By itself, the Linux kernel is not very innovative. When Linus Torvalds wrote the first kernel, he referred to some classical books on Unix internals, like Maurice Bach's The Design of the Unix Operating System (Prentice Hall, 1986). Actually, Linux still has some bias toward the Unix baseline described in Bach's book (i.e., SVR4). However, Linux doesn't stick to any particular variant. Instead, it tries to adopt good features and design choices of several different Unix kernels. Here is an assessment of how Linux competes against some well-known commercial Unix kernels: " The Linux kernel is monolithic. It is a large, complex do-it-yourself program, composed of several logically different components. In this, it is quite conventional; most commercial Unix variants are monolithic. A notable exception is Carnegie- Mellon's Mach 3.0, which follows a microkernel approach. " Traditional Unix kernels are compiled and linked statically. Most modern kernels can dynamically load and unload some portions of the kernel code (typically, device drivers), which are usually called modules. Linux's support for modules is very good, since it is able to automatically load and unload modules on demand. Among the main commercial Unix variants, only the SVR4.2 kernel has a similar feature. " Kernel threading. Some modern Unix kernels, like Solaris 2.x and SVR4.2/MP, are organized as a set of kernel threads. A kernel thread is an execution context that can be independently scheduled; it may be associated with a user program, or it may run only some kernel functions. Context switches between kernel threads are usually much less expensive than context switches between ordinary processes, since the former usually operate on a common address space. Linux uses kernel threads in a very limited way to execute a few kernel functions periodically; since Linux kernel threads cannot execute user programs, they do not represent the basic execution context abstraction. (That's the topic of the next item.) " Multithreaded application support. Most modern operating systems have some kind of support for multithreaded applications, that is, user programs that are well designed in terms of many relatively independent execution flows sharing a large portion of the application data structures. A multithreaded user application could be composed of many lightweight processes (LWP), or processes that can operate on a common Understanding the Linux Kernel address space, common physical memory pages, common opened files, and so on. Linux defines its own version of lightweight processes, which is different from the types used on other systems such as SVR4 and Solaris. While all the commercial Unix variants of LWP are based on kernel threads, Linux regards lightweight processes as the basic execution context and handles them via the nonstandard clone( ) system call. " Linux is a nonpreemptive kernel. This means that Linux cannot arbitrarily interleave execution flows while they are in privileged mode. Several sections of kernel code assume they can run and modify data structures without fear of being interrupted and having another thread alter those data structures. Usually, fully preemptive kernels are associated with special real-time operating systems. Currently, among conventional, general-purpose Unix systems, only Solaris 2.x and Mach 3.0 are fully preemptive kernels. SVR4.2/MP introduces some fixed preemption points as a method to get limited preemption capability. " Multiprocessor support. Several Unix kernel variants take advantage of multiprocessor systems. Linux 2.2 offers an evolving kind of support for symmetric multiprocessing (SMP), which means not only that the system can use multiple processors but also that any processor can handle any task; there is no discrimination among them. However, Linux 2.2 does not make optimal use of SMP. Several kernel activities that could be executed concurrently like filesystem handling and networking must now be executed sequentially. " Filesystem. Linux's standard filesystem lacks some advanced features, such as journaling. However, more advanced filesystems for Linux are available, although not included in the Linux source code; among them, IBM AIX's Journaling File System (JFS), and Silicon Graphics Irix's XFS filesystem. Thanks to a powerful objectoriented Virtual File System technology (inspired by Solaris and SVR4), porting a foreign filesystem to Linux is a relatively easy task. " STREAMS. Linux has no analog to the STREAMS I/O subsystem introduced in SVR4, although it is included nowadays in most Unix kernels and it has become the preferred interface for writing device drivers, terminal drivers, and network protocols. This somewhat disappointing assessment does not depict, however, the whole truth. Several features make Linux a wonderfully unique operating system. Commercial Unix kernels often introduce new features in order to gain a larger slice of the market, but these features are not necessarily useful, stable, or productive. As a matter of fact, modern Unix kernels tend to be quite bloated. By contrast, Linux doesn't suffer from the restrictions and the conditioning imposed by the market, hence it can freely evolve according to the ideas of its designers (mainly Linus Torvalds).
Reply
Similar Topics
Keywords : linux, versus, unix, kernels, littler, history
- Linux Beginners - Tutorial On Editors In Linux.
(3)
Adding Ttf Fonts To Your Linux
so you can really get into gimping :) (0) Using ttf fonts in Linux While working in Linux and wanting to work with the GIMP, I mainly
lacked my fonts, the ones I had in Windows, so needless to say I had to fix this. So here is how I
do it /smile.gif' border='0' style='vertical-align:middle' alt='smile.gif' /> First you will
have to make a folder to store your ttf fonts in, normally I use /usr/share/fonts/ttf/ as folder.
You will have to do this as root, so su - (password) mkdir /usr/share/fonts/ttf/ chmod 755
/usr/share/fonts/tff What we did here, was with "su -" change the user to root, the "-" just ....
Installing Photoshop 7 On Linux (fedora)
Needs windows installation (10) Hi, well I've tried coping with The GIMP but could never get it to make smaller compressed file
sizes, so I had to cheat and use Adobe Photoshop 7, however, I use to switch over to Windows to do
this, and it was only for compressing the file, so I thought, how about getting Adobe Photoshop 7
working with Linux (no, I am not kidding!), well here's my steps on how to do this. (tested
and verified that it works, not completely tested though). Also working off by memory so I do
apologise if some things aren't correct, but I know it's near enough that you....
Demystifying "chmod" - Part 1
& why viruses get so retarded on Linux (7) Hi, Today we are going to learn a bit about *NIX command chmod or "change mode" - which could be
referred to as the *NIX counterpart of the MS-DOS/Windows attrib command. Our objective here is to
understand the way File Permissions work on *NIX systems and be able to srt/change file permissions
according to our needs. Recently there have been a lot of questions flyig around about viruses on
*NIX systems - so along with this I'll briefly try to explain HOW the *NIX file permissions make
it so hard for viruses to operate successfully in such an environment. We....
Howto: Setup Your Own DHCP Server On Linux
And have it to allot IPs dynamically (0) Howto: Setup a DHCP Server on Linux in Few Simple Steps Hi all, I'm back again with a new
turorial - this time we're going to deal with another aspect of Linux/Windows networking - the
DHCP Server . I'm sure all of you must have come across the term DHCP - anyone who connects to
the internet has to come across it every now and then. You see the term even on the small setup
instructions leaflets that accompany the dial-up internet packages from most of the ISPs. DHCP is
what allots you a unique IP address everytime you dial out to your ISP. Here's ....
Linux Tutorials List
Lets all chip in... (0) Hi all /smile.gif' border='0' style='vertical-align:middle' alt='smile.gif' /> Lets all chip
in an maintain the most complete list of Linux Tutorials here. I believe there's a similar post
somewhere in one of the OS Forums - admins, it would do good if you could move it in here. Thanks.
Here's one for a starter - for user's migrating from Windows to Linux, the IBM
Windows-to-Linux Roadmap Series: http://www-106.ibm.com/developerworks/linu.../l-roadmap.html ....
Howto: Setup Windows NT/2K Domain Using SAMBA
and make Windows 2000 Logon to Linux (9) Howto: Setup and emulate a Windows NT Domain on Linux and make Windows 2000/XP log on
=========================================================================== HI all, I'm
back with another Tutorial in the Linux series. This time we're going to with an issue that is
very common in everyday networking and is implemented almost everywhere in some form or the other.
The primary issue here is to make two DIFFERENT Operating Systems talk to each other over the
network and synchonize and share files without letting off any hint about the complex protocols i....
Howto: Domain Name Server On Linux
DNS for your Intranet (or Internet) Serv (7) HOWTO: Setup a Local Domain Name Server (DNS) for your Intranet
==================================================================== Experimentation Platform:
------------------------- Intel P4 3.0Ghz (Intel MB) 1 GB RAM 2 x 80 GB HDD on RAID 1 (Disk
Mirroring) - alloted entirely to Linux OS: ------------------------- Linux - Redhat Enterprise AS
Server v3 Note: a. I was trying to setup the system so that later on when my server goes
online, I don't have to modify much to make my nameservers work with the internet - so I used my
registered domain "mi....
Hotkeys / Keyboard Quick Launch Keys In Linux
(5) I first submitted this tutorial a couple of months ago over at http://linuxiso.org/forums as user
adpsimpson. Having spent ages wishing the hotkeys on my laptop would work, I spent most of an
afternoon looking into it. Since no site I found explained it satisfactorily, here's my
method... The first step is to find out which of the keys are registered by the kernel, and what
their keycodes are (the unique event number that they cause). To do this you need a program called
xev, (in Mandrake this is part of X11R6-contrib, is installed by default in Slack, and should....
Using Ntloader To Boot Linux
Win2K or XP, should work with most Linux (3) Basically what we're going to do with NTLoader is use NTLoader to boot into Linux's
bootloader which then boots Linux, why someone would do that when Grub works perfectly fine booting
Windows on NTFS? Who knows what reason other than it could destroy their MBR and make both OS
inaccessible or at least render Linux useless till it's recovered, NTLoader is not specifically
designed to boot other Operating Systems other than Windows. We will be using 2 Hard Drives, this
is not necessary, we could use 2 partitions on a hard drive, but we should have the Operati....
Networking Linux and Windows
(4) For the life of me I can not figure out how to go about mounting my Windows share on my Linux box.
I read somewhere that I needed to use Samba so I got that and I have no clue what to do. I am not
very experienced with Linux and am using RedHat so if you could dumb it down and go through it step
by step it would be great. Thanks alot.....
Linux - which distributiuon?
(18) I'm wondering what distributions of Linux do you like most. Please make some comments on
distribution you like so everybody will know its adventagies.....
Linux/Gnu
(3) hmmm I am a friend of Gnu/Linux itself. I like the concept of Gnu/Linux, but as I have used Linux
for a long time I have noticed that the hardware support is not the best. You can read which
hardware is supported, but this is not the best way because if your printer e.g is claimed to be
supported by cups on their website, it's not ensured that this printer is really supported. I
had so many printers, which should run with cups (only an example) and at the end these printers
then print pure crap . Another example are graphic adapters...I have 3 different cards and e....
Some one know how to install my scanner
Hp psc 1210 in linux suse (2) I have problen whit my Scanner the system detect this of hp scanjet all-in-one but this don't
are scanjet this are PSC 1210, and I don't know how he does that. I browsing in google.com/linux
for the driver and to in Hp.com but don't exist this drivers. You know where I download this
drivers. /tongue.gif' border='0' style='vertical-align:middle' alt='tongue.gif' />
/tongue.gif' border='0' style='vertical-align:middle' alt='tongue.gif' /> /tongue.gif'
border='0' style='vertical-align:middle' alt='tongue.gif' /> /biggrin.gif' border='0'
style='vert....
looks himself linux
Don't fear him. (1) Is enough seemed to windows pruevalo.....
Linux is well supported.
Belive it or not (2) Believe it or not, it may be a lot easier to get patches and updates for Linux than for any
proprietary operating system! The answer to a problem often comes back within a few hours after
sending a message to some newsgroup or mailing list. Moreover, drivers for Linux are usually
available a few weeks after new hardware products have been introduced on the market. By contrast,
hardware manufacturers release device drivers for only a few commercial operating systems, usually
the Microsoft ones. Therefore, all commercial Unix variants run on a restricted subset of hard....
Linux is highly compatible
with many common operating systems. (0) It lets you directly mount filesystems for all versions of MS-DOS and MS Windows, SVR4, OS/2, Mac
OS, Solaris, SunOS, NeXTSTEP, many BSD variants, and so on. Linux is also able to operate with many
network layers like Ethernet, Fiber Distributed Data Interface (FDDI), High Performance Parallel
Interface (HIPPI), IBM's Token Ring, AT&T WaveLAN, DEC RoamAbout DS, and so forth. By using
suitable libraries, Linux systems are even able to directly run programs written for other operating
systems. For example, Linux is able to execute applications written for MSDOS, MS Win....
Linux is fully customizable in all its components.
but is don't ease (0) Thanks to the General Public License (GPL), you are allowed to freely read and modify the source
code of the kernel and of all system programs. Several commercial companies have started to support
their products under Linux, most of which aren't distributed under a GNU Public License.
Therefore, you may not be allowed to read or modify their source code.....
Linux offers the following advantages over its com
Linux is free. (0) 8 You can install a complete Unix system at no expense other than the hardware (of course).....
You Can Learn Linux: This Is A Little History
(0) Linux is a member of the large family of Unix-like operating systems. A relative newcomer
experiencing sudden spectacular popularity starting in the late 1990s, Linux joins such well-known
commercial Unix operating systems as System V Release 4 (SVR4) developed by AT&T, which is now owned
by Novell; the 4.4 BSD release from the University of California at Berkeley (4.4BSD), Digital Unix
from Digital Equipment Corporation (now Compaq); AIX from IBM; HP-UX from Hewlett-Packard; and
Solaris from Sun Microsystems. Linux was initially developed by Linus Torvalds in 1991 as an....
"Demo" of Linux
Knoppix (7) I found something interesting out here. For all us Windows-users who want to try Linux but
can't, let me introduce Knoppix . I haven't tried it myself, and I'm a Windows user,
but I certainly will try at some point.....
Mplayer in Linux
Best of Windows Media Player (4) Yes the program Mplayer is best of windows media player. You can download that every codec pack and
skins. These program open your movies faster, and it does't matter that type be: DVD, VCD, AVI,
ASF, MPG, DivX and XviD. These player is faster and ease for use. Ty it I assure you that pleased
you. But it's only under Linux Use. this the screenshut:
http://www.radikalsoft.com/img/Mplayer.jpg And you dont need to modific your region of DVD because
mplayer have regionfree.....
How to make your life in Linux most ease
My life in Linux is now ease (18) The you can do is chage your linux to SuSE 9.1, These linux meke all for you. He install your modem,
printer well your every hareware. The it brings software as mplayer to see movies (these are similar
to Media Player), Xmms to play musicb (these are similar to Winamp), Kopete for every messengers,
K3B for write yoour cd's and dvd's (these are similar to Nero), Mozilla (these are similar
to Nestcape). And the best is that you do not have to pay for the lisence its free. And SuSE heve
good games that Unreal tournamend, Quake 3, Medal of Honor and Wolfenstein Enemi....
Running Linux on slow computers
(7) I'm wondering if Mandrake 9.2 with X can be used on slow machine like: Pentium 350, 64mb ram,
2mb graphic card. I don't want to install any servers (ssh maybe).....
To all Linux users
Linux counter for all Linux users (5) All Linux users, Linux community has a Linux counter which keeps track for Linux usuage all over
the world. This counter is counting for since years and is still counting. All of you Linux users,
should register that at http://counter.li.org/ It's run by a nonprofit membership
organization called the Linux Counter Project. And BTW, I'm not affiliated with them. I just
happen to be a Linux user for over 6 years.....
FreeBSD? Linux?
(2) Hi all. I've been working on Mandrake, RedHat. Now I use FreeBSD. Seem to be very robust and
stable. Everything you can get from one point - it's ports collection on www.freebsd.org. One
problem - there is no ALSA driver for it. What do you think about FreeBSD and Linux?....
Linux
(9) Linux is one of my favorite OS out there. It seems to have none of the problemes that windows have.
Liux is free and I really like that free always equals good. But sometimes when I coldboot I takes
forever to finally run .....
Looking for linux, versus, unix, kernels, littler, history
|
|
Searching Video's for linux, versus, unix, kernels, littler, history
|
advertisement
|
|