Sistem Operasi

Bahan Kuliah IKI-20230

Gabungan Kelompok Kerja 21–28 Semester Genap 2002/2003 dan 41–49 Semester Ganjil 2003/2004 Mata Kuliah Sistem Operasi



Persembahan

Buku ini dipersembahkan dari Gabungan Kelompok Kerja 21–28 Semester Genap 2002/2003 dan 41–49 Semester Ganjil 2003/2004 Mata Kuliah Sistem Operasi, oleh Gabungan Kelompok Kerja 21–28 Semester Genap 2002/2003 dan 41–49 Semester Ganjil 2003/2004 Mata Kuliah Sistem Operasi, untuk siapa saja yang ingin mempelajari Sistem Operasi. Tim penyusun buku ini ialah sebagai berikut:

Kelompok 21 (Koordinator)

Dhani Yuliarso, Fernan, Hanny Faristin, Melanie Tedja, Paramanandana D.M., Widya Yuwanda.

Kelompok 22

Budiono Wibowo, Agus Setiawan, Baya U.H.S., Budi A. Azis Dede Junaedi, Heriyanto, Muhammad Rusdi.

Kelompok 23

Indra Agung, Ali Khumaidi, Arifullah, Baihaki A.S., Christian K.F. Daeli, Eries Nugroho, Eko Seno P., Habrar, Haris Sahlan.

Kelompok 24

Adzan Wahyu Jatmiko, Agung Pratomo, Dedy Kurniawan, Samiaji Adisasmito, Zidni Agni.

Kelompok 25

Nasrullah, Amy S. Indrasari, Ihsan Wahyu, Inge Evita Putri, Muhammad Faizal Ardhi, Muhammad Zaki Rahman, N. Rifka N. Liputo, Nelly, Nur Indah, R. Ayu P., Sita A.R.

Kelompok 26

Rakhmad Azhari, Adhe Aries, Adityo Pratomo, Aldiantoro Nugroho, Framadhan A., Pelangi, Satrio Baskoro Y.

Kelompok 27

Teuku Amir F.K., Alex Hendra Nilam, Anggraini W., Ardini Ridhatillah, R. Ferdy Ferdian, Ripta Ramelan, Suluh Legowo, Zulkifli.

Kelompok 28

Christiono H, Arief Purnama L.K., Arman Rahmanto, Fajar, Muhammad Ichsan, Rama P. Tardan, Unedo Sanro Simon.

Kelompok 41

Ahmad Furqan S K., Aristo, Obeth M S.

Kelompok 42

Puspita K S, Retno Amelia, Susi R, Sutia H.

Kelompok 43

Agus Setiawan, Adhita Amanda, Afaf M, Alisa Dewayanti, Andung J Wicaksono, Dian Wulandari L, Gunawan, Jefri Abdullah, M Gantino, Prita I.

Kelompok 44

Arnold W, Antonius H, Irene, Theresia B, Ilham W K, Imelda T, Dessy N, Alex C.

Kelompok 45

Bima Satria T, Adrian Dwitomo, Alfa Rega M, Boby, Diah Astuti W, Dian Kartika P, Pratiwi W, S Budianti S, Satria Graha, Siti Mawaddah, Vita Amanda.

Kelompok 46

Josef, Arief Aziz, Bimo Widhi Nugroho, Chrysta C P, Dian Maya L, Monica Lestari P, Muhammad Alaydrus, Syntia Wijaya Dharma, Wilmar Y Ignesjz, Yenni R

Kelompok 47

Bayu Putera, Enrico, Ferry Haris, Franky, Hadyan Andika, Ryan Loanda, Satriadi, Setiawan A, Siti P Wulandari, Tommy Khoerniawan, Wadiyono Valens, William Hutama.

Kelompok 48

Amir Murtako, Dwi Astuti A, M Abdushshomad E, Mauldy Laya, Novarina Azli, Raja Komkom S.

Kelompok 49 (Koordinator)

Fajran Iman Rusadi, Carroline D Puspa.

Daftar Isi
Kata Pengantar
1. Konsep Dasar Perangkat Komputer
2. Konsep Dasar Sistem Operasi
Struktur Sistem Operasi
Komponen-komponen Sistem
Layanan Sistem Operasi, System Calls, dan System Program
Layanan Sistem Operasi
System Calls
System Program
Struktur Sistem
Struktur Sederhana
Pendekatan Terlapis
Mikrokernel
Mesin Virtual, Desain Sistem dan Implementasinya, dan System Generation
Mesin Virtual
Desain Sistem dan Implementasinya
System Generation
Rangkuman
Latihan
Rujukan
3. Proses dan Penjadwalan
4. Sinkronisasi dan Deadlock
5. Managemen Memori
Swapping
6. Sistem Berkas
7. I/O
8. Studi Kasus: GNU/Linux
Daftar Pustaka
A. GNU Free Documentation License
PREAMBLE
APPLICABILITY AND DEFINITIONS
VERBATIM COPYING
COPYING IN QUANTITY
MODIFICATIONS
COMBINING DOCUMENTS
COLLECTIONS OF DOCUMENTS
AGGREGATION WITH INDEPENDENT WORKS
TRANSLATION
TERMINATION
FUTURE REVISIONS OF THIS LICENSE
How to use this License for your documents
Indeks

Kata Pengantar

Buku ini merupakan hasil karya Gabungan Kelompok Kerja 21–28 Semester Genap 2002/2003 dan 41–49 Semester Ganjil 2003/2004 Mata Kuliah Sistem Operasi Fakultas Ilmu Komputer Universitas Indonesia (Fasilkom UI). Kelompok Kerja 21-28 mengawali penulisan buku ini dan Kelompok Kerja 41-49 melakukan revisi dan perbaikan.

Penulisan buku ini bertujuan untuk mengatasi kelangkaan bahan kuliah berbahasa Indonesia, yang dapat dimanfaatkan sebagai rujukan oleh para peserta kuliah khususnya kuliah Sistem Operasi.

Sebagai pengantar Sistem Operasi, buku ini sengaja dirancang bagi siapa saja yang berminat untuk mengetahui apa itu sebenarnya sistem operasi. Penulis mengawali buku ini dengan pengenalan Konsep Dasar Perangkat Komputer yang ditulis dimuka pada Bab 1 sebagai awalan dalam mengenal komputer lebih jauh. Pada bab ini secara singkat dibahas mengnai keseluruhan komponen yang membangun komputer. Konsep Dasar Sistem Operasi ditulis dalam Bab 2 sebagai gambaran umum sistem operasi komputer. Penjelasan lebih rinci mengenai sistem operasi diberikan pada Bab 3 sampai Bab 7. Sebagai tambahan, GNU/Linux sebagai salah satu sistem operasi yang ada saat ini, diulas pada Bab 8.

Tiap-tiap bab berisi soal-soal latihan agar pembaca dapat mengulas kembali pembahasan pada bab tersebut dan mengevaluasi sejauh mana pengetahuan mengenai bab tersebut.

Gambar dipilih sedemikian rupa sehingga dapat memberikan ilustrasi yang membantu pembaca untuk lebih memahami pembahasan.

Kami menyadari bahwa ini masih banyak kekurangannya. Silakan menyampaikan kritik/ tanggapan/ usulan anda ke .


Bab 1. Konsep Dasar Perangkat Komputer


Bab 2. Konsep Dasar Sistem Operasi

Struktur Sistem Operasi

Memandang, mendefinisikan atau mengartikan apa itu sistem operasi bisa diketahui dari beberapa hal, diantaranya dengan mengetahui komponen-komponen sistemnya, layanan yang disediakan oleh sistem operasi, struktur sistemnya maupun fungsi dari sistem operasi.


Komponen-komponen Sistem

Pada kenyataannya tidak semua sistem operasi mempunyai struktur yang sama. Namun menurut Avi Silberschatz, Peter Galvin, dan Greg Gagne, umumnya sebuah sistem operasi modern mempunyai komponen sebagai berikut:

Seadangakan menurut A.S.Tananbaum, Sistem Operasi mempunyai empat komponen utama, yaitu manajemen proses, input/output, manajemen memori dan sistem berkas.


Layanan Sistem Operasi, System Calls, dan System Program

Layanan Sistem Operasi

Layanan sistem operasi dirancang untuk membuat pemrograman menjadi lebih mudah.

  1. Pembuatan Program

    Sistem operasi menyediakan berbagai fasilitas yang membantu programer dalam membuat program seperti editor. Walaupun bukan bagian dari sistem operasi, tapi layanan ini diakses melalui sistem operasi.

  2. Eksekusi Program

    Sistem harus bisa me-load program ke memori, dan menjalankan program tersebut. Program harus bisa menghentikan pengeksekusiannya baik secara normal maupun tidak (ada error)

  3. Operasi I/O

    Program yang sedang dijalankan kadang kala membutuhkan I/O. Untuk efisiensi dan keamanan, pengguna biasanya tidak bisa mengatur peranti I/O secara langsung, untuk itulah sistem operasi harus menyediakan mekanisme dalam melakukan operasi I/O.

  4. Manipulasi Sistem Berkas

    Program harus membaca dan menulis berkas, dan kadang kala juga harus membuat dan menghapus berkas.

  5. Komunikasi

    Kadang kala sebuah proses memerlukan informasi dari proses yang lain. Ada dua cara umum dimana komunikasi dapat dilakukan. Komunikasi dapat terjadi antara proses dalam satu komputer, atau antara proses yang berada dalam komputer yang berbeda, tetapi dihubungkan oleh jaringan komputer. Komunikasi dapat dilakukan dengan pembagian memori(penggunaan bersama, share-memory)atau message-passsing, dimana sejumlah informasi dipindahkan antara proses oleh sistem operasi.

  6. Deteksi Error

    Sistem operasi harus selalu waspada terhadap kemungkinan error. Error dapat terjadi di CPU dan memori perangkat keras, I/O, dan di dalam program yang dijalankan pengguna. Untuk setiap jenis error sistem operasi harus bisa mengambil langkah yang tepat untuk mempertahankan jalannya proses komputasi.

Disamping pelayanan diatas, sistem operasi juga menyediakan layanan lain. Layanan ini bukan untuk membantu pengguna tapi lebih pada mempertahankan efisiensi sistem itu sendiri. Layanan tambahan itu yaitu :

  1. Alokasi Sumber Daya

    Ketika beberapa pengguna menggunakan sistem atau beberapa program dijalankan secara bersamaan, sumber daya harus dialokasikan bagi masing-masing pengguna dan program tersebut.

  2. Accounting

    Kita menginginkan agar jumlah pengguna yang menggunakan sumber daya, dan jenis sumber daya yang digunakan selalu terjaga. Untuk itu maka diperlukan suatu perhitungan dan statistik. Perhitungan ini diperlukan bagi seseorang yang ingin merubah konfigurasi sistem untuk meningkatkan pelayanan.

  3. Proteksi

    Layanan proteksi memastikan bahwa segala akses ke sumber daya terkontrol. Dan tentu saja keamanan terhadap gangguan dari luar sistem tersebut. Keamanan bisa saja dilakukan dengan terlebih dahulu mengidentifikasi pengguna. Ini bisa dilakukan dengan meminta passsword bila ingin menggunakan sumber daya.


System Calls

Biasanya tersedia sebagai instruksi bahasa rakitan. Beberapa sistem mengizinkan system calls dibuat langsung dari program bahasa tingkat tinggi. Beberapa bahasa pemrograman (contoh : C, C++) telah didefenisikan untuk menggantikan bahasa rakitan untuk sistem pemrograman.

Tiga metode umum yang digunakan dalam memberikan parameter kepada sistem operasi

Jenis System Calls

  1. Kontrol Proses

    System calls yang berhubungan dengan kontrol proses antara lain ketika penghentian pengeksekusian program. Baik secara normal (end) maupun tidak normal (abort). Selama proses dieksekusi kadang kala diperlukan untuk meload atau mengeksekusi program lain, disini diperlukan lagi suatu system calls. Juga ketika membuat suatu proses baru dan menghentikan sebuah proses. Ada juga system calls yang dipanggil ketika kita ingin meminta dan merubah atribut dari suatu proses.

    MS-DOS adalah contoh dari sistem single-tasking. MS-DOS menggunakan metode yang sederhana dalam menjalankan program dan tidak menciptakan proses baru. Program di-load ke dalam memori, kemudian program dijalankan.

    Eksekusi MS-Dos

    Sumber: Silberschatz,et.al, Operating System Concepts, 6th ed, .2003, New York:John Wiley & Son.Inc , halaman 68

    Barkeley Unix adalah contoh dari sistem multi-tasking. Command interpereter masih tetap bisa dijalankan ketika program lain dieksekusi.

    Multi program pada Unix

    Sumber: Silberschatz,et.al, Operating System Concepts, 6th ed, .2003, New York:John Wiley & Son.Inc , halaman 69

  2. Manajemen Berkas

    System calls yang berhubungan dengan berkas sangat diperlukan. Seperti ketika kita ingin membuat atau menghapus suatu berkas. Atau ketika ingin membuka atau menutup suatu berkas yang telah ada, membaca berkas tersebut, dan menulis berkas itu.System calls juga diperlukan ketika kita ingin mengetahui atribut dari suatu berkas atau ketika kita juga ingin merubah atribut tersebut. Yang termasuk atribut berkas adalah nama berkas, jenis berkas, dan lain-lain

    Ada juga system calls yang menyediakan mekanisme lain yang berhubungan dengan direktori atau sistim berkas secara keseluruhan. Jadi bukan hanya berhubungan dengan satu spesifik berkas. Contohnya membuat atau menghapus suatu direktori, dan lain-lain

  3. Manajemen Peranti

    Program yang sedang dijalankan kadang kala memerlukan tambahan sumber daya. Jika banyak pengguna yang menggunakan sistem dan jika diperlukan tambahan sumber daya maka harus meminta peranti terlebih dahulu. Dan setelah selesai penggunakannnya harus dilepaskan kembali. Ketika sebuah peranti telah diminta dan dialokasikan maka peranti tersebut bisa dibaca, ditulis, atau direposisi.

  4. Informasi Maintenance

    Beberapa system calls disediakan untuk membantu pertukaran informasi antara pengguna dan sistem operasi. Contohnya system calls untuk meminta dan mengatur waktu dan tanggal. Atau meminta informasi tentang sistem itu sendiri, seperti jumlah pengguna, jumlah memori dan disk yang masih bisa digunakan, dan lain-lain. Ada juga system calls untuk meminta informasi tentang proses yang disimpan oleh sistem dan system calls untuk merubah ( reset ) informasi tersebut.

  5. Komunikasi

    Dua model komunikasi

    Mekanisme komunikasi

    Sumber: Silberschatz,et.al, Operating System Concepts,6th e, .2003, New York:John Wiley & Son.Inc, halaman 72

    Dalam message-passing, sebelum komunikasi dapat dilakukan harus dibangun dulu sebuah koneksi.Untuk itu diperlukan suatu system calls dalam pengaturan koneksi tersebut, baik dalam menghubungkan koneksi tersebut maupun dalam memutuskan koneksi tersebut ketika komunikasi sudah selesai dilakukan. Juga diperlukan suatu system calls untuk membaca dan menulis pesan( message ) agar pertukaran informasi dapat dilakukan.


Struktur Sistem

Sebuah sistem yang besar dan kompleks seperti sistem operasi modern harus diatur dengan cara membagi task kedalam komponen-komponen kecil agar dapat berfungsi dengan baik dan mudah dimodifikasi. Pada bab ini, kita akan membahas cara komponen-komponen ini dihubungkan satu sama lain. Menurut Avi Silberschatz, Peter Galvin, dan Greg Gagne, ada tiga cara yaitu:

Sedangkan menurut William Stallings, kita bisa memandang sistem sebagai seperangkat lapisan. Tiap lapisan manampilkan bagian fungsi yang dibutuhkan oleh sistem operasi. Bagian yang terletak pada lapisan yang lebih rendah akan menmpilkan fungsi yang lebih primitif dan menyimpan detail fungsi tersebut.


Pendekatan Terlapis

Sistem operasi dibagi menjadi sejumlah lapisan yang masing-masing dibangun diatas lapisan yang lebih rendah. Lapisan yang lebih rendah menyediakan layanan untuk lapisan yang lebih tinggi. Lapisan yang paling bawah adalah perangkat keras, dan yang paling tinggi adalah user-interface.

Lapisan pada Sistem Operasi

Sumber: Silberschatz,et.al, Operating System Concepts,6th e, .2003, New York:John Wiley & Son.Inc, halaman 77

Sebuah lapisan adalah implementasi dari objek abstrak yang merupakan enkapsulasi dari data dan operasi yang bisa memanipulasi data tersebut. Keuntungan utama dengan sistem ini adalah modularitas. Pendekatan ini mempermudah debug dan verifikasi sistem. Lapisan pertama bisa di debug tanpa mengganggu sistem yang lain karena hanya menggunakan perangkat keras dasar untuk implementasi fungsinya. Bila terjadi error saat debugging sejumlah lapisan, error pasti pada lapisan yang baru saja di debug, karena lapisan dibawahnya sudah di debug.

Sedangkan menurut Tanenbaum dan Woodhull, sistem terlapis terdiri dari enam lapisan, yaitu :

Menurut Stallings, model tingkatan sistem operasi yang mengaplikasikan prinsip ini dapat dilihat pada tabel berikut, yang terdiri dari level-level dibawah ini :

Tabel Level pada Sistem Operasi

Sumber: Stallings, Operating Systems, 4th e, 2001, Prentice Hall, halaman 69.

Empat level pertama bukan bagian sistem operasi tetapi bagian perangkat keras. Meskipun demikian beberapa elemen sistem operasi mulai tampil pada level-level ini, seperti rutin penanganan interupsi Pada level 5, kita mulai masuk kebagian sistem operasi dan konsepnya berhubungan dengan multi-programming.

Sampai point ini, sistem operasi mengatasi sumber daya dari prosesor tunggal. Mulai level 8, sistem operasi mengatasi objek eksternal seperti peranti bagian luar, jaringan, dan sisipan komputer kepada jaringan.

Dari ketiga sumber diatas dapat kita simpulkan bahwa lapisan sistem operasi secara umum terdiri atas 4 bagian, yaitu:

  1. Perangkat keras

    lebih berhubungan kepada perancang sistem. Lapisan ini mencakup lapisan 0 dan 1 menurut Tanenbaum, dan level 1 sampai dengan level 4 menurut Stallings.

  2. Sistem operasi

    lebih berhubungan kepada programmer. Lapisan ini mencakup lapisan 2 menurut Tanenbaum, dan level 5 sampai dengan level 7 menurut Stallings.

  3. Kelengkapan

    lebih berhubungan kepada programmer. Lapisan ini mencakup lapisan 3 menurut Tanenbaum, dan level 8 sampai dengan level 11 menurut Stallings.

  4. Program aplikasi

    lebih berhubungan kepada pengguna aplikasi komputer. Lapisan ini mencakup lapisan 4 dan lapisan 5 menurut Tanebaum, dan level 12 dan level 13 menurut Stallings.

Lapisan Sistem Operasi secara umum

Sumber: Stallings, Operating Systems, 4th e, 2001, Prentice Hall, halaman 46.

Salah satu kesulitan besar dalam sistem terlapis disebabkan karena sebuah lapisan hanya bisa menggunakan lapisan-lapisan dibawahnya, misalnya : backing-store driver, normalnya diatas penjadwal CPU sedangkan pada sistem yang besar, penjadwal CPU punya informasi tentang proses yang aktif yang ada di memori. Oleh karena itu, info ini harus dimasukkan dan dikeluarkan dari memori, sehingga membutuhkan backing-store driver dibawah penjadwal CPU. Kesulitan lainnya adalah paling tidak efisien dibandingkan tipe lain. Ketika pengguna mengeksekusi I/O , akan mengeksekusi lapisan I/O, lapisan manajemen memori, yang memanggil lapisan penjadwal CPU


Mesin Virtual, Desain Sistem dan Implementasinya, dan System Generation

Mesin Virtual

Pada dasarnya, sistem komputer dibangun atas lapisan-lapisan. Perangkat keras adalah lapisan terendah. Kernel yang berada di lapisan atasnya menggunakan instruksi perangkat keras untuk menciptakan seperangkat system calls yang dapat digunakan oleh komponen-komponen lain yang berada pada level di atasnya. Sistem program pada level di atasnya dapat menggunakan system call dan perangkat keras seolah-olah mereka berada pada level yang sama.

Meski sistem program berada di level tertinggi, program aplikasi bisa melihat segala sesuatu di bawahnya (pada tingkatan) seakan mereka adalah bagian dari mesin. Pendekatan dengan lapisan-lapisan inilah yang diambil sebagai kesimpulan logis pada konsep mesin virtual atau virtual machine(VM). Pendekatan VM menyediakan sebuah antarmuka yang identik dengan underlying bare hardware. VM dibuat dengan pembagian sumber daya oleh komputer fisik. Perangkat lunak mesin virtual membutuhkan ruang pada disk untuk menyediakan memori virtual dan spooling sehingga perlu ada disk virtual.

Meski sangat berguna, VM sulit untuk diimplementasikan. Banyak hal yang dibutuhkan untuk menyediakan duplikat yang tepat dari underlying machine. VM dapat dieksekusi pada only user mode sehingga kita harus mempunyai virtual user mode sekaligus virtual memory mode yang keduanya berjalan di physical user mode. Ketika instruksi yang hanya membutuhkan virtual user mode dijalankan, ia akan mengubah isi register yang berefek pada virtual monitor mode sehingga dapat memulai ulang VM tersebut. Sebuah instruksi I/O yang membutuh waktu 100ms, dengan menggunakan VM bisa dieksekusi lebih cepat( karena spooling) atau lebih lambat(karena interpreter). Terlebih lagi, CPU menjadi multiprogrammed di antara banyak VM. Jika setiap user diberi 1 VM, dia akan bebas menjalankan sistem operasi(kernel) yang diinginkan pada VM tersebut.

Selain kekurangan yang telah disebutkan diatas, jelas VM memiliki kelebihan-kelebihan, yaitu: Keamanan yang terjamin karena VM mempunyai perlindungan lengkap pada berbagai sistem sumber daya, tidak ada pembagian resources secara langsung . Pembagian disk mini dan jaringan diimplementasikan dalam perangkat lunak. Sistem VM adalah kendaraan yang sempurna untuk penelitian dan pengembangan Sistem Operasi. Dengan VM, perubahan satu bagian dari mesin dijamin tidak akan mengubah komponen lainnya.


Desain Sistem dan Implementasinya

Desain sistem memiliki masalah dalam menentukan tujuan dan spesifikasi sistem. Pada level paling tinggi, desain sistem akan dipengaruhi oleh pilihan perangkat keras dan jenis sistem. Kebutuhannya akan lebih sulit untuk dispesifikasikan. Kebutuhan terdiri dari target pengguna dan target sistem. Pengguna menginginkan sistem yang nyaman digunakan, mudah dipelajari, dapat dipercaya, aman, dan cepat. Namun itu semua tidaklah signifikan untuk desain sistem. Orang yang mendesain ingin sistem yang mudah didesain, diimplementasikan, fleksibel, dapat dipercaya, bebas eror, efisien. Sampai saat ini belum ada solusi yang pas untuk menentukan kebutuhan dari system operasi. Lain lingkungan, lain pula kebutuhannya.


Bab 3. Proses dan Penjadwalan


Bab 4. Sinkronisasi dan Deadlock


Bab 5. Managemen Memori


Bab 6. Sistem Berkas


Bab 7. I/O


Bab 8. Studi Kasus: GNU/Linux


Daftar Pustaka

[Silberschatz2000] Avi Silberschatz, Peter Galvin, dan Grag Gagne, 2000, Applied Operating Systems: First Edition, Edisi Pertama, John Wiley & Sons.

[introGramacomp] Team Gramacomp, 1996, Introduksi Komputer, Edisi Pertama, Gramedia.

[KennethRosen1999] Kenneth H. Rosen, 1999, Discrete Mathematics and Its Application, McGraw Hill.

[pok1] Carl V. Hamacher dan dkk, 2002, Computer Organization: Fifth Edition, Edisi Kelima, McGraw-Hill.

[pok2] David Patterson dan John Hennessy, 1991, Computer Organization & Design: The Hardware/Software Interface, Edisi Pertama, Morgan Kaufmann Publishers, Inc..

[webopedia] Team Jupitermedia, 2003, HTML: Webopedia, 2003, Jupitermedia Corporation.

[msdnoct2003] Press Microsoft, 2003, MSDN Library: , October 2003, Microsoft Press.

[Stallings2001] William Stallings, 2001, Operating Systems, Prentice Hall.

[Tanenbaum1992] Andrew S. Tanenbaum, 1992, Modern Operating Systems, Prentice-Hall Inc..


Lampiran A. GNU Free Documentation License

Version 1.1, March 2000

Copyright 2000 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.


APPLICABILITY AND DEFINITIONS

This License applies to any manual or other work that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you".

A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.

A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (For example, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.

The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License.

The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License.

A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, whose contents can be viewed and edited directly and straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup has been designed to thwart or discourage subsequent modification by readers is not Transparent. A copy that is not "Transparent" is called "Opaque".

Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML designed for human modification. Opaque formats include PostScript, PDF, proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML produced by some word processors for output purposes only.

The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.


COPYING IN QUANTITY

If you publish printed copies of the Document numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.

If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.

If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a publicly-accessible computer-network location containing a complete Transparent copy of the Document, free of added material, which the general network-using public has access to download anonymously at no charge using public-standard network protocols. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.

It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.


MODIFICATIONS

You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:

  1. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.

  2. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has less than five).

  3. State on the Title page the name of the publisher of the Modified Version, as the publisher.

  4. Preserve all the copyright notices of the Document.

  5. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.

  6. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.

  7. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice.

  8. Include an unaltered copy of this License.

  9. Preserve the section entitled "History", and its title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.

  10. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.

  11. In any section entitled "Acknowledgements" or "Dedications", preserve the section's title, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.

  12. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.

  13. Delete any section entitled "Endorsements". Such a section may not be included in the Modified Version.

  14. Do not retitle any existing section as "Endorsements" or to conflict in title with any Invariant Section.

If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.

You may add a section entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties–for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.

You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.

The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.


FUTURE REVISIONS OF THIS LICENSE

The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.

Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.


Indeks

Berkas , Manajemen Berkas
Command-Interpreter System
shell , Command-Interpreter System
direktori , Manajemen Berkas
I/O , Manajemen Sistem I/O
Manajemen
Berkas , Manajemen Berkas
Memori
Utama, Manajemen Memori Utama
Penyimpanan Sekunder, Manajemen Penyimpanan Sekunder
Proses , Manajemen Proses
Sistem
I/O , Manajemen Sistem I/O
Memori , Manajemen Memori Utama
Proses , Manajemen Proses
Sistem
Proteksi, Sistem Proteksi
Alamat
logis, Pendekatan Terlapis
virtual, Pendekatan Terlapis
Antarmuka
standar, Pendekatan Terlapis
Antarmuka/primary>, Struktur Sederhana
bahasa
pemrograman, System Calls
rakitan, System Calls
berkas, System Calls, System Program
Blok, Pendekatan Terlapis
command interpreter, System Calls
console, Pendekatan Terlapis
data, Manajemen Memori Utama, Manajemen Penyimpanan Sekunder
Debug, Pendekatan Terlapis
Device
driver, Struktur Sederhana
disk, Manajemen Penyimpanan Sekunder
drum, Pendekatan Terlapis
eksekusi, Layanan Sistem Operasi
error, Layanan Sistem Operasi
I/O, Layanan Sistem Operasi
Identifier
Eksternal, Pendekatan Terlapis
Internal, Pendekatan Terlapis
informasi, System Calls
Interface
user, Pendekatan Terlapis
Interupsi
rutin penanganan, Pendekatan Terlapis
Jaringan , Jaringan
kebijakan, Mekanisme dan Kebijakan
Kernel, Struktur Sederhana, Mikrokernel
Kompilasi, Mesin Virtual Java
komputasi, Layanan Sistem Operasi
komunikasi, Jaringan, Layanan Sistem Operasi, System Calls, System Program, Pendekatan Terlapis, Mikrokernel
kontrol proses, System Calls
Lapisan, Struktur Sistem
I/O, Pendekatan Terlapis
manajemen memori, Pendekatan Terlapis
Penjadwal CPU, Pendekatan Terlapis
Layanan, Mikrokernel
layanan sistim operasi, Layanan Sistem Operasi
Level, Pendekatan Terlapis
loading, System Program
mekanisme, Mekanisme dan Kebijakan
Memori, Manajemen Penyimpanan Sekunder
mesin virtual
Java, Mesin Virtual Java
perangkat lunak, Mesin Virtual
Message passing, Mikrokernel
message-passing, Layanan Sistem Operasi, System Calls
Mikrokernel, Struktur Sistem, Mikrokernel
multi-tasking, System Calls
Penyimpanan Sekunder , Manajemen Penyimpanan Sekunder, Pendekatan Terlapis
Perangkat
keras, Pendekatan Terlapis
peranti, Layanan Sistem Operasi, System Calls
Proses
Sinkronisasi, Pendekatan Terlapis
proteksi, Layanan Sistem Operasi
share-memory, Layanan Sistem Operasi
shared-memory, System Calls
single-tasking, System Calls
sistem
berkas, Layanan Sistem Operasi
desain, Desain Sistem dan Implementasinya
implementasi, Implementasi
operasi, Layanan Sistem Operasi
Terdistribusi, Jaringan
status, System Program
sumber daya, Layanan Sistem Operasi
System
calls, System Calls, Struktur Sederhana
program, System Program
system generation, System Generation