Anatomy of the Linux kernel


http://www.ibm.com/developerworks/linux/library/l-linux-kernel/

History and architectural decomposition

M. Tim Jones (mtj@mtjones.com), Consultant Engineer, Emulex Corp.

The Linux® kernel is the core of a large and complex operating system, and while it’s huge, it is well organized in terms of subsystems and layers. In this article, you explore the general structure of the Linux kernel and get to know its major subsystems and core interfaces. Where possible, you get links to other IBM articles to help you dig deeper.

Given that the goal of this article is to introduce you to the Linux kernel and explore its architecture and major components, let’s start with a short tour of Linux kernel history, then look at the Linux kernel architecture from 30,000 feet, and, finally, examine its major subsystems. The Linux kernel is over six million lines of code, so this introduction is not exhaustive. Use the pointers to more content to dig in further.

Longest-living bug in Linux

quoted from http://liw.iki.fi/liw/texts/longest-living-bug.html In the spring and summer of 1991, my friend Linus was playing around with this OS-like program, which later became Linux. He wanted a printf like service inside the kernel, but didn't know how to implement it, though (he didn't know C thoroughly back then). So I…

How to get out of vi

quoted from http://liw.iki.fi/liw/texts/vi.html For some inexplicable reason people often have trouble getting out of vi, the venerable and mighty UNIX editor. Given that the vi user interface is logical, and therefore easy to learn, this manual should be unnecessary. The world, however, is not what it should be. 22 September…

Linux Anecdotes

quoted from http://liw.iki.fi/liw/texts/linux-anecdotes.html

Linux Anecdotes

A look at the history of Linux, as seen by a long time Linux user. The talk is a series of anecdotes, shy of technical details, and sprinkled with personal memories.

27 April 1998

This talk was given at the 1998 Linux Expo.

Who I am and why I am here

I seem to have acquired a little bit of reputation in the Linux community, despite my efforts in to stay quiet and invisible, so that I don't get so many questions from people having trouble with Linux.

Part of my reputation is that I know Linux pretty well. That part is based on the time when I and Linus Torvalds—I assume you know Linus—shared an office at the University of Helsinki. In reality, I don't know Linux all that well. For example, my one stab at kernel programming resulted in a bug that took three years to track down and fix, and even then it was done by someone hacking OS/2. I'm referring to the sprintf function inside the kernel.

Why Hack Mode Is Better Than Sex

quoted from http://liw.iki.fi/liw/texts/why-hack-mode-is-better-than-sex.html You can do hack mode all day without being called immoral. It's not illegal to get paid for hack mode. It's not embarrassing to read hack mode literature in a train. You don't get diseases from hack mode. Hack mode doesn't result in children. Your computer won't…

Vacations and weekends

quoted from http://liw.iki.fi/liw/texts/vacation.html

Boss, what's vacation?

"Boss, can I ask you something?"

"Sure."

"Everyone's always talking about vacations and free time and things like that. How come I never have any?"

"You wouldn't like it."

"But they think it's better than work. They really look forward to it."

"Remember last year, when the office was shut down for a week."

"When they replaced all windows? Sure I remember. I couldn't play with a computer for a week. Horrible."

"Vacations are like that."

"Oh."

"So you wouldn't like them."

"But everyone else does."

"Ah, but that's because they're lusers, not hackers."

"Oh."

"Now go back and write that compiler. We need it last week."

Important programming truths

quoted from http://liw.fi/programming-truths/

Originally written in 1995.
This page contains a number of important programming truths that every budding programmer should know about. These truths are self-evident, and need no explanations.

If it compiles, it works.
If it compiles, it’s correct.
If it runs, it doesn’t have any bugs.
If it doesn’t have any immediately obvious bugs, it’s perfect.
If a bug doesn’t show, it doesn’t exist.
If it seems to work, it works.
Doing something right is easy. Avoiding errors only takes a bit of concentration.
The shorter the source code, the faster the program.
It’s obvious how to optimize a program.
Prorammers don’t make mistakes.

Mengapa Kita perlu merokok !!!

A cigarette (French: “small cigar”, from cigare + -ette) is a small roll of finely cut tobacco leaves wrapped in a cylinder of thin paper for smoking. The cigarette is ignited at one end and allowed to smoulder; its smoke is inhaled from the other end, which is held in or to the mouth and in some cases a cigarette holder may be used as well. Most modern manufactured cigarettes are filtered and include reconstituted tobacco and other additives.

1. Perokok pasif lebih berbahaya daripada perokok aktif, maka untuk mengurangi resiko
tersebut aktiflah merokok.

2. Menghindarkan dari perbuatan jahat karena tidak pernah ditemui orang yang membunuh,
mencuri dan berkelahi sambil merokok.

3. Mengurangi resiko kematian: Dalam berita tidak pernah ditemui orang yang meninggal
dalam posisi merokok.

4. Berbuat amal kebaikan: Kalau ada orang yang mau pinjam korek api paling tidak sudah siap
/ tidak mengecewakan orang yang ingin meminjam.

5. Baik untuk basa-basi / keakraban: Kalau ketemu orang misalnya di Halte CJDW kita bisa
tawarkan rokok. Kalau basa-basinya tawarkan uang kan nggak lucu.

Membagi bandwidth secara adil dengan mikrotik

Membagi bandwidth secara adil dengan mikrotik Dengan menggunakan queue type pcq di Mikrotik, kita bisa membagi bandwidth yang ada secara merata untuk para user, saat jaringan pada posisi peak. step2nya: Asumsi : Network Address 172.16.0.0/12, interface yang mengarah ke pengguna diberi nama Lan, dan interface yang mengarah ke upstream provider…