Senin, 11 Oktober 2010

Operasi Sistem Komputer, Struktur Sistem Operasi, dan System Call

Operasi Sistem Komputer



Sistem komputer modern terdiri dari satu atau lebih CPU dan sejumlah device controller yang terhubung melalui BUS dan menyediakan akses berbagi memori (shared memory). CPU dan semua device controller berjalan secara bersamaan sehingga dapat menimbulkan persaingan penggunaan memori. Untuk menjamin berbagi memori secara berurutan, pengontrol memori menyediakan fungsi akses sinkronisasi ke memori.

Pada saat komputer dinyalakan, komputer melakukan inisialisasi oleh program (bootstrap) yang
tersimpan dalam ROM (Read Only Memory) atau EEPROM (Electrically Erasable Programable Read
Only memory) yang biasa disebut firmware melalui perangkat keras komputer. Proses ini menginisialisasi semua aspek sistem, dari register-register CPU ke pengontrol peralatan (device controller) lalu ke pengontrol memori (memory controller). Program bootstrap harus mengetahui bagaimana meload sistem operasi dan meng-eksekusi sistem tersebut. Untuk mengerjakan tujuan ini, bootstrap harus melokasikan dan me-load kernel sistem operasi ke memori kemudian meng-eksekusi proses pertama (init) dan menunggu event-event yang akan terjadi. Kejadian-kejadian (events) biasanya disinyalkan oleh sebuah interupsi (interrupt) yang berasal dari perangkat keras (hardware) atau perangkat lunak (software). Hardware dapat memicu interrupt setiap saat dengan mengirim sinyal ke CPU, biasanya melalui system bus. Sedangkan software memicu interrupt dengan meng-eksekusi operasi khusus (system call atau monitor call). Ketika CPU ter-interrupt, CPU menghentikan proses yang dilakukan dan secara langsung mengeksekusi ke lokasi yang ditentukan, kemudian akan kembali ke proses semula jika proses interupsi sudah diselesaikan.

Struktur Penyimpanan
Program-program komputer harus tersimpan ke dalam memori utama (RAM Random Access Memory) untuk dieksekusi. CPU secara otomatis akan memanggil intruksi-intruksi dari memori utama untuk dieksekusi.
Kelemahan dari memori utama adalah sebagai berikut:
a. memori utama umumnya terlalu kecil untuk memuat semua data dan program secara permanen
b. memori utama merupakan media penyimpan volatile ( kehilangan data ketika komputer dimatikan).
Untuk mengatasi kelemahan tersebut, sistem komputer menyediakan media penyimpan sekunder (secondary storage) misalnya Magnetic Disk, Tape dan media lainnya.

Struktur I/O (Input/Output)
Umumnya sistem operasi mempunyai device driver untuk setiap device controller. Dalam memulai
pengoperasian I/O, device driver me-load register yang tepat melalui device controller. Kemudian device controller memeriksa isi dari register tersebut untuk menentukan jenis aksi apa yang harus dilakukan (contoh pembacaan karakter dari keyboard). Controller mulai mentransfer data dari peralatan ke buffer lokal. Ketika selesai mentransfer, controller memberitahukan kepada device driver bahwa pekerjaan telah selesai melalui interrupt. Device driver kemudian mengembalikan pengontrolan ke sistem operasi atau mengirimkan informasi status.

Dalam format ini operasi interrupt driven I/O hanya melakukan transfer data dengan jumlah yang kecil, bila terjadi pemindahan data yang besar akan terjadi overhead. Solusi masalah dapat dipecahkan melalui penggunaan DMA (Direct Memory Access). Sesudah setting up buffer-buffer, pointer dan penghitung I/O device, device controller mentransfer sejumlah blok data secara langsung ke/dari buffer penyimpannya ke memori tanpa campur tangan CPU. Hanya satu interrupt dibangkitkan per blok, untuk memberitahukan device driver bahwa operasinya selesai, daripada satu interrupt per byte

Struktur Sistem Operasi
Sistem operasi menyediakan lingkungan dimana program dapat dieksekusi. Salah satu aspek terpenting sistem operasi adalah kemampuan untuk melakukan multiprogramming. Multiprogramming meningkatkan pemanfaatkan CPU dengan mengorganisir job (kode atau data) sehingga CPU selalu mempunyai satu job untuk diproses (mengurangi idle). Sistem multiprograming menyediakan lingkungan dimana bermacam sumber daya (CPU, memori dan peralatan lain) digunakan lebih efektif tetapi tidak menyediakan interaksi user terhadap sistem komputer. Time sharing (multitasking) adalah perluasan logical dari multiprogramming. Dalam sistem ini CPU meng-eksekusi banyak job dengan me-switch diantaranya, tetapi switch tersebut dilakukan sesering mungkin, sehingga user dapat berinteraksi pada setiap program selagi berjalan.

Contohnya ketika ada suatu aplikasi (video render) sedang diproses, user dapat melakukan pekerjaan lain misalnya mengetik dokumen di aplikasi word processor.

Pelayanan Sistem Operasi
Pelayanan sistem operasi menyediakan beberapa fungsi yang sangat membantu user, yaitu:
a. User Interface. Bentuk-bentuk user interface yang umum digunakan adalah Command Line Interface (CLI) dimana menggunakan perintah dalam bentuk teks dan sebuah metode untuk memasukinya, Batch Interface dimana perintah dan directive pengontrolnya dimasukan ke dalam satu file yang akan dieksekusi, Graphical User Interface (GUI) dimana interface ini berbentuk grafik.
b. Program Execution. Sistem harus dapat memanggil program ke memori dan menjalankannya.
c. I/O Operation. Program harus dapat mengatur piranti masukan atau keluaran.
d. File-System Manipulation. Program dapat melakukan baca/tulis, pengubahan dan penghapusan file.
e. Communications. Suatu proses terkadang memerlukan informasi dari proses yang lainnya. Komunikasi dapat dilakukan melalui satu mesin komputer atau mesin komputer lain melalui jaringan komunikasi.
f. Error Detection. Sistem Operasi mampu melakukan deteksi kesalahan yang disebabkan oleh perangkat keras maupun perangkat lunak serta mampu menanganinya.

Beberapa fungsi-fungsi yang mengefisiensikan fungsi lain, antara lain:
g. Resource allocation. Dimana beberapa user dan beberapa job berjalan bersama, sumber daya harus dialokasikan untuk setiap mereka.
h. Accounting. Menjaga jalur dimana user menggunakan berapa dan apa jenis sumber daya komputer tersebut.
i. Protection and Security. Perlindungan sangat diperlukan sistem dari berbagai gangguan yang berasal di luar maupun di dalam sistem tersebut. Layanan tersebut dapat berupa login dan password.

System Calls
System Calls menyediakan interface pelayanan-pelayanan yang disediakan oleh sistem operasi, umumnya sebagai rutin-rutin yang ditulis dengan bahasa C atau C++, atau beberapa tugas yang mengakses hardware secara langsung menggunakan bahasa rakitan. Biasanya programmer lebih memilih Application Programming Interface (API) dibandingkan dengan low level programming.
Ada lima jenis system calls utama, yaitu:
a. Process control merupakan system calls yang mengendalikan proses-proses yang berjalan.
b. File manipulation adalah kumpulan system calls yang bertugas untuk melakukan manipulasi file seperti pembacaan, penulisan, penghapusan dan pengubahan.
c. Device manipulation adalah system calls yang mengatur penggunaan peralatan-peralatan yang terhubung pada mesin tersebut.
d. Information maintenance. System calls yang menghubungkan user dengan sistem operasi dalam hal berbagi informasi.
e. Communications. Ada dua model komunikasi yaitu pertukaran informasi dilakukan melalui fasilitas komunikasi antar proses yang disediakan oleh sistem operasi (Message-Passing) dan pertukaran dengan menggunakan memori (shared-memory).

WWW.WIKIPEDIA DAN GOOGLE.COM

Tidak ada komentar:

Posting Komentar