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

Post on 30-Sep-2018

242 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Studi Kasus:

GNU/Linux

Perangkat Lunak Bebas

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

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

Public Domain

vPerangkat lunak tanpa hak cipta pada badan ataupihak tertentu

OpenSource

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

v Source kode mesti tersedia

Copyleft

v Tidak diperkenankan mengubah aturan awalpendistribusiannya sebagai opensource

GPL

vKumpulan aturan untuk membuat sebuah distribusijadi copyleft

GNU

vDidirikan untuk menghasilkan distribusi yang miripUnix tapi sepenuhnya bebas

Software Semi Bebas

vBebas digunakan, disalin, distribusi dan modifikasi

vHanya dapat digunakan untuk tujuan non profit

Software berpemilik

vAda keterbatasan dalam memodifikasi, mendistribusi, ataupun menggunakan

Freeware

vBukan opensource

vBebas untuk digunakan, didistribusikan tapi tidakuntuk dimodifikasi

Shareware

vBukan opensource

vBebas diditribusikan, tetapi pemakai harus bayar fee(biaya)

vSource code tidak tersedia

Software Komersial

vUntuk profit

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

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)

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

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

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

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

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

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

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

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

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

Sinkronisasi kernel

vNormal kernel code

vProcessor’s interrupt control hardware

Penjadualan proses

vAlgoritmaà time-sharing algorithmà real-time algorithm

Symmetric multiprocessing

vSMP di Kernel Linux sebelum 2.0

vSMP di Kernel linux 2.0

vSMP di Kernel linux setelah 2.0

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

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)

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

Memori Virtual (2)

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

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

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

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

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

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

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

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

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.

Device Jaringan

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

v Biasanya ia merupakan device fisik seperti kartu ethernet

top related