gnu/linux - ftp.· distribusi linux vstandar, himpunanpaket yang belum dikompililasi atau distribusi

Download GNU/Linux - ftp.· Distribusi Linux vStandar, himpunanpaket yang belum dikompililasi atau distribusi

Post on 30-Sep-2018

214 views

Category:

Documents

0 download

Embed Size (px)

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 dariBerkeleys BSD operating system, MITs Window System, dan Free Software Foundations 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

    vProcessors 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 spaceSudut 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 terlihatSebuah layer software untuk memanipulasi objek tersebut

    v Tiga tipe objek yang didefinisikan oleh VFSInode-objectFile-objectFile-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 kelasdevice karakterdevice blokdevice jaringan

  • Device Karakter

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

    v Aplikasi menggunakan system calls standar untukme