Sebuah Sistem Operasi adalah kumpulan program-program (software/perangkat lunak) yang membantu para pemakai komputer untuk berkomunikasi dengan komputernya. Bisa dianalogikan sebagai “Suatu Organisasi Pemerintahan” pada kumpulan komunitas yang ada di dalam komputer kita (misalnya: harddisk, mouse, VGA card, CPU dan lain-lain), dimana Program Utama memberitahu kepada program lain apa dan akan mereka lakukan untuk memberikan layanan yang mereka butuhkan. Sebuah komputer dapat dimungkinkan mempunyai lebih dari sebuah sistem operasi, tetapi hanya satu sistem operasi komputer yang dapat jalan pada satu saat . Arsitektur Dasar Sistem Operasi Linux Bagian terpenting sistem operasi adalah kernel, merupakan jantung sistem operasi.  Kernel menyediakan tool dimana semua layanan sistem komputer disediakan.  Kernel mencegah proses aplikasi mengakses mengakses perangkat keras secara langsung, memaksa proses menggunakan tool yang disediakan.  Kernel memberi proteksi kepada pemakai dari gangguan pemakai lain

Tool Kernel digunakan melalui panggilan sistem (system call). Program sistem menggunakan tool kernel untuk implementasi beragam layanan. Program sistem dan semua program lain berjalan diatas kernel. Program pemakai berjalan di mode berbeda dengan kernel, disebut mode pemakai.
Kernel berisi beberapa bagian penting, yaitu:
 Manajemen proses
 Manajemen memori
 Driver-driver perangkat keras
 Driver-driver sistem file
 Manajemen jaringan
 Dan beragam subsistem lain
Proses adalah program tunggal yang berjalan pada alamat virtual, berarti setiap hal yg berjalan dibawah Linux adalah proses. Proses ini berjalan melalui perintahperintah yang ada dalam shell. Satu baris perintah dalam shell terkadang mampu mempengaruhi lebih dari satu proses, khususnya jika terdapat perintah pipe. Contoh:

nroff -man ps.1 | grep kill | more

perintah ini melakukan tiga proses, satu proses untuk setiap perintahnya.
Tipe-tipe proses dalam Linux:
Ada beberapa tipe proses dalam Linux . Setiap proses mempunyai kekhususan dan atribut tersendiri.:
 Interactive processes: Proses yang dimulai (dan dikontrol oleh) shell. Bisa tampak diluar (foreground) ataupun hanya didalam (background).
 Batch processes: Proses yang tidak berhubungan dengan terminal tetapi menunggu untuk dieksekusi secara sequent.
 Daemon processes: Proses yang dimulai ketika Linux booting dan berjalan secara background.
Cara termudah untuk mengetahui proses apa yang sedang berjalan pada sistem adalah menggunakan perintah ps (process status). Perintah ps mempunyai beberapa option dan argumen, tersedia untuk seluruh user dan root, walau tentu hasilnya akan berbeda tergantung login anda. Jika anda login sebagai user biasa (bukan root), jika perintah ps ditulis akan tampak hasil seperti:

$ ps

PID TTY STAT TIME COMMAND

41 v01 S 0:00 -bash

134 v01 R 0:00 ps

Hasil dari perintah ps selalu disusun dalam bentuk kolom. Kolom pertama berlabel PID (Process Identification Number); adalah penomoran dari Linux untuk menandai sebuah proses, dimulai dari nol dan bertambah satu untuk tiap proses hingga nomor tertinggi. Jika Linux mencapai nomor tertinggi, penomoran akan dimulai lagi dari nomor terendah dengan melewati nomor yang sedang digunakan proses yang aktif. Biasanya nomor terendah digunakan oleh proses kernel dan daemon yang dimulai saat booting hingga
Linux berjalan. Untuk memanipulasi proses kita dapat menggunakan PID. Kolom TTY menunjukkan terminal yang digunakan saat proses dimulai. Kolom STAT menunjukkan kondisi terkini dari proses, entri yang paling banyak terdapat adalah S untuk sleeping dan R untuk running. Kolom TIME menunjukkan CPU time yang digunakan oleh proses. Kolom NAME menunjukkan nama proses yang berjalan, biasanya adalah nama
perintah yang dimasukkan.

 

Manajemen memori Linux menyediakan:
1. Ruang alamat besar
Ruang alamat dapat lebih besar dibanding memori fisik yang tersedia
2. Proteksi
Tiap proses di sistem mempunyai ruang alamat maya tersendiri. Ruang-ruang alamat maya itu sepenuhnya terpisah. Proses yang berjalan di satu aplikasi tidak dapat mengganggu proses lainnya.
3. Pemetaan memori
Dilakukan pemetaan antara memori maya ke memori fisik yang tersedia.
4. Memori maya bersama (shared virtual memory)
Memori maya bersama ini untuk menghemat ruang memori, seperti pustaka dinamis bagi beberapa proses.