MATERI S.O
Pertemuan 1-2
Perkembangan
Sistem Operasi Closed Source
Setiap perangkat komputer memiliki platform atau sistem operasi
yang berbeda-beda, fungsi dari sistem operasi seendiri adalah sebagai perangkat
lunak yang bertugas untuk menjembatani antara user manusia dengan perangkat
keras komputer, dimana sistem operasi menjadi penterjemah agar user dapar
melakukan konfigurasi kepada hardware yang ada. sistem operasi pada masa lalu
hanyalah berbasis text, dimana user mempunyai keterbatasan dalam menkonfigurasi
suatu hardware, sistem operasi masa lalu juga mempunyai keterbatasan dalam
menampilkan suatu grafik interface, namun setelah mulai dikembangkan perangkat
keras yang mendukung aktifitas grafik barulah mulai deikembangkan sistem
operasi yang memilik kemampuan berbasis GUI atau graphic user interface.Berikut
ini adalah rangkaian dari sejarah sistem operasi:
·
1980 * QDOS : Tim Paterson dari Seattle Computer menulis QDOS yang dibuat dari OS terkenal pada masa itu, CP/M. QDOS (Quick and Dirty Operating System) dipasarkan oleh Seatle Computer dengan nama 86-DOS karena untuk prosesor Intel 8086. * Microsoft : Bill Gates dari Microsoft membeli lisensi QDOS dan menjualnya ke berbagai perusahaan komputer.
1980 * QDOS : Tim Paterson dari Seattle Computer menulis QDOS yang dibuat dari OS terkenal pada masa itu, CP/M. QDOS (Quick and Dirty Operating System) dipasarkan oleh Seatle Computer dengan nama 86-DOS karena untuk prosesor Intel 8086. * Microsoft : Bill Gates dari Microsoft membeli lisensi QDOS dan menjualnya ke berbagai perusahaan komputer.
·
1981 * PCDOS : IBM meluncurkan PC
DOS yang dibeli dari Microsoft untuk komputernya yang berbasis prosesor Intel
8086. * MSDOS : Microsoft menggunakan nama MS DOS
untuk OS ini jika dijual oleh perusahaan diluar IBM.
·
1983 * MS DOS 2.0 : Versi 2.0 dari
MS DOS diluncurkan pada komputer PC XT.
·
1984 * System 1.0 : Apple
meluncurkan Macintosh dengan OS yang diturunkan dari BSD UNIX. System 1.0
merupakan sistem operasi pertama yang telah berbasis grafis dan menggunakan
mouse. * MS DOS 3.0 : Microsoft meluncurkan MS DOS
3.0 untuk PC AT yang menggunakan chip Intel 80286 dan yang mulai mendukung
penggunaan hard disk lebih dari 10 MB. * MS DOS 3.1 : Microsoft
meluncurkan MSDOS 3.1 yang memberikan dukungan untuk jaringan.
·
1985 * MS Windows 1.0 : Microsoft
memperkenalkan MSWindows, sistem operasi yang telah menyediakan lingkungan
berbasis grafis (GUI) dan kemampuan multitasking. Sayangnya sistem operasi ini
sangat buruk performanya dan tidak mampu menyamai kesuksesan Apple. * Novell Netware : Novell meluncurkan sistem operasi berbasis
jaringan Netware 86 yang dibuat untuk prosesor Intel 8086.
·
1986 * MS DOS 3.2 : Microsoft
meluncurkan MS DOS 3.2 yang menambahkan dukungan untuk floppy 3.5 inch 720 KB.
·
1987 * OS/2 : IBM memperkenalkan
OS/2 yang telah berbasis grafis, sebagai calon pengganti IBM PC DOS. * MS DOS 3.3 : Microsoft meluncurkan MS DOS 3.3 yang merupakan
versi paling populer dari MS DOS. * Windows 2.0 : Windows versi
2.0 diperkenalkan. * MINIX : Andrew S. Tanenbaum
mengembangkan Minix, sistem operasi berbasis Unix yang ditujukan untuk
pendidikan. MINIX nantinya menginspirasi pembuatan Linux.
·
1988 * MS DOS 4.0 : Microsoft
mengeluarkan MSDOS 4.0 dengan suasana grafis. * WWW : Proposal World Wide Web (WWW) oleh Tim BernersLee.
·
1989 * NetWare/386 (juga dikenal
sebagai versi 3) diluncurkan oleh Novell untuk prosesor Intel 80386.
·
1990 * Perpisahan : Dua perusahaan
raksasa berpisah, IBM berjalan dengan OS/2 dan Microsoft berkonsentrasi pada
Windows. * Windows 3.0 : Microsoft meluncurkan Windows
versi 3.0 yang mendapat sambutan cukup baik. * MSOffice : Microsoft membundel Word, Excel, dan PowerPoint
untuk menyingkirkan saingannya seperti Lotus 123, Wordstar, Word Perfect dan
Quattro. * DR DOS : Digital Research memperkenalkan DR
DOS 5.0.
·
1991 * Linux 0.01 : Mahasiswa
Helsinki bernama Linus Torvalds mengembangkan OS berbasis Unix dari sistem
operasi Minix yang diberi nama Linux. * MS DOS 5.0 : Microsoft
meluncurkan MSDOS 5.0 dengan penambahan fasilitas full-screen editor,
undelete, unformat dan Qbasic.
·
1992 * Windows 3.1 : Microsoft
meluncurkan Windows 3.1 dan kemudian Windows for Workgroups 3.11 di tahun
berikutnya. * 386 BSD : OS berbasis Open Source turunan
dari BSD Unix didistribusikan oleh Bill Jolitz setelah meninggalkan Berkeley
Software Design, Inc (BSDI). 386 BSD nantinya menjadi induk dari proyek Open
Source BSD lainnya, seperti NetBSD, FreeBSD, dan OpenBSD. * Distro Linux : Linux didistribusikan dalam format distro yang
merupakan gabungan dari OS plus program aplikasi. Distro pertama Linux dikenal
sebagai SLS (Softlanding Linux System).
·
1993 * Windows NT : Microsoft
meluncurkan Windows NT, OS pertama berbasis grafis tanpa
DOS didalamnya yang direncanakan untuk server
jaringan. * Web Browser : NCSA memperkenalkan rilis
pertama Mosaic, browser web untuk Internet. * MS DOS
6.0 : Microsoft memperkenalkan MSDOS 6.0 Upgrade, yang mencakup program
kompresi harddisk DoubleSpace. * Slackware : Patrick
Volkerding mendistribusikan Slackware Linux yang menjadi distro populer pertama
di kalangan pengguna Linux. * Debian : Ian Murdock dari
Free Software Foundation (FSF) membuat OS berbasis Linux dengan nama Debian. * MS DOS 6.2 : Microsoft meluncurkan MSDOS 6.2. * NetBSD : Proyek baru OS berbasis Open Source yang dikembangkan
dari 386BSD dibuat dengan menggunakan nama NetBSD. * FreeBSD : Menyusul NetBSD, satu lagi proyek yang juga
dikembangkan dari 386BSD dibuat dengan nama FreeBSD.
·
1994 * Netscape : Internet meraih
popularitas besar saat Netscape memperkenalkan Navigator sebagai browser
Internet. * MSDOS 6.22 : Microsoft meluncurkan MSDOS
6.22 dengan program kompresi bernama DriveSpace. Ini merupakan versi terakhir
dari MS DOS. * FreeDOS : Jim Hall, mahasiswa dari
Universitas WisconsinRiver Falls Development mengembangkan FreeDOS. FreeDOS
dibuat setelah Microsoft berniat menghentikan dukungannya untuk DOS dan
menggantikannya dengan Windows 95. * SuSE : OS Linux versi Jerman
dikembangkan oleh Software und System Entwicklung GmbH (SuSE) dan dibuat dari
distro Linux pertama, SLS. * Red Hat : Marc Ewing memulai
pembuatan distro Red Hat Linux.
·
1995 * Windows 95 : Microsoft
meluncurkan Windows 95 dengan lagu Start Me Up dari Rolling Stones dan terjual
lebih dari 1 juta salinan dalam waktu 4 hari.* PC DOS 7 : IBM memperkenalkan PC
DOS 7 yang terintegrasi dengan program populer pengkompres data Stacker dari Stac
Electronics. Ini merupakan versi terakhir dari IBM PC DOS.* Windows CE : Versi
pertama Windows CE diperkenalkan ke publik.* PalmOS : Palm menjadi populer
dengan PalmOS untuk PDA.* OpenBSD : Theo de Raadt pencetus NetBSD mengembangkan
OpenBSD.
·
1996 * Windows NT 4.0 : Microsoft
meluncurkan Windows NT versi 4.0
·
1997 * Mac OS : Untuk pertama
kalinya Apple memperkenalkan penggunaan nama Mac OS pada Mac OS 7.6.
·
1998 * Windows 98 : Web browser
Internet Explorer menjadi bagian penting dari Windows 98 dan berhasil
menumbangkan dominasi Netscape Navigator.* Server Linux : Linux mendapat
dukungan dari banyak perusahaan besar, seperti IBM, Sun Microsystem dan Hewlet
Packard. Server berbasis Linux mulai banyak dipergunakan menggantikan server
berbasis WindowsNT.* Google : Search Engine terbaik hadir di Internet dan
diketahui menggunakan Linux sebagai servernya. * Japan Goes Linux : TurboLinux diluncurkan di Jepang dan segera
menjadi OS favorit di Asia, khususnya di Jepang, China dan Korea.* Mandrake :
Gael Duval dari Brazil mengembangkan distro Mandrake yang diturunkan dari Red
Hat.
·
1999 * Support : Hewlett Packard
mengumumkan layanan 24/7 untuk distro Caldera, Turbo Linux, Red Hat dan SuSE.*
Corel Linux : Corel pembuat program Corel Draw, yang sebelumnya telah menyediakan
Word Perfect versi Linux, ikut membuat OS berbasis Linux dengan nama Corel
Linux dan yang nantinya beralih nama menjadi Xandros.
·
2000 * Mac OS/X : Mac OS diganti
dengan mesin berbasis BSD Unix dengan kernel yang disebut sebagai Mac OS/X.*
Windows 2000: Microsoft meluncurkan Windows 2000 sebagai penerus Windows NT.*
Windows Me : Microsoft meluncurkan Windows Me, versi terakhir dari Windows 95.*
China Goes Linux : Red Flag Linux diluncurkan dari Republik Rakyat China.*
Microsoft vs IBM : CEO Microsoft Steve Ballmer menyebut Linux sebagai kanker
dalam sebuah interview dengan Chicago SunTimes. Di lain pihak, CEO IBM Louis
Gartsner menyatakan dukungan pada Linux dengan menginvestasikan $ 1 milyar
untuk pengembangan Linux.
·
2001 * Windows XP : Microsoft
memperkenalkan Windows XP.* Lindows: Michael Robertson, pendiri MP3.com,
memulai pengembangan Lindows yang diturunkan dari Debian. Nantinya Lindows
berganti nama menjadi Linspire karena adanya tuntutan perubahan nama oleh
Microsoft.
·
2002 * Open Office : Program
perkantoran berbasis Open Source diluncurkan oleh Sun Microsystem.* OS Lokal :
OS buatan anak negeri berbasis Linux mulai bermunculan, diantaranya Trustix
Merdeka, WinBI, RimbaLinux, Komura.
·
2003 * Windows 2003 : Microsoft
meluncurkan Windows Server 2003.* Fedora : Redhat mengumumkan distro Fedora
Core sebagai penggantinya. Nantinya ada beberapa distro lokal yang dibuat
berbasiskan Fedora, seperti BlankOn 1.0 dan IGOS Nusantara.* Novell : Ximian,
perusahaan pengembang software berbasis Linux dibeli oleh Novell, begitu juga
halnya dengan SuSE yang diakuisisi oleh Novell.* LiveCD : Knoppix merupakan
distro pertama Linux yang dikembangkan dengan konsep LiveCD yang bisa
dipergunakan tanpa harus diinstal terlebih dahulu. Distro lokal yang dibuat
dari Knoppix adalah Linux Sehat dan Waroeng IGOS.
·
2004 * Ubuntu : Versi pertama Ubuntu
diluncurkan dan didistribusikan ke seluruh dunia. Ada beberapa versi distro
yang dikeluarkan, yaitu Ubuntu (berbasis Gnome), Kubuntu (berbasis KDE),
Xubuntu (berbasis XFCE), dan Edubuntu (untuk pendidikan).
·
2005 * Mandriva : Mandrake bergabung
dengan Conectiva dan berganti nama menjadi Mandriva.
·
2006 * Unbreakable Linux : Oracle
ikut membuat distro berbasis Linux yang diturunkan dari Red Hat Enterprise. * CHIPLux : Distro lokal terus bermunculan di tahun ini, bahkan
Majalah CHIP yang lebih banyak memberikan pembahasan tentang Windows juga tidak
ketinggalan membuat distro Linux dengan nama CHIPLux, yang diturunkan dari
distro lokal PC LINUX dari keluarga PCLinuxOS (varian Mandriva). CHIPLux
merupakan distro lokal pertama yang didistribusikan dalam format DVD.
·
2007 * Vista : Setelah tertunda
untuk beberapa lama, Microsoft akhirnya meluncurkan Windows Vista. Windows
Vista memperkenalkan fitur 3D Desktop dengan Aero Glass, SideBar, dan Flip
3D.Sayangnya semua keindahan ini harus dibayar mahal dengan kebutuhan
spesifikasi komputer yang sangat tinggi.
·
2008 * 3D OS : Tidak seperti halnya
Vista yang membutuhkan spesifikasi tinggi, 3D Desktop di Linux muncul dengan
spesifikasi komputer yang sangat ringan. Era hadirnya teknologi 3D Desktop di
Indonesia ditandai dengan hadirnya sistem operasi 3D OS yang dikembangkan oleh
PC LINUX.Ada beberapa versi yang disediakan, yaitu versi 3D OS untuk pengguna
umum serta versi distro warnet Linux dan game center Linux.
Pertemuan 3
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:
·
Managemen Proses.
·
Managemen Memori
Utama.
·
Managemen Secondary-Storage.
·
Managemen Sistem
I/O.
·
Managemen Berkas.
·
Sistem Proteksi.
·
Jaringan.
·
Command-Interpreter
system.
Proses adalah keadaan ketika sebuah program sedang di
eksekusi. Sebuah proses membutuhkan beberapa sumber daya untuk menyelesaikan
tugasnya. sumber daya tersebut dapat berupa CPU time, memori,
berkas-berkas, dan perangkat-perangkat I/O.
Sistem operasi bertanggung jawab atas
aktivitas-aktivitas yang berkaitan dengan managemen proses seperti:
·
Pembuatan dan
penghapusan proses pengguna dan sistem proses.
·
Menunda atau
melanjutkan proses.
·
Menyediakan
mekanisme untuk proses sinkronisasi.
·
Menyediakan
mekanisme untuk proses komunikasi.
·
Menyediakan mekanisme
untuk penanganan deadlock.
Managemen Memori
Utama
Memori utama atau lebih dikenal sebagai memori adalah
sebuah array yang besar dari word atau byte,
yang ukurannya mencapai ratusan, ribuan, atau bahkan jutaan. Setiap word atau byte mempunyai
alamat tersendiri. Memori Utama berfungsi sebagai tempat penyimpanan yang akses
datanya digunakan oleh CPU atau perangkat I/O. Memori utama termasuk tempat
penyimpanan data yang sementara (volatile), artinya data dapat hilang
begitu sistem dimatikan.
Sistem operasi bertanggung jawab atas
aktivitas-aktivitas yang berkaitan dengan managemen memori seperti:
·
Menjaga track dari
memori yang sedang digunakan dan siapa yang menggunakannya.
·
Memilih program
yang akan di-load ke memori.
·
Mengalokasikan
dan meng-dealokasikan ruang memori sesuai kebutuhan.
Managemen Secondary-Storage
Data yang disimpan dalam memori utama bersifat
sementara dan jumlahnya sangat kecil. Oleh karena itu, untuk meyimpan
keseluruhan data dan program komputer dibutuhkan secondary-storage yang
bersifat permanen dan mampu menampung banyak data. Contoh dari secondary-storage adalah harddisk,
disket, dll.
Sistem operasi bertanggung-jawab atas
aktivitas-aktivitas yang berkaitan dengan disk-management seperti: free-space
management, alokasi penyimpanan, penjadualan disk.
Managemen Sistem
I/O
Sering disebut device manager. Menyediakan
"device driver" yang umum sehingga operasi I/O dapat seragam
(membuka, membaca, menulis, menutup). Contoh: pengguna menggunakan operasi yang
sama untuk membaca berkas pada hard-disk, CD-ROM dan floppy
disk.
Komponen Sistem Operasi untuk sistem I/O:
·
Buffer: menampung
sementara data dari/ ke perangkat I/O.
·
Spooling: melakukan
penjadualan pemakaian I/O sistem supaya lebih efisien (antrian dsb.).
·
Menyediakan driver untuk
dapat melakukan operasi "rinci" untuk perangkat keras I/O tertentu.
Managemen Berkas
Berkas adalah kumpulan informasi yang berhubungan
sesuai dengan tujuan pembuat berkas tersebut. Berkas dapat mempunyai struktur
yang bersifat hirarkis (direktori, volume, dll.). Sistem operasi
bertanggung-jawab:
·
Pembuatan dan
penghapusan berkas.
·
Pembuatan dan
penghapusan direktori.
·
Mendukung
manipulasi berkas dan direktori.
·
Memetakan berkas
ke secondary storage.
·
Mem-backup berkas
ke media penyimpanan yang permanen (non-volatile).
Sistem Proteksi
Proteksi mengacu pada mekanisme untuk mengontrol akses
yang dilakukan oleh program, prosesor, atau pengguna ke sistem sumber daya.
Mekanisme proteksi harus:
·
membedakan antara
penggunaan yang sudah diberi izin dan yang belum.
·
specify the controls
to be imposed.
·
provide a
means of enforcement.
Jaringan
Sistem terdistribusi adalah sekumpulan prosesor yang
tidak berbagi memori atau clock. Tiap prosesor mempunyai memori
sendiri. Prosesor-prosesor tersebut terhubung melalui jaringan komunikasi
Sistem terdistribusi menyediakan akses pengguna ke bermacam sumber-daya sistem.
Akses tersebut menyebabkan:
·
Computation
speed-up.
·
Increased data
availability.
·
Enhanced
reliability.
Command-Interpreter
System
Sistem Operasi menunggu instruksi dari pengguna (command
driven). Program yang membaca instruksi dan mengartikan control
statements umumnya disebut: control-card interpreter, command-line
interpreter, danUNIX shell. Command-Interpreter System sangat
bervariasi dari satu sistem operasi ke sistem operasi yang lain dan disesuaikan
dengan tujuan dan teknologi I/O devices yang ada.
Contohnya: CLI, Windows, Pen-based(touch),
dan lain-lain.
Layanan Sistem
Operasi
Eksekusi program adalah kemampuan sistem untuk "load"
program ke memori dan menjalankan program. Operasi I/O: pengguna tidak dapat
secara langsung mengakses sumber daya perangkat keras, sistem operasi harus
menyediakan mekanisme untuk melakukan operasi I/O atas nama pengguna. Sistem
manipulasi berkas dalah kemampuan program untuk operasi pada berkas (membaca,
menulis, membuat, and menghapus berkas). Komunikasi adalah pertukaran data/
informasi antar dua atau lebih proses yang berada pada satu komputer (atau
lebih). Deteksi error adalah menjaga kestabilan sistem dengan
mendeteksi "error", perangkat keras mau pun operasi.
Efesisensi penggunaan sistem:
·
Resource
allocator adalah mengalokasikan sumber-daya ke beberapa
pengguna atau job yang jalan pada saat yang bersamaan.
·
Proteksi menjamin
akses ke sistem sumber daya dikendalikan (pengguna dikontrol aksesnya ke
sistem).
·
Accounting adalah merekam
kegiatan pengguna, jatah pemakaian sumber daya (keadilan atau kebijaksanaan).
System Calls
System call menyediakan interface antara
program (program pengguna yang berjalan) dan bagian OS. System call menjadi
jembatan antara proses dan sistem operasi. System call ditulis
dalam bahasa assembly atau bahasa tingkat tinggi yang dapat
mengendalikan mesin (C). Contoh: UNIX menyediakan system call: read,
write => operasi I/O untuk berkas.
Sering pengguna program harus memberikan data
(parameter) ke OS yang akan dipanggil. Contoh pada UNIX: read(buffer, max_size,
file_id);
Tiga cara memberikan parameter dari program ke sistem
operasi:
·
Melalui registers
(sumber daya di CPU).
·
Menyimpan
parameter pada data struktur (table) di memori, dan alamat table tsb ditunjuk
oleh pointer yang disimpan di register.
·
Push (store)
melalui "stack" pada memori dan OS mengambilnya melalui pop pada stack tsb.
Mesin Virtual
Sebuah mesin virtual (Virtual Machine)
menggunakan misalkan terdapat sistem program => control program yang
mengatur pemakaian sumber daya perangkat keras. Control program = trap System
call + akses ke perangkat keras. Control program memberikan fasilitas
ke proses pengguna. Mendapatkan jatah CPU dan memori. Menyediakan interface "identik"
dengan apa yang disediakan oleh perangkat keras => sharing devicesuntuk
berbagai proses.
Mesin Virtual (MV) (MV) => control program yang
minimal MV memberikan ilusi multitasking: seolah-olah terdapat
prosesor dan memori ekslusif digunakan MV. MV memilah fungsi multitasking dan
implementasiextended machine (tergantung proses pengguna) =>
flexible dan lebih mudah untuk pengaturan. Jika setiap pengguna diberikan satu
MV => bebas untuk menjalankan OS (kernel) yang diinginkan pada MV tersebut.
Potensi lebih dari satu OS dalam satu komputer. Contoh: IBM VM370: menyediakan
MV untuk berbagai OS: CMS (interaktif), MVS, CICS, dll. Masalah: Sharing disk
=> OS mempunyai sistem berkas yang mungkin berbeda. IBM: virtual disk
(minidisk) yang dialokasikan untuk pengguna melalui MV.
Konsep MV menyediakan proteksi yang lengkap untuk
sumberdaya sistem, dikarenakan tiap MV terpisah dari MV yang lain. Namun, hal
tersebut menyebabkan tidak adanya sharing sumberdaya secara
langsung. MV merupakan alat yang tepat untuk penelitian dan pengembangan sistem
operasi. Konsep MV susah untuk diimplementasi sehubungan dengan usaha yang
diperlukan untuk menyediakan duplikasi dari mesin utama.
Perancangan
Sistem dan Implementasi
Target untuk pengguna: sistem operasi harus nyaman
digunakan, mudah dipelajari, dapat diandalkan, aman dan cepat. Target untuk
sistem: sistem operasi harus gampang dirancang, diimplementasi, dan dipelihara,
sebagaimana fleksibel, error, dan efisien.
Mekanisme dan Kebijaksanaan:
·
Mekanisme
menjelaskan bagaimana melakukan sesuatu kebijaksanaan memutuskan apa yang akan
dilakukan. Pemisahan kebijaksanaan dari mekanisme merupakan hal yang sangat
penting; ini mengizinkan fleksibilitas yang tinggi bila kebijaksanaan akan
diubah nanti.
·
Kebijaksanaan
memutuskan apa yang akan dilakukan.
Pemisahan kebijaksanaan dari mekanisme merupakan hal
yang sangat penting; ini mengizinkan fleksibilitas yang tinggi bila
kebijaksanaan akan diubah nanti.
Implementasi Sistem biasanya menggunakan bahas assembly,
sistem operasi sekarang dapat ditulis dengan menggunakan bahasa tingkat tinggi.
Kode yang ditulis dalam bahasa tingkat tinggi: dapat dibuat dengan cepat, lebih
ringkas, lebih mudah dimengerti dan didebug. Sistem operasi lebih mudah
dipindahkan ke perangkat keras yang lain bila ditulis dengan bahasa tingkat
tinggi.
System
Generation (SYSGEN)
Sistem operasi dirancang untuk dapat dijalankan di
berbagai jenis mesin; sistemnya harus di konfigurasi untuk tiap komputer.
Program SYSGEN mendapatkan informasi mengenai konfigurasi khusus dari sistem
perangkat keras.
·
Booting: memulai komputer
dengan me-load kernel.
·
Bootstrap
program: kode yang disimpan di code ROM yang dapat
menempatkan kernel, memasukkannya kedalam memori, dan memulai eksekusinya.
ARSITEKTUR SISTEM OPERASI
Arsitektur perangkat
lunak adalah struktur-struktur yang menjadi landasan untuk menentukan
keberadaan komponen-komponen perangkat lunak, cara komponen-komponen saling
berinteraksi dan organisasi komponen-komponen dalam membentuk perangkat lunak. Arsitektur
sistem operasiadalah arsitektur perangkat lunak yang digunakan dalam
membangun perangkat lunak sistem operasi.
Arsitektur
sistem operasi yang terkenal antara lain :
1.
Sistem monolitik
2.
Sistem berlapis
3.
Sistem client / server
4.
Sistem mesin maya
5.
Object Oriented System/ Sistem berorientasi objek
1.
Sistem monolitik
Operating System/ Sistem operasi merupakan kumpulan prosedur bahwa
prosedur-prosedur di dalamnya dapat saling memanggil apabila perlu. Semua
layanan yang disediakan sistem operasi berisi karnel. Seluruh komponen sistem
operasi berada di satu ruang alamat.
Kelemahan :
·
Karena tidak dapat dipisahkan dan dilokalisasikan maka
pengujian dan penghilangan kesalahan sulit, namun praktik pemrograman yang
berdisiplin bagus dapat mempermudah pengembangan.
·
Dalam menyediakan fasilitas pengamanan tergolong sulit
·
Pemborosan apabila setiap komputer harus menjalankan kernelmonolitik
sangat besar sementara sebetulnya tidak membutuhkan semua layanan yang telah
disediakan kernel. Tidak fleksibel.
·
Mengakibatkan matinya seluruh sistem karena
kekeliruan pemrograman di satu bagian kernel
Keunggulan
:
·
Layanan dapat dilakukan
sangat cepat karena ada di suatu ruang alamat
2.
Sistem berlapis
Operating System/ Sistem operasi dibentuk secara hirarki berdasarkan
lapisan-lapisan , dalam hal ini lapisan-lapisan bawah memberi layanan untuk
lapisan lebih atas. Masing-masing lapisan di satu ruang alamat tersendiri.
Sistem operasi berlapis yang pertama kali memakai sistem berlapis THE. THE dibuat
oleh Dijkstra dan mahasiswa-mahasiswanya. Sistem berlapis bertujuan untuk
mengurangiimplementasi sistem operasi dan kompleksitas rancangan. Tiap
lapisan memiliki antarmuka dan fungsional masukan – keluaran dengan 2
lapisan bersebelahan dengan terdefinisi baik.
Kelemahan
:
Fungsi – fungsi sistem operasi yang harus diberikan ke masing-masing
lapisan harus dilakukan secara hati-hati.
Keunggulan
:
Sistem berlapis memiliki semua keunggulan rancangan yang modular, yaitu
sistem terbagi dalam beberapa modul. Masing-masing lapisan atau modul itu dapat
dirancang, dikode, dan diuji secar independen. Pendekatan berlapis
menyederhanakan rancangan, spesifikasi, dan implementasi sistem operasi.
3.
Sistem client / server
Sistem operasi merupakan kumpulan proses, dalam hal ini proses-proses
dikategorikan menjadi server dan client.
Server danclient berinteraksi, saling melayani
yaitu :
·
Server adalah proses yang menyediakan
layanan
·
Client adalah proses yang memerlukan /
meminta layanan
Kelemahan
:
·
Layanan dilakukan secara lambat karena harus melalui
pertukaran pesan
·
Pertukaran pesan dapat menjadi bottleneck
Kelebihan
:
·
Pengembangan dapat dilakukan secara modular
·
Kesalahan (bugs) di satu sub sistem
(diimplementasikan sebagai satu proses tersendiri) tidak merusak sub sistem-sub
sistem lain sehingga tidak mengakibatkan satu sistem mati secara keseluruhan.
4.
Sistem mesin maya
Awalnya struktur ini membuat seolah-olah semua pemakai mempunyai seluruh
komputer sendirian. Teknik yang digunakan adalah degnan atas pemroses yang
digunakan. Sistem operasi melakukan simulasi banyak mesin nyata. Mesin maya
hasil simulasi digunakan pemakai. Mesin maya ini merupakan tiruan seratus
persen atas mesin nyata. Satu pemakai diberi satu mesin maya. Semua pemakai
diberi ilusi mempunyai satu mesin nyata(maya) yang sama-sama canggih.
Kelemahan
:
Implementasi yang efisien merupakan masalah yang sulit karena sistem
menjadi besar dan kompleks
Keunggulan
:
Sistem mesin maya memberikan fleksibilitas tinggi sehingga sampai
memungkinkan sistem operasi-sistem operasi berbeda dapat dijalankan di mesin
maya – mesin maya berbeda oleh pemakai-pemakai yang berbeda.
5.
Sistem berorientasi objek
Sistem operasi
yang merealisasikan layanan sebagai kumpulan proses disebut sistem operasi
bermodel proses. Pendekatan lain implementasi layanan adalah sebagai
objek-objek. Sistem operasi yang diinstruksikan berdasarkan paradigma objek
disebut sistem operasi berorientasi objek. Pendekatan ini dimaksudkan untuk
mengadopsi keunggulan teknologi berorientas objek.
Pertemuan 4-6
PENJADWALAN PROCESSOR
1. Istilah-istilah dan Konsep-konsep Penjadwalan
- Bagian sistem operasi yang mengatur penjadwalan eksekusi proses-proses disebut scheduler.
- Algoritma yang digunakan disebut algoritma penjadwalan (scheduling algorithm).
- Kriteria baik tidaknya suatu algoritma penjadwalan ditentukan oleh:
1. Fairness
2. Efficiency
3. Response Time
4. Turnaround Time
5. Throughput
- Penjadwalan Proses
–
Antrian
–
Prioritas
–
Preempsi
- Jangka penjadwalan
–
pendek
–
madya
–
panjang
- Tujuan penjadwalan:
–
pelayanan
yang adil untuk semua pekerjaan
–
memaksimumkan
throughput
–
memaksimumkan
pemakaian prosesor
–
meminimumkan
waktu tunggu (overhead)
–
pemakaian
sumber daya seimbang
–
tidak
terjadi penundaan waktu tak hingga
–
kegiatan
sumber daya dapat dideteksi terlebih dahulu
- Perhitungan kerja prosesor
t
= lama proses pada prosesor
T
= lama tanggap pada prosesor
Waktu sia-sia
(waktu antri) = T – t
Rasio tanggap Rt
= t / T
Rasio Penalti Rp
= T/t
Penjadwalan Prosesor
- Penjadwalan satu tingkat
–
Pertama
Tiba Pertama Dilayani (PTPD)
–
Proses
Terpendek Dipertamakan (PTD)
–
Proses
Terpendek Dipertamakan Preempsi (PTDP)
–
Rasio
Penalti Tertinggi Dipertamakan (RPTD)
–
Putar
Gelang (PG)
–
Putar
Gelang Prioritas Berubah (PGPB)
- Penjadwalan multi tingkat
–
Antrian
multitingkat
–
Antrian
multitingkat berbalikan
–
2. Penjadwalan Satu Tingkat
·
Pertama Tiba
Pertama Dilayani (PTPD)
First Come First Served (FCFS)
Penjadualan ini
murni antrian.
Nama
Proses
|
Saat
Tiba
|
Lama
Proses
|
Saat
Mulai
|
Saat
Rampung
|
Lama
Tanggap
|
A
|
0
|
9
|
0
|
9
|
9
|
B
|
0
|
30
|
9
|
39
|
39
|
C
|
0
|
4
|
39
|
43
|
43
|
D
|
0
|
8
|
43
|
51
|
51
|
E
|
0
|
12
|
51
|
63
|
63
|
Jumlah
|
205
|
||||
Rerata
|
41
|
- Pertama Tiba Pertama Dilayani (PTPD)
First Come First Served (FCFS)
Nama
Proses
|
Saat
Tiba
|
Lama
Proses
|
Saat
Mulai
|
Saat
Rampung
|
Lama
Tanggap
|
A
|
0
|
4
|
0
|
4
|
4
|
B
|
1
|
7
|
4
|
11
|
10
|
C
|
3
|
3
|
11
|
14
|
11
|
D
|
7
|
8
|
14
|
22
|
15
|
Jumlah
|
40
|
||||
Rerata
|
10
|
- Proses Terpendek Dipertamakan (PTD)
Shortest Job First (SJF)
Penjadualan ini
adalah antrian dengan prioritas, yang menjadi prioritas adalah proses yang
terpendek (tersingkat).
Nama
Proses
|
Saat
Tiba
|
Lama
Proses
|
Nama
Proses
|
Saat
Tiba
|
Lama
Proses
|
A
|
0
|
8
|
C
|
6
|
3
|
B
|
4
|
5
|
E
|
14
|
4
|
C
|
6
|
3
|
B
|
4
|
5
|
D
|
9
|
8
|
A
|
0
|
8
|
E
|
14
|
4
|
D
|
9
|
8
|
- Proses Terpendek Dipertamakan (PTD)
Shortest Job First (SJF)
Nama
Proses
|
Saat
Tiba
|
Lama
Proses
|
Lama
Mulai
|
Saat
Rampung
|
Lama
Tanggap
|
A
|
0
|
8
|
0
|
8
|
8
|
C
|
6
|
3
|
8
|
11
|
5
|
B
|
4
|
5
|
11
|
16
|
12
|
E
|
14
|
4
|
16
|
20
|
6
|
D
|
9
|
8
|
20
|
28
|
19
|
Jumlah
|
50
|
||||
Rerata
|
10
|
- Proses Terpendek Dipertamakan Preempsi (PTDP) Preemptive Shortest Job First (PSJF)
Penjadualan ini
dengan prioritas dan preempsi
Proses yang
terpendek bisa didahulukan dengan cara membandingkan sisa waktu proses yang
sedang dilaksanakan dengan proses yang tiba, dan dapat menyebabkan proses yang
sedang berjalan terhenti untuk melaksanakan proses yang lebih pendek/singkat.
Nama
Proses
|
Saat Tiba |
Lama
Proses
|
A
|
0
|
8
|
B
|
2
|
5
|
C
|
4
|
7
|
D
|
5
|
1
|
Barisan saat
daftar Proses
Proses
|
Tiba
|
Proses
|
Mulai
|
Rampung
|
Tanggap
|
A
|
0
|
8
|
0
|
14
|
14
|
B
|
2
|
5
|
2
|
8
|
6
|
C
|
4
|
7
|
14
|
21
|
17
|
D
|
5
|
1
|
5
|
6
|
1
|
Jumlah
|
38
|
||||
Rerata
|
9.5
|
- Rasio Penalti Tertinggi Dipertamakan (PTD)
Highest Penalti Ratio Next (HPRN)
Tetap
mendahulukan proses pendek ditambah dengan mempertimbangkan rasio penaltinya,
yang ditentukan berdasarkan lama waktu antriannya.
t = lama proses
T = lama tanggap
s = waktu sia
sia (waktu antri)
s = (T-t)
Rp=
(s+t)/t
Nama
Proses
|
Saat
Tiba
|
Lama
Proses
|
A |
0
|
4
|
B
|
1
|
2
|
C
|
2
|
5
|
D
|
3
|
8
|
E
|
4
|
4
|
Nama Proses |
Tiba
Selama
|
Rasio
Penalti
|
B
|
4
– 1 = 3
|
(3
+ 2) / 2 = 2,5
|
C
|
4
– 2 = 2
|
(2
+ 5) / 5 = 1,4
|
D
|
4
– 3 = 1
|
(1
+ 8) / 8 = 1,125
|
E
|
4
– 4 = 0
|
(0
+ 4) / 4 = 1
|
Nama Proses |
Tiba
Selama
|
Rasio
Penalti
|
C
|
6
– 2 = 4
|
(4
+ 5) / 5 = 1,8
|
D
|
6
– 3 = 3
|
(3
+ 8) / 8 = 1,375
|
E
|
6
– 4 = 2
|
(2
+ 4) / 4 = 1,5
|
Nama Proses |
Tiba
Selama
|
Rasio
Penalti
|
D
|
11
– 3 = 8
|
(8
+ 8) / 8 = 2
|
E
|
11
– 4 = 7
|
(7
+ 4) / 4 = 2,75
|
Daftar Proses
Nama
Proses
|
Saat
Tiba
|
Lama
Proses
|
Lama
Mulai
|
Saat
Rampung
|
Lama
Tanggap
|
A
|
0
|
4
|
0
|
4
|
4
|
B
|
1
|
2
|
4
|
6
|
5
|
C
|
2
|
5
|
6
|
11
|
9
|
D
|
3
|
8
|
15
|
23
|
20
|
E
|
4
|
4
|
11
|
15
|
11
|
Jumlah
|
49
|
||||
Rerata
|
9.8
|
- Putar Gelang (PG)
Round Robin (RR)
Penjadualan ini
tanpa prioritas & preempsi
Setiap proses
dilayani selama quantum waktu tertentu secara bergiliran.
Nama
Proses
|
Saat
Tiba
|
Lama
Proses
|
A
|
0
|
5
|
B
|
1
|
3
|
C
|
5
|
7
|
D
|
6
|
1
|
E
|
7
|
6
|
Kuantum waktu
(q) = 2
Barisan saat
Daftar Proses
Nama
Proses
|
Saat
Tiba
|
Lama
Proses
|
Lama
Mulai
|
Saat
Rampung
|
Lama
Tanggap
|
A
|
0
|
5
|
0
|
11
|
11
|
B
|
1
|
3
|
2
|
7
|
6
|
C
|
5
|
7
|
7
|
22
|
17
|
D
|
6
|
1
|
9
|
10
|
4
|
E
|
7
|
6
|
11
|
21
|
14
|
Jumlah
|
52
|
||||
Rerata
|
10.4
|
- Penjadwalan
dengan prioritas berubah-ubah Putar Gelang Prioritas Berubah (PGPB)
Selfish Round Robin (RR) Penjadualan yang menggunakan proiritas dapat diubah-ubah menjadi prioritas lainnya.
p =
prioritas
a = koefisien untuk lama
s = waktu sia sia b = koefisien untuk proses baru
t = waktu proses b/a = 1 => prioritas sama
u = tarif sewa b/a = 0 => prioritas lama +
s = waktu sia sia b = koefisien untuk proses baru
t = waktu proses b/a = 1 => prioritas sama
u = tarif sewa b/a = 0 => prioritas lama +
p = f ( s, t, u
) b/a < 1
=> prioritas baru < lama
b/a > 1 => prioritas baru > lama
b/a > 1 => prioritas baru > lama
3. Penjadwalan Multitingkat
Ø Proses dibedakan
tingkatnya berdasarkan kepentingannya.
Ø Penjadualan pada
tiap tingkat dapat bermacam-macam.
Ø Pada antrian
multitingkat berbalikan, tingkat satu dan lainnya saling berhubungan.
·
Antrian
Multitingkat (Multilevel queue)
·
Antrian
Multitingkat Berbalikan
Feedback multilevel queue
4. Metoda Evaluasi Penjadwalan
–
evaluasi
analitik
·
pemodelan
deterministik
·
analisis model
antrian
–
simulasi
–
implementasi
·
Metode
Pemodelan Deterministik
Pekerjaan sudah
ditetapkan terlebih dahulu, menerapkan berbagai penjadualan dan dievaluasi
hasilnya.
Kelemahan: Hanya
tepat untuk model yang sudah dicoba,
untuk model yang
lain belum tentu.
·
Metode
Analisis Model Antrian
Dengan
menganggap sistem komputer sebagai suatu jaringan alat layanan.
Dianalisa
berdasarkan model (rumus) yang diambil untuk tiap penjadualan.
Kelemahan: Pengambilan
model cukup rumit untuk sistem tertentu dan model tidak selalu cocok dengan
keadaan yang sebenarnya.
·
Metode
Simulasi
Metode ini
berdasarkan sejumlah variabel yang disimulasikan sistem komputer yang
digunakan.
·
Metode
Implementasi
Metode ini
bekerja dengan cara mengamati hasil dari implementasi setiap penjadualan.
Tidak ada komentar:
Posting Komentar