gnu/linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/kuliah/sistem... · distribusi...

39
Studi Kasus: GNU/Linux

Upload: trinhdiep

Post on 30-Sep-2018

242 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Studi Kasus:

GNU/Linux

Page 2: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Perangkat Lunak Bebas

Konsep bebasv Analogi “kebebasan berbicara” vs “bir gratis”, konsep bebas

lebih didasarkan pada kebebasan mengembangkan, mendistribusikan daripada sekedar “gratis”

Page 3: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Public Domain

vPerangkat lunak tanpa hak cipta pada badan ataupihak tertentu

Page 4: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

OpenSource

v Bebas untuk menggunakan, menyalin, mendistribusikan, modifikasi, menjual, dan seterusnya

v Source kode mesti tersedia

Page 5: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Copyleft

v Tidak diperkenankan mengubah aturan awalpendistribusiannya sebagai opensource

Page 6: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

GPL

vKumpulan aturan untuk membuat sebuah distribusijadi copyleft

Page 7: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

GNU

vDidirikan untuk menghasilkan distribusi yang miripUnix tapi sepenuhnya bebas

Page 8: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Software Semi Bebas

vBebas digunakan, disalin, distribusi dan modifikasi

vHanya dapat digunakan untuk tujuan non profit

Page 9: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Software berpemilik

vAda keterbatasan dalam memodifikasi, mendistribusi, ataupun menggunakan

Page 10: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Freeware

vBukan opensource

vBebas untuk digunakan, didistribusikan tapi tidakuntuk dimodifikasi

Page 11: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Shareware

vBukan opensource

vBebas diditribusikan, tetapi pemakai harus bayar fee(biaya)

vSource code tidak tersedia

Page 12: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Software Komersial

vUntuk profit

Page 13: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Sejarah dan Rancangan DasarGNU/Linux

SejarahvMerupakan sistem operasi mirip UNIX

v Pada awalnya diciptakan oleh Linus Benedict Torvalds padatahun 1991

v Dalam perkembangannya, Linux dewasa ini merupakan hasilkerjasama dari berbagai pihak

Page 14: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Kernel Linux

v Versi 0.01 (Mei 1991), hanya dapat berjalan pada prosessorIntel kompatibel-80386 dan pada hardware PC, mempunyaidevice-driver support yang terbatas

v Linux 1.0 (Maret 1994)

v Versi 1.2 (Maret 1995)

v Versi 2.0 (Juni 1996)

Page 15: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Sistem Linux

vMenggunakan tool yang dikembangkan sebagai bagian dariBerkeley”s BSD operating system, MIT”s Window System, dan Free Software Foundation”s GNU project

vMain system libraries pada awalnya diciptakan oleh proyekGNU dan kemudian dikembangkan oleh komunitas Linux

Page 16: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Distribusi Linux

v Standar, himpunan paket yang belum dikompililasi ataudistribusi termasuk sistem dasar Linux, sistem instalasi danmanagement utilities, dan paket siap install dari tool UNIX

v Distribusi pertama mengatur paket-paket dengan memberikancara bagaimana meletakkan semua file ke dalam tempat yang tepat.; distribusi modern berisi manajemen paket lanjutan

v Distribusi awal yang ada adalah SLS dan Slackware, sedangkan Red Hat distribusi yang popular dari sumber yang komersial, dan Debian merupakan distribusi yang popular darisumber non komersial

Page 17: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Lisensi Linux

v Kernel Linux didistribusikan di bawah lisensi GNU General Public License (GPL) di bawah naungan the Free Software Foundation

v Linux bukan public-domain software

v Linux adalah free-software

v Software yang dikeluarkan oleh GPL tidak dapatdidistribusikan kembali sebagai produk binary-only

Page 18: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Rancangan Dasar GNU/Linux

v Linux adalah sebuah sistem yang multiuser, multitasking dengan tools kompatibel UNIX yang lengkap

v Sistem file-nya mengikuti semantic UNIX tradisional danmengimplementasikan secara penuh standar model network UNIX

v Tujuan utama adalah kecepatan, efisiensi, dan standarisasi

Page 19: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Komponen Sistem Linux (1)

v Seperti kebanyakan implementasi dari UNIX, Linux terdiridari tiga bagian utama kode.

v Perbedaan yang paling besar adalah antara Kernel dankomponen-komponen lainnya

v Kernel bertanggungjawab untuk menjalankan sistem operasi

Page 20: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Komponen Sistem Linux (2)

v Librari sistem merupakan himpunan standar dari fungsi-fungsimelalui mana aplikasi-aplikasi berinteraksi dan yang mengimplementasikan sebagian besar dari fungsi-fungsisistem operasi yang tidak membutuhkan hak-hak dari kodekernel

v Perlengkapan sistem melakukan tugas-tugas manejementertentu secara individual

Page 21: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Manajemen proses

Pendahuluanv Setiap aplikasi yang dijalankan di Linux mempunyai pengenal

yang disebut sebagai process identification number (PID). PID disimpan dalam 32 bit dengan angka berkisar dari 0-32767 untuk menjamin kompatibilitas dengan UNIX. Dari nomorPID inilah Linux dapat mengawasi dan mengatur proses-proses yang terjadi didalam system. Proses yang dijalankanataupun yang baru dibuat mempunyai struktur data yang disimpan di task_struct

Page 22: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Proses dan thread

vProses dan thread di dalam Linux merupakan sesuatuyang dapat dikatakan sama. Perbedaannya hanyaterletak dalam proses pembuatannya. Proses dibuatdengan fork system call sedangkan thread dibuatdengan clone system call

Page 23: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Penjadualan

v Penjadual adalah suatu pekerjaan yang dilakukan untukmengalokasikan CPU Time untuk tasks yang berbeda-beda

à Task dari proses yang sedang jalanà Task dari device driver

Page 24: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Sinkronisasi kernel

vNormal kernel code

vProcessor’s interrupt control hardware

Page 25: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Penjadualan proses

vAlgoritmaà time-sharing algorithmà real-time algorithm

Page 26: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Symmetric multiprocessing

vSMP di Kernel Linux sebelum 2.0

vSMP di Kernel linux 2.0

vSMP di Kernel linux setelah 2.0

Page 27: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Manajemen Memori

vMemori manajemen pada Linux mempunyai dua komponen:à Berurusan dengan mengalokasikan dan membebaskan

pages, kumpulan pages, dan kumpulan blok kecil dari memori

à Berurusan dengan pengaturan memori virtual, dimana memori dipetakan kedalam alamat ruang dari proses yang berjalan

Page 28: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Manajemen memori fisik

v Tabel Kernel pages memetakan sebanyak mungkin memorifisik kedalam suatu range alamat. Alamat fisik yang ditempatioleh kode kernel dan data telah dipesan dan tidak akan pernahdialokasikan untuk tujuan lain

v Penggunaan dan manajemen dari memori fisik diatur olehZone allocator

v Allocator menggunakan algoritma buddy-heap untuk menjagadan melihat memori fisik yang ada

v Alokasi memori di kernel Linux dapat terjadi secara static (driver memesan suatu area tertentu di memori pada saat boot sistem) atau dinamik (dengan menggunakan zone allocator)

Page 29: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Memori Virtual (1)vMemori Virtual menjaga agar alamat space terbaca dalam

setiap proses dengan cara menciptakan pages dari memorivirtual sesuai permintaan, dan mengatur pemakaian dari pages tersebut

vManajer Memori Virtual menjaga dua sudut pandang yang berbeda dari alamat space sebuah proses:àSudut pandang logika menggambarkan instruksi berkaitan

dengan tatanan dari alamat spaceàSudut pandang fisik dari tiap alamat space, yang tersimpan

dalam table hardware pages untuk proses tersebut

Page 30: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Memori Virtual (2)

• Kernel Linux menjaga satu daerah tetap yang bergantung dari arsitektur dari alamat virtual space yang digunakan oleh tiap proses untukpenggunaannya sendiri

Page 31: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Load dan Eksekusi Program

v Linux membuat sebuah tabel fungsi untuk meload program, memberikan kesempatan pada tiap fungsi untuk mencobameload file yang akan berjalan ketika sebuah system call exec dipanggil

v Pertama-tama page file binary ditempatkan pada virtual memori. Hanya ketika program tersebut mencoba mengaksespage yang diberikan dan terjadi page fault, maka page tersebutakan diload ke memori fisik

Page 32: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Linking Statis dan Dinamis

v Linking statis: Sebuah program yang semua library yang digunakan ditaruh secara langsung dalam kode binary program. Kelemahannya adalah tiap program yang dihasilkanharus mengandung kopi system library yang sama

v Linking dinamis lebih efisien dalam hal memori fisik danruang disk, karena hanya memerlukan satu sistem librari untuktiap program yang dihasilkan

Page 33: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Sistem Berkas Linux

v Sistem berkas Linux menggunakan layer abstraksi VPS (Virtual File Systems). Terdiri dari dua komponen :àSekumpulan definisi yang mendefinisikan seperti apa

sebuah objek berkas harus terlihatàSebuah layer software untuk memanipulasi objek tersebut

v Tiga tipe objek yang didefinisikan oleh VFSàInode-objectàFile-objectàFile-system-object

Page 34: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Berbagai macam Sistem Berkas Linux

v EXT2EXT2 mendefinisikan topologi file sistem dengan memberikan arti bahwasetiap file pada sistem diasosiasiakan dengan struktur data inode.

v ProcTidak menyimpan data, namun hanya berisi komputasi atas kebutuhanberdasarkan permintaan I/O pengguna.

v EXT3EXT3 adalah peningkatan dari EXT2 file sistem. Kelebihannya antara lain dalam kemudahan pengecekan data setelah ‘crash’, integritas data, kecepatan throughput, dan migrasi.

v Reiserv X

Page 35: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Bentuk Sistem berkas Linux lainnyav Steganographic File System

Menyediakan sedikit perlindungan terhadap instrumen legal ataupun illegal yang mengharuskan pemilik data untukmemberikan kunci deskripsi bagi data yang disimpan sekalikehadiran data terenskripsi dari komputer yang diinspeksiterbangun.

v Transparent Criptographic File SystemAdalah system berkas terdistribusi yang kriptografik, memungkinkan pengguna untuk mengakses berkas-berkassensitif secara remote dengan aman.

vWeb File SystemAdalah sistem berkas linux yang baru yang menyediakansistem berkas seperti antarmuka untuk www. Sistem berkasini menyediakan caching remote document dan dapatmemproses multiple outstanding request secara konkuren

Page 36: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

I/O Kernel Linux

v I/O Linux ini berhubungan dengan bagaimana kernel Linux mengatur device fisik di sistem

v Linux membagi device ini ke tiga kelasàdevice karakteràdevice blokàdevice jaringan

Page 37: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Device Karakter

v Device karakter, device paling sederhana dari Linux, diaksessebagai berkas

v Aplikasi menggunakan system calls standar untukmembukanya, membacanya dan menulisnya dan menutupnyapersis seolah devices adalah berkas

v Digunakan Line discipline sebagai interpreter bagi informasidari device terminal

Page 38: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Device Blokv Device ini pun diakses seperti berkas.

vMekanisme untuk menyediakan perangkat operasi berkas yang benar bagi berkas khusus blok yang terbuka sama sepertidevices karakter.

v Untuk kecepatan aksesnya digunakan dua komponenàBlock Buffer Cache

Sebagai pool bagi buffers untuk I/O aktif dan sebuahcache untuk completed I/O

àThe Request ManagerLayer software yang mengatur isi buffer baca/tulis kedandari block-device driver.

Page 39: GNU/Linux - ftp.gunadarma.ac.idftp.gunadarma.ac.id/linux/docs/v06/Kuliah/Sistem... · Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi termasuk sistemdasar

Device Jaringan

v Device jaringan merupakan sebuah entity yang mengirimkandan menerima paket-paket data

v Biasanya ia merupakan device fisik seperti kartu ethernet