BAB I
PENDAHULUAN
PENDAHULUAN
Tanpa perangkat lunak (software) sebuah komputer sebenarnya sekumpulan besi yang tidak berguna. Dengan software sebuah komputer dapat digunakan untuk menyimpan, mengolah data (memproses) dan mendapatkan kembali informasi yang telah disimpan, menemukan kesalahan dalam program, memainkan games dan menggunakan banyak aktivitas lainnya yang bernilai. Pada umumnya program komputer dapat dibagi menjadi dua kategori, yaitu:
a. Program sistem (system program). Yang berfungsi untuk mengatur operasi dari komputer itu sendiri.
b. Program aplikasi (application program). Yang berfungsi untuk membantu menyelesaikan masalah untuk pemakainya.
1. Blok Diagram Komputer
Gambar. Diagram Blog Komputer |
Dasar yang sangat penting dari semua program sistem adalah operating system yang mengontrol semua sumber daya komputer dan menyediakan landasan sehingga sebuah program aplikasi dapat ditulis atau dijalankan.
Banyak cara / metode yang menyediakan pelindung (sheild) atau sesuatu yang dapat menyembunyikan programmer dari kekomplekan perangkat keras. Salah satunya dengan menentukan / membuat sebuah lapis (layer) perangkat lunak yang mengendalikan komponen pokok perangkat keras, mengatur semua bagian sistem dan menyediakan pemakai dengan antarmuak (interface) / virtual machine yang memudahkan memahami dan memprogram. Lapisan dari perangkat lunak tersebut adalah operating system.
Gambar. Komponen Sistem Komputer |
Keterangan :
ü Perangkat
keras / hardware membentuk dua atau lebih lapis. Lapis yang paling bawah
(physical devices) berisi perangkat fisik, yang terdiri dari integrasi circuit
chips, kabel (wires), power supplies, cathode ray tubes (CRT) dan perangkat
lainnya yang dibuat dan sistem kerjanya merupakan bagian insinyur elektronik.
ü Lapis
berikutnya, software primitive langsung mengontrol peralatan tersebut (physical
devices) dan menyediakan interface (a
cleaner interface) untuk layer diatasnya dikenal dengan microprogram yang
ditempatkan dalam read-only memory (ROM). Sebenarnya microprogram berfungsi
sebagai penerjemah, mengambil (fetching) intruksi bahasa mesin, seperti ADD,
MOVE dan JUMP serta melaksanakan proses-proses kecil yang saling terkait.
Contohnya apabila melaksanakan instruksi ADD, microprogram harus menentukan
dimana angka-angka yang ditambahkan ditempatkan (disimpan sementara),
mengambilnya, menambahkannya dan menyimpan hasilnya disuatu tempat tertentu.
ü Sekumpulan
instruksi yang diterjemahkan microprogram disebut machine language (bahasa
mesin), yang memilikim 50 sampai 300 instruksi yang kenyataannya bukan bagian
dari perangkat mesin semuanya, tetapi pembuat komputer selalu menjelaskannya
dalam manualnya (sejenis buku panduan perangkat kerasnya), sehingga banyak
orang mengira sebagai mesin sesungguhnya. Dalam lapis ini, perangkat masukan/keluaran mengontrol pemuatan nilai ke
dalam register khusus.
ü Fungsi utama dari Operating System adalah
menyembunyikan semua kekomplekan / kerumitan dan memberikan programmer sebuah
kenyamanan, kemudahan, kepraktisan dari instruksi yang digunakan untuk bekerja
dengannya, contohnya, READ BLOCK FROM
FILE adalah konsep / gagasan penyederhanaan daripada harus
berpikir tentang bagaimana memindahkan
head disk secara rinci, menunggu untuk menjadi tenang (posisi istirahat).
ü Diatas lapis Operating System (OS) adalah
untuk menempatkan software system. Dari sini ditemukan penerjemah
perintah (command interpreter/shield), compiler, editor dan application program
independent. Adalah penting untuk menyadari/merealisasikan bahwa program-program
ini dengan pasti bukan bagian dari SO, walaupun secara khas disediakan oleh
pembuat komputer. OS adalah bagian dari software yang dijalankan dalam kernel
mode atau supervisor mode. SO memproteksi dari pemakai yang menganggu pemakain
hardware.
ü Compiler
dan editors dijalankan dalam user mode. Jika seorang tidak suka sebuah compiler
khusus, pemakai bebas menulis miliknya jika dapat memilih dan tentunya tidak
bebas untuk menangani interrupt disk yang merupakan bagian dari OS dan
normalnya akan memproteksi hardware terhadap usaha pemakai untuk
memodifikasinya.
ü Diatas
layer system program adalah application program. Program ini ditulis oleh user
untuk memecahkan masalah khusus, seperti proses pengolahan data, perhitungan
rekayasa atau memainkan sebuah permainan.
2. Sistem Operasi Komputer
q Pengertian Sistem Operasi
Ø
Seperangkat program yang memantau dan mengatur
pemakaian sumber daya komputer (processor, main memory, file, I/O device, dll).
Ø Menjembatani / penghubung antara user
(program user) dengan perangkat keras komputer.
q Fungsi Sistem Operasi
Ø Sebagai
Resource Manager /pengelola seluruh sumber daya system komputer
ü
Mengatur dan mengefisienkan penggunaan selluruh
sumber daya komputer (computer resources)
ü
Tugas utamanya : memantau penggunaan semua
resources; menerapkan aturan (policy); mengalokasikan resources yang diminta;
mengambil kembali (dealokasi) resource
ü Sumber daya pada komputer terdiri dari:
·
Sumber
daya fisik, misalnya : Keyboard, bar-code reader, mouse, joystick, light-pen,
touch-screen, pointing devices, floppy disk drive, harddisk, tape drive,
optical disk, CD ROM drive, CRT, LCD, printer, modem, ethernet card, PCMCIA,
RAM, cache memory, register, kamera, sound card, radio, digitizer, scanner,
plotter, dan sebagainya.
·
Sumber daya abstrak, terdiri dari :Data dan
Program
Ø Sebagai
Extended Machine (Virtual Machine), penyedia layanan
ü Menyembunyikan kompleksitas /
kerumitan pemrograman hardware dari programmer atau user.
ü
Menyajikan fasilitas yang lebih mudah dan
sederhana untuk menggunakan hardware.
q Konsep Sistem
Operasi
Ø
Proses
ü Proses adalah program yang sedang
di-eksekusi.
ü
Proses terdiri dari : Executable program;
program data dan stack; program counter; dll
ü
Pada sistem timesharing secara periodik sistem
operasi menggilir eksekusi proses-proses yang ada, biasanya berdasarkan porsi
waktu CPU.
ü
Ketika suatu proses dihentikan untuk sementara,
maka proses tersebut harus dimulai kembali pada state yang sama dengan state
ketika ia dihentikan.
·
Semua informasi yang berkaitan dengan proses
tersebut harus disimpan. Umumnya informasi tersebut disimpan pada tabel proses
(array atau linked list), satu tabel untuk setiap proses.
·
Tabel proses (process table) adalah tabel yang
berisi informasi tentang semua
proses yang dijalankan.
·
Suatu
proses terdiri dari : address space (core image) dan atribut / informasi pada
tabel proses
ü System call utama dalam pengaturan proses
adalah yang berkaitan dengan pembuatan dan pemberhentian suatu proses.
Contoh :
·
Command interpreter atau shell akan membaca
command yang diketikkan user pada terminal, dan membuat proses yang menjalankan
command tersebut.
·
Bila telah selesai, maka proses akan menjalankan
system call untuk menghentikan dirinya.
ü
Suatu proses dapat men-create proses lainnya yang disebut sebagai child process.
ü Sistem operasi dapat berkomunikasi dengan
suatu proses dengan menggunakan signal.
ü Signal juga dapat digunakan untuk
komunikasi antar proses.
ü
Pada sistem multiprogramming, setiap proses
memiliki user identification (uid) yang berasal dari uid pemilik proses.
Ø
Files
Terdiri dari : Pathname; Working directory; rwx (read, write,
execute) bits protection code; File descriptor / handle; Special file (block
& character); Standard input; Standard output; Standard error; Pipe. SO
mendukung konsep direktori.
Ø
System Calls / API (Aplication Programming
Interface)
ü
Suatu set tata cara pemanggilan di program
aplikasi untuk memperoleh layanan system operasi. Berupa extended instructions / perluasan instruksi yang merupakan
interface / layanan langsung antara program-program dengan sistem operasi.
ü
System calls meng-create, men-delete dan
menggunakan objek-objek yang diatur oleh system operasi, antara lain :
proses-proses dan file-file.
ü
Library procedure meletakkan parameter-parameter
system call pada tempat tertentu dan memberikan instruksi trap untuk memulai
sistem operasi
ü
Trap instruction : ketika diterima oleh sistem
operasi, sistem memeriksa apakah parameter tersebut valid atau tidak
ü
Return form trap : sistem operasi mengembalikan
kontrol ke library procedure
ü
Contoh mekanisme system calls untuk READ pada
program C.
count = read (file, buffer, nbytes)
Ø
Shell
ü
Shell pada Unix merupakan command interpreter
yang walaupun bukan merupakan bagian dari sistem operasi, menggunakan banyak
feature sistem operasi
ü Prompt : standar input, menandakan bahwa
shell siap menerima command
ü
Contoh :
date
date > file
sort < file1 > file2
cat file1 file2 file3 | sort > /dev/lp
ü
Background job : proses yang berjalan sementara
user tetap bisa terus bekerja
q Struktur Sistem
Operasi
Ø
Sistem Monolitik
ü Konsep : “Sistem operasi sebagai kumpulan
prosedur dimana prosedur dapat saling dipanggil oleh prosedur lain di sistem
bila diperlukan”.
ü Kernel
berisi semua layanan yang
disediakan sistem operasi untuk pemakai.
ü
Contoh : Sistem Operasi Unix menggunakan konsep kernel loadable modules, yaitu:
·
Bagian-bagian kernel terpenting berada dimemori utama secara tetap.
·
Bagian-bagian esensi lain berupa modul yang dapat
ditambahkan ke kernel saat diperlukan dan dicabut begitu tidak digunakan lagi
diwaktu jalan (run-time).
ü
The ‘big mess’
ü
Tidak berstruktur
ü
Kernel call / supervisor call
ü
User mode
ü
Kernel mode / supervisor mode
Ø
Sistem Berlapis (Layered System)
ü
Konsep : “Sistem operasi dibentuk secara hirarki
berdasarkan lapisan-lapisan, dimana lapisan-lapisan memberi layanan lapisan
lebih atas”.
ü
Dimaksudkan untuk mengurangi kompleksitas
rancangan dan implementasi system operasi. Tiap lapisan mempunyai fungsional
dan antarmuka I/O antara dua lapisan bersebelahan.
ü
Contoh :
·
Sistem Operasi THE (Technique Hogesschool
Endiche), Djikstra, 1968.
·
Sistem Operasi MULTICS (menggunakan concentric rings).
·
Tabel 1.
Lapisan-lapisan pada Sistem Operasi THE
Layer
|
Function
|
Fungsi
|
5
|
The
Operator
|
Untuk
operator
|
4
|
User
Programs
|
Untuk
aplikasi program pemakai
|
3
|
I/O Management
|
Untuk
menyederhanakan akses I/O pada level atas
|
2
|
Operator-Process
Communication
|
Untuk mengatur komunikasi antar proses
|
1
|
Memory
& Drum Management
|
Untuk
mengatur alokasi ruang memori / drum magnetic
|
0
|
Processor
Allocation & Multiprogramming
|
Untuk
mengatur aloksi pemroses dan switching multiprogramming dan pengaturan
prosesor
|
Keterangan:
Ø Lapisan n memberi layanan untuk lapisan
n+1. Proses-proses di lapisan n dapat meminta layanan lapisan n-1 untuk
memberikan layanan bagi lapisan n+1. Tetapi lapisan n tidak dapat meminta
layanan n+1. Kelanjutan sistem berlapis adalah sistem berstruktur cincin
seperti sistem MULTICS yang terdiri 64 lapisan cincin dimana satu lapisan
mempunyai fungsi berbeda. Lapisan n-1 mempunyai kewenangan lebih dibanding
lapisan n. Untuk meminta layanan lapisan n-1, lapisan n melakukan trap.
Kemudian, lapisan n-1 mengambil kendali sepenuhnya untuk melayani lapisan n.
Ø Sistem dengan Mesin Maya (Virtual
Machines)
ü Konsep : “Awalnya struktur ini
membuat seolah-olah user mempunyai
seluruh komputer dengan simulasi atas pemroses yang digunakan. Sistem operasi
melakukan simulasi mesin nyata. Mesin hasil simulasi digunakan user, mesin maya merupakan tiruan 100%
atas mesin nyata. Semua user diberi ilusi mempunyai satu mesin
yang sama-sama canggih”.
ü
Contoh :
·
Sistem
operasi MS-Windows NT dapat menjalankan aplikasi MS-Dos, OS/2 mode teks, dan
Win 16.
·
Pengembang
Linux membuat DOSEMU agar aplikasi MS-Dos dapat dijalankan di Linux, WINE agar
aplikasi MS-Windows dapat dijalankan di Linux, iBCS agar aplikasi SCO-Unix
dapat dijalankan di Linux.
ü
CP/CMS
ü
VM/370
ü
Virtual Machine Monitor
ü
CMS (Conversational Monitor System)
Gambar. Sistem Virtual Mesin |
Ø
Sistem dengan Client-Server
ü
Konsep : “Server
adalah proses yang menyediakan layanan, dan Client adalah proses yang memerlukan / meminta layanan. Proses client yang memerlukan layanan mengirim
pesan ke server dan menanti pesan
jawaban. Proses server setelah
melakukan tugas yang diminta, mengirim hasil dalam bentuk pesan jawaban ke
proses client. Server hanya menanggapi permintaan client dan tidak memulai percakapan dengan client”.
Gambar. Model Client Server |
Ø
Model Client Server pada distributed system
Ø
Sistem berorientasi objek
ü
Konsep : “Layanan diimplementasikan sebagai
objek”.
ü
Model ini terstruktur dan memisahkan antara
layanan yang disediakan dan implementasinya.
ü
Contoh :
·
Sistem operasi X-kernel
·
Sistem operasi MS-Windows NT telah mengadopsi
beberapa teknologi berorientasi objek, tapi belum secara keseluruhan.
q Layanan Sistem
Operasi Komputer
Ø
Layanan Otomatis : Alokasi sumberdaya; Catatan
pemakaian; Proteksi; Penanganan kekeliruan; Pindah baris; Gulung jendela pada
monitor
Ø
Layanan permintaan pemakaian : Loading;
Mengolah/run; Menyimpan/save; Menghapus/delete
q Jenis Sistem Operasi
Ø
Aspek kegiatan
ü
Pemakai tunggal (single user)
ü
Pemakai jamak (multiuser)
Ø
Berdasarkan jenis-jenisnya
ü
Linux
ü
MS-Dos
ü
MS Windows-NT
ü
MS Windows
ü
Dll
3. Sejarah Perkembangan Sistem Operasi
q Generasi Sistem
Operasi
Ø Generasi ke-1 (1945-1955) : Vacuum
Tubes dan Plugboards
ü
Analytical Engine (Charles Babbage)
ü
Calculating Engine menggunakan vacuum tubes
(Howard Aitken, John von Neumann, J.P Eckert, Konrad Zuse)
ü
Beluam ada bahasa pemrograman
ü
Belum ada sistem operasi, system komputer diberi
instruksi yang harus dikerjakan langsung.
ü
Operasi menggunakan plugboard
ü
Pengenalan punched card
Ø Generasi Ke-2 (1955-1965) : Transistors
dan Batch System
ü
Tetap
belum dilengkapi system operasi. Tetapi beberapa fungsi dasar SO sudah
ada.
ü
Pengenalan transistor untuk komputer
ü
Pemisahan fungsi personil :Designer , Operator,
Programmer dan Maintenance personel
ü Pengenalan job (program atau
seperangkat program)
ü Penggunaan bahasa FORTRAN, Assembeler
ü Penerapan Batch System
ü Pengoperasian Off-Line
ü
Penggunaan mesin-mesin besar untuk
kalkulasi sains dan engineering
ü Typical operating system : FMS (Fortran
Monitor System) dan IBSYS (sistem operasi untuk IBM 7094)
Ø
Generasi Ke-3 (1965-1980) : IC dan
Multiprogramming
ü IBM mengenalkan IBM 360 dengan sistem
operasi OS/360
ü
Menggunakan Integrated Circuit (IC)
ü Dapat menangani komputasi sains dan
komersial
ü
Mengadopsi konsep ‘one family’
ü Sistem operasi berukuran besar dan
kompleks
ü Mengenalkan multiuser, komputer memiliki
resource yang dapat digunakan oleh banyak orang sekaligus
ü Mengenalkan multiprogramming, komputer
melayani banyak proses sekaligus pada waktu yang bersamaan dengan menerapkan
partisi memori menjadi beberapa bagian memori dengan satu bagian memori untuk
satu job berbeda. Saat satu
job menunggu operasi I/O selesai, job lain dapat menggunakan proses.
Partisi Memori
Job 3
Job 2
Job 1
Sistem operasi
ü
Mengenalkan Time Sharing (berbagi waktu), tiap
pemakai mempunyai satu terminal online dengan pemroses hanya memberi layana
pada pemakai yang aktif secara bergantian secara cepat. Pemakai akan merasa
dilayani terus menerus. Padahal sebenarnya secara bergantian.
ü
Mengenalkan SPOOLING (Simultaneous Peripheral
Operation On Line), membuat peripheral seolah-olah dapat digunakan bersamaan,
dapat diaksis secara simultan yaitu dengan cara menyediakan beberapa partisi
memori. Saat terdapat permintaan layanan peripheral, langsung diterima dan data
disimpan lebih dulu di memori yang disediakan berupa antrian kemudian
dijadwalkan agar secara nyata dilayani peripheral.
ü
Sistem time sharing pertama, CTSS, dikembangkan
di MIT
ü
Usaha pengembangan ‘computer utility’ mesin yang
dapat menunjang ratusan time sharing user
ü Pengembangan komputer MINI (DEC-PDP-1 s/d
PDP-11)
ü Ken Thompson mengembangkan versi satu
pemakai (single user) dari MULTICS (MULTIplex and Computing Services)
ü
UNIX (Uniplexed Information and Computing
Services)
Ø Generasi Ke-4 (1980-1990) : LSI,
VLSI, dan Personal Computer (PC)
ü Pengembangan LSI dan VLSI melahirkan
PC dan Workstation
ü Perangkat
lunaknya ‘user friendly’
ü
Dua sistem operasi yang dominan :
·
MS-DOS (pada IBM-PC dengan CPU Intel 8088,
80286, 80386, 80486)
·
UNIX (pada Non-Intel computer dan workstation)
ü
RISC Chips
ü
Network Operating System
ü
Distributed Operating System
Ø
Generasi Ke-5 (1990-sekarang) : VLSI, ULSI an
teknologi Nano Second, Internet, Multimedia
ü
Pengembangan VLSI an ULSI melahirkan PC yang
berbasis Pentium untuk server maupun workstation
ü
Pengembangan sistem operasi windows
ü
Pengembangan internet dan multimedia
ü
Pengembangan aplikasi yang berbasis Web atau WWW
ü
dll.
q LinuxCONTOH KASUS :
q MS
Dos
Sistem operasi MS Dos berisi :
Ibmbio.com, yaitu disk dan character
I/O System
IO.sys, yaitu disk dan file manager
MSDOS.sys, yaitu command processor,
shellprimitif
Sistem operasi kompatibel dengan
CP/M, dengan peningkatan alokasi disk, lebih cepat dan mendukung shell script
primitif disebut batch files.
q MS
Windows
Microsoft
Windows 95 merupakan sistem operasi Windows yang terintegrasi dan lengkap mulai
dengan fungsi-fungsi dasar yang sekarang ada pada MS Windows, Windows dan
Windows for Workgroup.
Agar
PC lebih mudah dipakai, diberikan shell
baru. Plug and Play (PnP) yang
terintegrasi kedalam sistem operasi, termasuk wizard untuk memandu para pemakai melalui sistem operasi dan
memberikan interface pemakai yang
konsisten untuk seluruh komponen sistem operasi dan spasi nama. Kecepatan dan
daya tambahan dari sistem operasi 32-bit modern dengan preemptive multitasking, thread dan plaltform untuk generasi baru aplikasi 32-bit.
Windows
95 adalah sistem operasi lengkap yang tidak dibatasi oleh MS Dos dan punya
semua manfaat dari sistem operasi grafis yang lengkap yang ada pada dirinya.
Dalam hal konektivitas baik dalam LAN, WAN maupun nobile dial-up dibuat konektivitas ke sumber daya yang bersifat remote semudah hubungan ke sumber daya
lokal. Dan dimasukkan akses ke informasi elektronik untuk surat elektronik dan
layanan on-line. Dan juga Windows 95
dibuat kompatibel dengan software dan hardware yang dimiliki pemakai pada saat
ini.
Walaupun
Microsoft mengeluarkan sistem operasi baru dengan format grafis dan
ber-arsitektur 32 bit, bukan berarti sistem operasi ini mutlak dipakai. Ini
hanya sebagai sistem operasi alternatif yang sudah ada, seperti UNIX, IBM
OS2/Warp, Oracle, IBM AS/400, dan lain-lain.
0 komentar:
Posting Komentar