Sebuah komputer modern merupakan sistem yang
kompleks. Komputer tersebut, secara fisik
terdiri dari beberapa bagian seperti prosesor, memori, disk, pencetak (printer), serta perangkat lainnya. Sebuah komputer dapat menjalankan berbagai perangkat lunak aplikasi (software aplication). Sebuah sistem operasi merupakan perangkat lunak penghubung antara perangkat keras (hardware) dengan perangkat lunak aplikasi tersebut di atas.
terdiri dari beberapa bagian seperti prosesor, memori, disk, pencetak (printer), serta perangkat lainnya. Sebuah komputer dapat menjalankan berbagai perangkat lunak aplikasi (software aplication). Sebuah sistem operasi merupakan perangkat lunak penghubung antara perangkat keras (hardware) dengan perangkat lunak aplikasi tersebut di atas.
Secara singkat, bab pendahuluan ini akan memberikan
gambaran umum perihal komponen-komponen komputer tersebut. Mula-mula, akan
diperkenalkan apa yang dimaksud dengan sistem operasi. Uraian yang lebih
lengkap akan dilanjutkan pada bab berikutnya (Bab 2). Selanjutnya, akan
diuraikan aspek-aspek yang terkait dengan perangkat keras komputer. Aspek-aspek
tersebut diperlukan untuk memahami konsep-konsep sistem operasi yang akan
dijabarkan dalam buku ini. Selain itu, akan dibahas perihal proteksi perangkat
keras, keamanan, serta jaringan komputer. Tentunya tidak dapat diharapkan bahwa
pembahasan yang dalam. Rincian lanjut, sebaiknya dilihat pada rujukan yang
berhubungan dengan "Pengantar Organisasi Komputer", "Pengantar
Struktur Data", serta "Pengantar Jaringan Komputer".
1.1. Pengenalan Sistem Operasi Komputer
1.1.1. Definisi Umum Sistem Operasi
Para pembaca sepertinya pernah mendengar istilah
"sistem operasi". Mungkin pula pernah berhubungan secara langsung
atau pun tidak langsung dengan istilah tersebut. Namun, belum tentu dapat
menjabarkan perihal apa yang sebetulnya dimaksud dengan kata "sistem
operasi". Sebaliknya, banyak pula yang pernah mendengar merek dagang
"WindowsTM 1)" atau pun istilah "GNU/Linux 2)", lalu
mengidentikkan nama Windows TM atau GNU/Linux dengan istilah "sistem
operasi" tersebut. Mendefinisikan istilah "sistem operasi"
mungkin merupakan hal yang mudah, namun mungkin juga merupakan hal yang sangat
ribet!
Sistem operasi merupakan salah satu komponen utama
dari sebuah "sistem komputer". Komponen komputer lainnya ialah
"perangkat keras", "perangkat lunak aplikasi", dan
"para pengguna" (Gambar 1-1). "Perangkat keras" merupakan
penyedia sumber daya untuk komputasi. Perangkat keras merupakan benda konkret
yang dapat dilihat dan disentuh. Perangkat lunak merupakan sarana yang
memberitahukan perangkat keras apa yang harus dikerjakannya. Berbeda dengan
perangkat keras, perangkat lunak merupakan benda abstrak yang hanya dapat
dilihat dari sudut apa yang dilakukannya terhadap perangkat keras. Perangkat
lunak dibagi lagi menjadi dua bagian yaitu "sistem operasi" dan
"program aplikasi". Program aplikasi merupakan perangkat lunak yang
menentukan bagaimana sumber daya digunakan untuk menyelesaikan masalah para
pengguna. Terakhir, istilah "pengguna komputer" yang dimaksud di sini
dapat berupa manusia, program aplikasi lain, atau pun komputer lain.
Secara lebih rinci, sistem operasi didefinisikan
sebagai sebuah program yang mengatur perangkat keras komputer, dengan
menyediakan landasan untuk aplikasi yang berada di atasnya, serta bertindak
sebagai penghubung antara para pengguna dengan perangkat keras. Sistem operasi
bertugas untuk mengendalikan (kontrol) serta mengkoordinasikan pengunaan
perangkat keras untuk berbagai program aplikasi untuk bermacam-macam pengguna.
Dengan demikian, sebuah sistem operasi bukan merupakan bagian dari perangkat
keras komputer, dan juga bukan merupakan bagian dari perangkat lunak aplikasi
komputer, apalagi tentunya bukan merupakan bagian dari para pengguna komputer.
Sistem operasi berada di antara perangkat keras
komputer dan perangkat aplikasinya. Namun, bagaimana caranya menentukan secara
pasti, letak perbatasan antara "perangkat keras komputer" dan
"sistem operasi", dan terutama antara "perangkat lunak
aplikasi" dan "sistem operasi"? Umpamanya, apakah "Internet
Explorer TM3)" merupakan aplikasi atau bagian dari sistem operasi?
Siapakah yang berhak menentukan perbatasan tersebut? Apakah para pengguna? Atau
Apakah perlu didiskusikan habis-habisan melalui milis?
Pengertian dari sistem operasi dapat dilihat dari
berbagai sudut pandang. Dari sudut pandang pengguna, sistem operasi merupakan
sebagai alat untuk mempermudah penggunaan komputer. Dari sudut pandang sistem,
sistem operasi dapat dianggap sebagai alat yang 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 alat I/O. Fungsi ini dikenal
juga sebagai program pengendali (Control Program). Lebih lagi, sistem operasi
merupakan suatu bagian program yang berjalan setiap saat yang dikenal dengan
istilah kernel.
Dari sudut pandang tujuan sistem operasi, sistem
operasi dapat dipandang sebagai alat yang membuat komputer lebih nyaman
digunakan (convenient) untuk menjalankan aplikasi dan menyelesaikan masalah
pengguna. Tujuan lain sistem operasi ialah membuat penggunaan sumber daya
komputer menjadi efisien. Dapat disimpulkan, bahwa sistem operasi merupakan
komponen penting dari setiap sistem komputer. Akibatnya, pelajaran "sistem
operasi" selayaknya merupakan komponen penting dari sistem pendidikan
berbasis "ilmu komputer". Konsep sistem operasi dapat lebih mudah
dipahami, jika juga memahami jenis perangkat keras yang digunakan. Demikian
pula sebaliknya. Dari sejarah diketahui bahwa sistem operasi dan perangkat
keras saling mempengaruhi dan saling melengkapi. Struktur dari sebuah sistem
operasi sangat tergantung pada perangkat keras yang pertama kali digunakan
untuk mengembangkannya. Sedangkan perkembangan perangkat keras sangat
dipengaruhi dari hal-hal yang diperlukan oleh sebuah sistem operasi. Dalam
bagian-bagian berikut ini, akan diberikan berbagai ilustrasi perkembangan dan
jenis sistem operasi beserta perangkat kerasnya.
1.1.2. Sejarah Perkembangan Sistem Operasi
Arsitektur 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
programmer yang sekali gus merangkap menjadi menjadi operator komputer -- juga
bekerja di dalam ruang komputer tersebut.
Walau pun berukuran besar, sistem tersebut diketegorikan sebagai "komputer pribadi" (PC). Siapa saja yang ingin melakukan komputasi; harus memesan/antri untuk mendapatkan alokasi waktu (rata-rata 30-120 menit). Jika ingin melakukan kompilasi 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).
Timbul beberapa masalah pada sistem PC tersebut.
Umpama, alokasi pesanan harus dilakukan dimuka. Jika pekerjaan rampung sebelum
rencana semula, maka sistem komputer menjadi "idle"/tidak tergunakan.
Sebaliknya, jika perkerjaan rampung 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". Masalah ini ditanggulangi
dengan menggabungkan para pengguna kompilator sejenis ke dalam satu kelompok
batch yang sama. Medium semula yaitu punch card diganti dengan tape.
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 kartu job lengkap tersebut kemudian diserahkan kepada para
operator. Perkembangan sistem operasi dimulai dari sini, dengan memanfaatkan
sistem batch (Gambar 1-3). Para operator mengumpulkan job-job yang mirip yang
kemudian dijalankan secara berkelompok. Umpama, job yang memerlukan kompilator
Fortran akan dikumpulkan ke dalam sebuah batch bersama dengan job-job lainnya
yang juga memerlukan kompilator Fortran. Setelah sebuah kelompok job rampung,
maka kelompok job berikutnya akan dijalankan secara otomatis.
Pada perkembangan berikutnya, diperkenalkan konsep
Multiprogrammed System. Dengan sistem ini job-job disimpan di main memory di
waktu yang sama dan CPU dipergunakan bergantian. Hal ini membutuhkan beberapa
kemampuan tambahan yaitu: penyediaan I/O routine oleh sistem, pengaturan memori
untuk mengalokasikan memory pada beberapa Job, penjadualan CPU untuk memilih
job mana yang akan dijalankan, serta pengalokasian perangkat keras lain (Gambar
1-4). Peningkatan lanjut dikenal sistem "bagi waktu"/"tugas
ganda"/"komputasi interaktif" (Time-Sharing System/Multitasking/Interactive
Computing). Sistem ini, secara simultan dapat diakses lebih dari satu pengguna.
CPU digunakan 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 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). CDC 6600 merupakan yang pertama dikenal dengan sebutan
komputer super menjelang akhir tahun 1960-an. Namun prinsip kerja dari sistem
operasi dari semua komputer tersebut lebih kurang sama saja. Komputer klasik
seperti diungkapkan di atas, hanya memiliki satu prosesor. Keuntungan dari
sistem ini ialah lebih mudah diimplementasikan karena tidak perlu memperhatikan
sinkronisasi antar prosesor, kemudahan kontrol terhadap prosesor karena sistem
proteksi tidak, teralu rumit, dan cenderung murah (bukan ekonomis). Perlu
dicatat yang dimaksud satu buah prosesor ini ialah satu buah prosesor sebagai
Central Processing Unit (CPU). Hal ini ditekankan sebab ada beberapa perangkat
yang memang memiliki prosesor tersendiri di dalam perangkatnya seperti VGA Card
AGP, Optical Mouse, dan lain-lain.
1.1.3. Sistem Operasi Komputer Meja (Desktop)
Dalam pembahasan ini, semua yang layak diletakan
di atas meja kerja dikategorikan ke dalam keluarga "komputer meja"
(desktop). Salah satu jenis desktop yang paling mudah dikenal ialah komputer
personal (PC). Pada awalnya, perangkat keras dari jenis komputer ini relatif
sederhana. Sedangkan sistem operasinya hanya mampu secara nyaman, melayani satu
pengguna dengan satu job per saat. Baik komputer meja mau pun sistem
operasinya, sudah sangat popular sehingga mungkin tidak perlu perkenalan lebih
lanjut. Bahkan, mungkin banyak yang belum menyadari bahwa masih terdapat banyak
jenis komputer dan sistem operasi lainnya. Dewasa ini, komputer meja lebih
canggih ribuan kali dibandingkan IBM PC yang pertama (1981, prosesor 8088, 4.77
MHz). Sedangkan PC pertama tersebut, beberapa kali lebih canggih dibandingkan
main-frame tahun 1960-an. Titik fokus perancangan sistem operasi jenis komputer
meja agak berbeda dibadingkan dengan sistem operasi "main-frame".
Pertama, kinerja serta derajat kerumitan komponen perangkat keras komputer meja
jauh lebih sederhana (dan murah). Karena itu, "utilisasi" perangkat
keras tidak lagi menjadi masalah utama. Kedua, para pengguna komputer meja
tidak selalu merupakan "pakar", sehingga kemudahan penggunaan menjadi
prioritas utama dalam perancangan sistem operasinya. Ketiga, akibat dari butir
kedua di atas, "keamanan" dan "perlindungan" kurang
mendapatkan perhatian. Dewasa ini, "semut" (Virus) dan
"cacing" (Worm) telah menjadi masalah utama yang dihadapi para
pengguna sistem operasi komputer meja tertentu. Yang juga termasuk keluarga
komputer meja ini ialah komputer jinjing. Pada dasarnya, tidak terdapat banyak
perbedaan, kecuali:
a. Sistem portable,
ini pada dasarnya mirip dengan sistem komputer meja, namun harganya relatif
lebih mahal.
b. Penggunaan catu
daya internal (baterei) agar catu daya dapat bertahan selama mungkin (rata-rata
3-6 jam).
c. Bobot komputer
yang lebih ringan, serta ukuran komputer yang nyaman untuk dijinjing. Sistem
ini nyaman digunakan untuk bekerja di perjalanan atau pekerjaan yang menuntut
fleksibilitas tempat.
1.1.4. Sistem
Operasi Prosesor Jamak
Pada umumnya, setiap komputer dilengkapi dengan
satu buah prosesor (CPU). Namun, dewasa ini mulai umum, jika sebuat sistem
komputer memiliki lebih dari satu prosesor (multi-procesor). Terdapat
dua jenis sistem prosesor jamak, yaitu Symmetric MultiProcessing (SMP)
dan Asymmetric MultiProcessing (ASMP). Dalam SMP setiap prosesor menjalankan salinan identik dari sistem operasi
dan banyak job yang dapat berjalan di suatu waktu tanpa pengurangan kinerja.
Sementara itu dalam ASMP setiap prosesor diberikan suatu tugas yang spesifik.
Sebuah prosesor bertindak sebagai Master processor yang bertugas menjadualkan
dan mengalokasikan pekerjaan pada prosesor lain yang disebut slave processors.
Umumnya ASMP digunakan pada sistem yang besar. Sistem Operasi Jamak memiliki
beberapa keunggulan [Silbeschatz 2004] :
- Peningkatan throughput karena lebih banyak proses/thread yang dapat dijalankan sekali gus. Perlu diingat hal ini tidak berarti daya komputasinya menjadi meningkat sejumlah prosesornya. Yang meningkat ialah jumlah pekerjaan yang bisa dilakukannya dalam waktu tertentu.
- Economy of Scale: Ekonomis dalam peralatan yang dibagi bersama. Prosesor-prosesor terdapat dalam satu komputer dan dapat membagi peripheral (ekonomis) seperti disk dan catu daya listrik.
- Peningkatan Kehandalan: Jika satu prossor mengalami suatu gangguan, maka proses yang terjadi masih dapat berjalan dengan baik karena tugas prosesor yang terganggu diambil alih oleh prosesor lain. Hal ini dikenal dengan istilah Graceful Degradation. Sistemnya sendiri dikenal bersifat fault tolerant atau fail-soft system.
0 Tanggapan :
Post a Comment