SISTEM OPERASI KOMPUTER
Pengertian Sistem Operasi
Pengertian Sistem operasi Komputer adalah perangkat lunak komputer atau software yang bertugas untuk melakukan kontrol dan manajemen perangkat keras dan juga operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah data yang bisa digunakan untuk mempermudah kegiatan manusia. Sistem Operasi dalam bahasa Inggrisnya disebut Operating System, atau biasa di singkat dengan OS.
Sistem Operasi komputer merupakan software pada lapisan pertama yang diletakkan pada memori komputer, (memori komputer dalam hal ini ada Hardisk, bukan memory ram) pada saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi Komputer berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan kernel suatu Sistem Operasi.
Sistem Operasi berfungsi sebagai penghubung antara lapisan hardware dan lapisan software. selain itu, Sistem Operasi komputer juga melakukan semua perintah perintah penting dalam komputer, serta menjamin aplikasi-aplikasi yang berbeda fungsinya dapat berjalan lancar secara bersamaan tanpa hambatan. Sistem Operasi Komputer menjamin aplikasi perangkat lunak lainnya bisa memakai memori, melakukan input serta output terhadap peralatan lain, dan mempunya akses kepada sistem file. Jika beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi Komputer akan mengatur jadwal yang tepat, sehingga sebisa mungkin semua proses pada komputer yang berjalan mendapatkan waktu yang cukup untuk menggunakan CPU dan tidak saling mengganggu dengan perangkat yang lain.
Contoh Sistem Operasi Komputer
Contoh-contoh dari Sistem operasi Komputer misalnya adalah Windows, Linux, MacOS, dan lain lain. Di bawah ini merupakan tampilan antarmuka sistem operasi Windows 7, Linux (ubuntu), dan Mac OS X
tampilan antar muka windows 7
tampilan antar muka linux Ubuntu
Tampilan antar muka sistem operasi Mac OS X
TUJUAN DAN FUNGSI SISTEM OPERASI
Dari sudut pandang pengguna, Sistem operasi merupakan alat yang bertujuan untuk mempermudah penggunaan komputer. Dari sudut pandang sistem komputer, sistem operasi dapat dianggap sebagai alat yang bertujuan menempatkan sumber daya secara efisien (Resource Allocator). Sistem operasi ialah manager bagi sumber daya, yang menangani konflik permintaan sumber daya secara efisien. Sistem operasi juga mengatur eksekusi aplikasi dan operasi dari hardware I/O (Input/Output). Fungsi ini dikenal juga sebagai program pengendali (Control Program).
Jadi dari sudut pandang tujuan sistem operasi itu sendiri, sistem operasi dapat dipandang sebagai alat yang membuat komputer lebih nyaman digunakan (convenient) untuk menjalankan program aplikasi dan menyelesaikan masalah pengguna. Tujuan lain sistem operasiialah membuat penggunaan sumber daya komputer menjadi efisien.
Sistem operasi yang baik adalah yang mampu memberikan keadaan aman dan tetap konsisten pada saat hardware dan software aplikasi berkomunikasi, juga tetap memberikan antar muka yang mudah, nyaman dan menarik bagi pengguna. Berikut ini adalah 8 fungsi sistem operasi :
- Resource Manager : Mengalokasikan sumber daya, maksud sumber daya disini adalah hardware seperti memori, CPU, Printer, disk drive dan perangkat lainnya.
- Coordinator : menyediakan fasilitas sehingga aktivitas yang kompleks dapat diatur untuk dikerjakan dalam urutan yang telah disusun sebelumnya.
- Interface: sebagai perantara antara pengguna (user) dengan hardware untuk menyediakan lingkungan yang bersahabat atau mudah digunakan (User Friendly). Pengguna tidak akan dikhawatirkan dan dirumitkan oleh bahasa mesin atau perangkat level bawah.
- Guardian: menyediakan kontrol akses yang melindungi file dan memberi pengawasan pada pembacaan/penulisan/eksekusi data dan program.
- Gatekeeper: mengendalikan siapa saja yang berhak masuk (log) kedalam sistem dan mengawasi tindakan apa saja yang dapat mereka kerjakan ketika telah log dalam sistem.
- Optimizer: menjadwal pemasukan (input) oleh pengguna, pengaksesan basis data, proses komunikasi, dan pengeluaran (output) untuk meningkatkan kegunaan.
- Accountant: mengatur waktu CPU (CPU time), penggunaan memori, pemanggilan perangkat I/O (masukan/keluaran), disk storage dan waktu koneksi terminal.
- Server: untuk menyediakan layanan yang sering dibutuhkan pengguna, baik secara eksplisit maupun implisit, seperti mekanisme akses file.
Dapat disimpulkan, bahwa Sistem operasi merupakan komponen penting dari setiap sistem komputer. Konsep sistem operasi dapat lebih mudah dipahami, jika juga memahami jenis hardware yang digunakan. Demikian pula sebaliknya. Dari sejarah diketahui bahwa sistem operasi dan hardware saling mempengaruhi dan saling melengkapi. Struktur dari sebuah sistem operasi sangat tergantung pada hardware yang pertama kali digunakan untuk mengembangkannya. Sedangkan perkembangan hardware sangat dipengaruhi dari hal-hal yang diperlukan oleh sebuah sistem operasi.
SEJARAH PERKEMBANGAN SISTEM OPERASI
Arsitektur hardware komputer tradisional terdiri dari empat komponen utama yaitu “Prosesor”, “Memori Penyimpanan”, “Masukan” (Input), dan “Keluaran” (Output). Model tradisional tersebut sering dikenal dengan nama arsitektur von-Neumann. Pada saat awal, komputer berukuran sangat besar sehingga komponen-komponennya dapat memenuhi sebuah ruangan yang sangat besar. Sang pengguna menjadi programer yang sekaligus merangkap menjadi menjadi operator komputer dan bekerja masih di dalam ruang komputer tersebut.
Walaupun berukuran besar, sistem tersebut dikategorikan sebagai “komputer pribadi” (PC). Siapa saja yang ingin melakukan komputasi harus memesan untuk antri mendapatkan alokasi waktu (rata-rata 30-120 menit). Jika ingin melakukan kompilasi program Fortran, maka pengguna pertama kali akan me-load kompilator Fortran, yang diikuti dengan “load” program dan data. Hasil yang diperoleh, biasanya berbentuk cetakan (print-out).
Dari cara penggunaan seperti itu, timbul beberapa masalah pada sistem PC tersebut.Alokasi pesanan apa saja yang akan dilakukan harus dilakukan diawal. Jika pekerjaan selesai sebelum rencana awal, maka sistem komputer menjadi “idle” (tidak tergunakan). Sebaliknya, jika perkerjaan selesai lebih lama dari rencana semula, para calon pengguna berikutnya harus menunggu hingga pekerjaan selesai. Selain itu, seorang pengguna kompilator Fortran akan beruntung jika pengguna sebelumnya juga menggunakan Fortran. Namun, jika pengguna sebelumnya menggunakan Cobol, maka pengguna Fortran harus me-”load” kembali dari awal (Set-Up). Masalah ini ditanggulangi dengan menggabungkan para pengguna kompilator sejenis ke dalam satu kelompok (batch) yang sama. Untuk mengurangi waktu set-up tersebut, digunakan jasa operator komputer dan menggabungkan tugas-tugas yang sama (sistem batch).
Selanjutnya terjadi pemisahan tugas antara programer dan operator. Para operator biasanya secara eksklusif menjadi penghuni “ruang kaca” seberang ruang komputer. Para programer yang merupakan pengguna (users), mengakses komputer secara tidak langsung melalui bantuan para operator. Para pengguna mempersiapkan sebuah job yang terdiri dari program aplikasi, data masukan, serta beberapa perintah pengendali program. Medium yang lazim digunakan ialah kartu berlubang (punch card). Setiap kartu dapat menampung informasi satu baris hingga 80 karakter. Set kartujob lengkap kemudian diserahkan kepada para operator.
Perkembangan Sistem operasi dimulai dari sini. Dengan memanfaatkan sistembatchpara operator mengumpulkan job-job yang mirip yang kemudian dijalankan secara berkelompok. Misalnya, job yang memerlukan kompilator Fortran akan dikumpulkan ke dalam sebuah batch bersama denganjob-job lainnya yang juga memerlukan kompilator Fortran. Setelah sebuah kelompok job selesai, maka kelompok job berikutnya akan dijalankan secara otomatis.
Sistem batch mengizinkan pengurutan tugas secara otomatis dengan menggunakan Sistem operasi yang terintegrasi dan memberikan peningkatan yang cukup besar dalam utilisasi komputer. Komputer tidak perlu lagi menunggu operasi oleh pengguna. Tapi utilisasi CPU tetap saja rendah. Hal ini dikarenakan lambatnya kecepatan alat-alat untuk I/O secara relatif terhadap kecepatan CPU. Operasi off-line dari alat-alat yang lambat bertujuan untuk menggunakan beberapa sistem reader-to-tape dan tape-to-printer untuk satu CPU. Untuk meningkatkan keseluruhan kemampuan dari sistem komputer, para developer memperkenalkan konsep multiprogramming.
Pada perkembangan berikutnya, diperkenalkan konsep Multiprogrammed System. Dengan sistem ini job-job disimpan di memori utama di waktu yang sama dan CPU dipergunakan bergantian. Hal ini membutuhkan beberapa kemampuan tambahan yaitu: penyediaan I/O yang rutin oleh sistem, pengaturan memori untuk mengalokasikan memori pada beberapa Job, penjadwalan CPU untuk memilih job mana yang akan dijalankan, serta pengalokasian hardware lain.
Peningkatan lanjut dikenal sistem “bagi waktu” (Time Sharing System),”tugas ganda” (Multitasking), dan “komputasi interaktif” (Interactive Computing). Sistem ini, secara simultan dapat diakses lebih dari satu pengguna. CPUdigunakan bergantian oleh job-job di memori dan di disk. CPU dialokasikan hanya pada job di memori dan job dipindahkan dari dan ke disk. Interaksi langsung antara pengguna dan komputer ini melahirkan konsep baru, yaitu response time (waktu respon) yang diupayakan wajar agar tidak terlalu lama menunggu.
Hingga akhir tahun 1980-an, sistem komputer dengan kemampuan yang “normal”, lazim dikenal dengan istilah main frame. Sistem komputer dengan kemampuan jauh lebih rendah (dan lebih murah) disebut “komputer mini”. Sebaliknya, komputer dengan kemampuan jauh lebih canggih disebut komputer super (super computer). Namun prinsip kerja dari Sistem operasi dari semua komputer tersebut lebih kurang sama saja.
Menurut Tanenbaum, sistem operasi mengalami perkembangan yang sangat pesat, yang dapat dibagi kedalam empat generasi:
1. Generasi Pertama (1945-1955)
Generasi pertama merupakan awal perkembangan sistem komputasi elektronik sebagai pengganti sistem komputasi mekanik, hal itu disebabkan kecepatan manusia untuk menghitung terbatas dan manusia sangat mudah untuk membuat kecerobohan, kekeliruan bahkan kesalahan. Pada generasi ini belum ada sistem operasi, maka sistem komputer diberi instruksi yang harus dikerjakan secara langsung.
Generasi pertama merupakan awal perkembangan sistem komputasi elektronik sebagai pengganti sistem komputasi mekanik, hal itu disebabkan kecepatan manusia untuk menghitung terbatas dan manusia sangat mudah untuk membuat kecerobohan, kekeliruan bahkan kesalahan. Pada generasi ini belum ada sistem operasi, maka sistem komputer diberi instruksi yang harus dikerjakan secara langsung.
2. Generasi Kedua (1955-1965)
Generasi kedua memperkenalkan Batch Processing System, yaitu Job yang dikerjakan dalam satu rangkaian, lalu dieksekusi secara berurutan. Pada generasi ini sistem komputer belum dilengkapi sistem operasi, tetapi beberapa fungsi sistem operasi telah ada, contohnya fungsi sistem operasi ialah FMS dan IBSYS.
Generasi kedua memperkenalkan Batch Processing System, yaitu Job yang dikerjakan dalam satu rangkaian, lalu dieksekusi secara berurutan. Pada generasi ini sistem komputer belum dilengkapi sistem operasi, tetapi beberapa fungsi sistem operasi telah ada, contohnya fungsi sistem operasi ialah FMS dan IBSYS.
3. Generasi Ketiga (1965-1980)
Pada generasi ini perkembangan sistem operasi dikembangkan untuk melayani banyak pemakai sekaligus, dimana para pemakai interaktif berkomunikasi lewat terminal secaraon-line ke komputer, maka sistem operasi menjadi multi-user(di gunakan banyak pengguna sekaligus) dan multi-programming (melayani banyak program sekaligus).
Pada generasi ini perkembangan sistem operasi dikembangkan untuk melayani banyak pemakai sekaligus, dimana para pemakai interaktif berkomunikasi lewat terminal secaraon-line ke komputer, maka sistem operasi menjadi multi-user(di gunakan banyak pengguna sekaligus) dan multi-programming (melayani banyak program sekaligus).
4. Generasi Keempat (Pasca 1980-an)
Dewasa ini, sistem operasi dipergunakan untuk jaringan komputer dimana pemakai menyadari keberadaan komputer-komputer yang saling terhubung satu sama lainnya. Pada masa ini para pengguna juga telah dinyamankan dengan Graphical User Interface yaitu antar-muka komputer yang berbasis grafis yang sangat nyaman, pada masa ini juga dimulai era komputasi tersebar dimana komputasi-komputasi tidak lagi berpusat di satu titik, tetapi dipecah dibanyak komputer sehingga tercapai kinerja yang lebih baik.
Dewasa ini, sistem operasi dipergunakan untuk jaringan komputer dimana pemakai menyadari keberadaan komputer-komputer yang saling terhubung satu sama lainnya. Pada masa ini para pengguna juga telah dinyamankan dengan Graphical User Interface yaitu antar-muka komputer yang berbasis grafis yang sangat nyaman, pada masa ini juga dimulai era komputasi tersebar dimana komputasi-komputasi tidak lagi berpusat di satu titik, tetapi dipecah dibanyak komputer sehingga tercapai kinerja yang lebih baik.
KELUARGA SISTEM OPERASI
Perkembangan sistem operasi modern (sudah mendukung multitasking dan multiuser) diawali oleh UNIX yang dibangun pada tahun 1969 oleh AT&T Bell Labs, termasuk didalamnya Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, dan Joe Ossana. Saat ini UNIX sudah jauh berkembang sehingga terdiri dari bermacam variasi berkat AT&T, berbagai vendor komersial, lembaga non-profit dan universitas.
Diera tahun 70-an sampai 80-an, Personal Computer (PC) sudah memiliki sistem operasi dengan level abstraksi yang tinggi yang disimpan di memori sekunder seperti harddisk drive dan floppy disk drive. Sistem operasi semacam ini disebut dengan Disk Operating System (DOS). Contoh sistem operasi yang terkenal adalah OS/2 yang di buat oleh perusahaan IBM dan Microsoft. Antar muka sistem operasi di era ini masih berupa text sehingga relatif sulit untuk dioperasikan pengguna awam.
Mac OS atau Macintosh Operating System merupakan sistem operasi pertama yang sukses dengan antar muka grafis (GUI), sistem operasi tersebut diperkenalkan oleh Apple Computer pada tahun 1984. Sistem operasi modern untuk PC saat ini didominasi oleh Microsoft Windows yang pertama kali diperkenalkan pada tahun 1985. Popularitas Windows saat ini mendapat perlawanan dari Linux dengan sifat open sourcenya dan dukungan pengembangan berbagai distro. Linux merupakan keluarga sistem operasi mirip UNIX, Kernel Linux disusun pertama kali oleh Linus Torvalds pada tahun 1991.
Era tahun 2000-an merupakan awal tren Mobile Computing, yang saat ini sistem operasi perangkatnya didominasi oleh Android, iOS, Blackberry OS, Windows Phone dan Symbian.
Berikut ini adalah beberapa daftar keluarga sistem operasi yang marak digunakan.
1. Keluarga Windows :
1) Berbasis MS-DOS: MS-DOS, Windows 1.0 , Windows 2.0, Windows 2.1x, Windows 3.0, Windows 3.1x
2) Windows 9x: Windows 95, Windows 98, Windows Me
3) Berbasis Windows NT: Windows NT 3.1, Windows NT 3.5, Windows NT 3.51, Windows NT 4.0, Windows 2000, Windows XP (edisi), Windows Server 2003, Fundamentals for Legacy PCs, Windows Vista (edisi), Windows Home Server, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8
4) Keluarga Windows CE: CE 1.0, CE 2.0, CE 3.0, CE 4.0, CE 5.0, CE 6.0, Mobile
2. Keluarga UNIX :
2) Windows 9x: Windows 95, Windows 98, Windows Me
3) Berbasis Windows NT: Windows NT 3.1, Windows NT 3.5, Windows NT 3.51, Windows NT 4.0, Windows 2000, Windows XP (edisi), Windows Server 2003, Fundamentals for Legacy PCs, Windows Vista (edisi), Windows Home Server, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8
4) Keluarga Windows CE: CE 1.0, CE 2.0, CE 3.0, CE 4.0, CE 5.0, CE 6.0, Mobile
2. Keluarga UNIX :
1) AIX
2) AmigaOS
3) BSD
4) DragonFly BSD
5) Free BSD
6) GNU
7) HP-UX
8) IRIX
9) Linux
10) LynxOS
11) MINIX
12) NetBSD
13) OpenBSD
14) OS X
15) Plan 9
16) QNX
17) Research UNIX
18) SCO OpenServer
19) Solaris
20) UNIX System V
21) Tru64 UNIX
22) UnixWare
23) VxWork
24) Xenix
2) AmigaOS
3) BSD
4) DragonFly BSD
5) Free BSD
6) GNU
7) HP-UX
8) IRIX
9) Linux
10) LynxOS
11) MINIX
12) NetBSD
13) OpenBSD
14) OS X
15) Plan 9
16) QNX
17) Research UNIX
18) SCO OpenServer
19) Solaris
20) UNIX System V
21) Tru64 UNIX
22) UnixWare
23) VxWork
24) Xenix
3. Keluarga Mac OS:
1) PC : Public Beta (Kodiak), Mac OS X 10.0 (Cheetah), Mac OS X 10.1 (Puma), Mac OS X 10.2 (Jaguar), Mac OS X 10.3 (Panther), Mac OS X 10.4 (Tiger), Mac OS X 10.5 (Leopard), Mac OS X 10.6 (Snow Leopard), Mac OS X 10.7 (Lion), Mac OS X 10.8 (Mountain Lion).
2) Server : OpenStep, Raphsody, Mac OS X Server 1.0
3) Mobile: iOS
2) Server : OpenStep, Raphsody, Mac OS X Server 1.0
3) Mobile: iOS
DAFTAR ISTILAH
- Kompilator: Kompilator (inggris:compiler) adalah sebuah program komputer yang berguna untuk menerjemahkan program komputer yang ditulis dalam bahasa pemrograman tertentu menjadi program yang ditulis dalam bahasa pemrograman lain.
- Fortran : Fortran (atau FORTRAN) adalah sebuah bahasa pemograman. Pertama kali dikembangkan pada tahun 1990 dan digunakan dalam bidang sains selama 50 tahun kemudian. Pertama kali bernama FORTRAN yang merupakan singkatan dariFormula Translator/Translation, tetapi penggunaan huruf besar kemudian ditiadakan sejak versi Fortran 90. Pertama kali dikembangkan merupakan bahasa pemrograman prosedural, akan tetapi versi-versi terbaru dari Fortran kemudian dikembangkan dengan memasukkan kemampuan object-oriented programming.
- Cobol: COBOL(singkatan dariCommonBusinessOrientedLanguage) adalah sebuah bahasa pemograman generasi ketiga. Sesuai dengan namanya, maka bahasa COBOL mempunyai fungsi menyelesaikan masalah-masalah yang berhubungan dengan perdagangan, seperti sistem pengelolaan keuangan, laporan pengeluaran sebuah perusahaan dan lain-lain.
- Time Sharing System :Time sharing system adalah suatu teknik penggunaan online system oleh beberapa pemakai secara bergantian menurut waktu yang diperlukan pemakai. Disebabkan waktu perkembangan proses CPU semakin cepat, sedangkan alat Input/Output tidak dapat mengimbangi kecepatan dari CPU, maka kecepatan dari CPU dapat digunakan secara efisien dengan melayani beberapa alat I/O secara bergantian.
- Multitasking: sebuah metode dimana banyak pekerjaan atau dikenal juga sebagai proses diolah dengan menggunakan sumberdaya CPU yang sama. Dalam kasus sebuah komputer dengan prosesor tunggal, hanya satu instruksi yang dapat bekerja dalam satu waktu, berarti bahwa CPU tersebut secara aktif mengolah instruksi untuk satu pekerjaan tersebut. Multitasking memecahkan masalah ini dengan memjadwalkan pekerjaan mana yang dapat berjalan dalam satu waktu, dan kapan pekerjaan yang lain menunggu untuk diolah dapat dikerjakan.
- Multiprogramming : salah satu teknik penjadwalan dimana tugas (task) yang sedang berjalan tetap berjalan sampai ia melakukan operasi yang membutuhkan waktu untuk menunggu respon dari luar (external event), misalnya membaca data dari disket/CD/dsb, atau sampai komputer memaksa untuk menukar tugas yang sedang berjalan dengan tugas lainnya. Sistem operasi yang yang menggunakan multi-program sebagai scheduler-nya bertujuan untuk memaksimalkan penggunaan CPU.
- Interactive Computing : software yang mampu menerima input/masukan dari manusia seperti input data dan perintah.
- Kartu berlubang (Punched card): Kertas yang mengandung informasi digital dalam bentuk lubang-lubang.
Sistem Operasi Saat Ini
Sistem operasi-sistem operasi utama yang digunakan komputer umum (termasuk PC, komputer personal) terbagi menjadi 3 kelompok besar:
- Keluarga Microsoft Windows - yang antara lain terdiri dari Windows Desktop Environment (versi 1.x hingga versi 3.x), Windows 9x (Windows 95, 98, dan Windows ME), dan Windows NT (Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 (Seven) yang dirilis pada tahun 2009, dan Windows 8 yang dirilis pada Oktober 2012)).
- Keluarga Unix yang menggunakan antarmuka sistem operasi POSIX, seperti SCO UNIX, keluarga BSD (Berkeley Software Distribution), GNU/Linux, Zeath OS (berbasis kernel linux yang dimodifikasi.)MacOS/X (berbasis kernel BSD yang dimodifikasi, dan dikenal dengan nama Darwin) dan GNU/Hurd.
- Mac OS, adalah sistem operasi untuk komputer keluaran Apple yang biasa disebut Mac atau Macintosh. Sistem operasi yang terbaru adalah Mac Os X versi 10.6 (Snow Leopard). Musim panas 2011 direncanakan peluncuran versi 10.7 (Lion).
Sedangkan komputer Mainframe, dan Super Komputer menggunakan banyak sekali sistem operasi yang berbeda-beda, umumnya merupakan turunan dari sistem operasi UNIX yang dikembangkan oleh vendor seperti IBM AIX, HP/UX, dll.
Prosesor
Prosesor mengeksekusi program-program komputer. Prosesor adalah sebuah chip dalam sistem komputer yang menjalankan instruksi-instruksi program komputer. Dalam setiap detiknya prosesor dapat menjalankan jutaan instruksi.
Program adalah sederetan instruksi yang diberikan kepada suatu komputer. Sedangkan proses adalah suatu bagian dari program yang berada pada status tertentu dalam rangkaian eksekusinya. Di dalam bahasan Sistem Operasi, kita lebih sering membahas proses dibandingkan dengan program. Pada Sistem Operasi modern, pada saat tertentu tidak seluruh program dimuat dalam memori, tetapi hanya satu bagian saja dari program tersebut. Sedangkan bagian lain dari program tersebut tetap beristirahat di media penyimpan disk. Hanya pada saat dibutuhkan saja, bagian dari program tersebut dimuat di memori dan dieksekusi oleh prosesor. Hal ini sangat menghemat pemakaian memori.
Beberapa sistem hanya menjalankan satu proses tunggal dalam satu waktu, sedangkan yang lainnya menjalankan multi-proses dalam satu waktu. Padahal sebagian besar sistem komputer hanya memiliki satu prosesor, dan sebuah prosesor hanya dapat menjalankan satu instruksi dalam satu waktu. Maka bagaimana sebuah sistem prosesor tunggal dapat menjalankan multi-proses? Sesungguhnya pada granularity yang sangat kecil, prosesor hanya menjalankan satu proses dalam satu waktu, kemudian secara cepat ia berpindah menjalankan proses lainnya, dan seterusnya. Sehingga bagi penglihatan dan perasaan pengguna manusia, seakan-akan prosesor menjalankan beberapa proses secara bersamaan.
Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori. Prioritas proses merupakan suatu nilai atau besaran yang menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses yang memiliki prioritas lebih tinggi, akan dijalankan lebih sering atau dieksekusi lebih dulu dibandingkan dengan proses yang berprioritas lebih rendah. Suatu sistem operasi dapat saja menentukan semua proses dengan prioritas yang sama, sehingga setiap proses memiliki kesempatan yang sama. Suatu sistem operasi dapat juga mengubah nilai prioritas proses tertentu, agar proses tersebut akan dapat memiliki kesempatan lebih besar pada eksekusi berikutnya (misalnya: pada proses yang sudah sangat terlalu lama menunggu eksekusi, sistem operasi menaikkan nilai prioritasnya).
Status Prosesor
Jenis status yang mungkin dapat disematkan pada suatu proses pada setiap sistem operasi dapat berbeda-beda. Tetapi paling tidak ada 3 macam status yang umum, yaitu:
- Ready, yaitu status dimana proses siap untuk dieksekusi pada giliran berikutnya
- Running, yaitu status dimana saat ini proses sedang dieksekusi oleh prosesor
- Blocked, yaitu status dimana proses tidak dapat dijalankan pada saat prosesor siap/bebas
Daftar Pustaka
Dari buku :
Dhotre, I.A. (2009). Operating Systems. Technical Publications. hlm. 1.
Stallings (2005). Operating Systems, Internals and Design Principles. Pearson: Prentice Hall. hlm. 6.
Dari internet :
Tidak ada komentar:
Posting Komentar