Makalah Sistem Operasi
/
0 Comments
Puji syukur
kehadirat Allah SWT yang Maha Pengasih lagi Maha Penyayang, karena berkat
rahmat dan hidayah-Nya, saya bisa menyusun dan menyajikan makalah yang berisi
tentang jaringan komputer sebagai salah satu tugas kuliah Pengetahuan
Komputer. Penulis mengucapkan terima kasih kepada berbagai pihak yang
telah memberikan dorongan dan motivasi.
Penulis menyadari bahwa dalam
penyusunan makalah ini masih terdapat banyak kekurangan dan jauh dari
kesempurnaan. Oleh karena itu, penulis mengharapkan kritik serta saran yang
membangun guna menyempurnakan makalah ini dan dapat menjadi acuan dalam
menyusun makalah-makalah atau tugas-tugas selanjutnya.
Penulis juga memohon maaf apabila
dalam penulisan makalah ini terdapat kesalahan pengetikan dan kekeliruan sehingga
membingungkan pembaca dalam memahami maksud penulis.
Palopo, 02 November 2016
Penulis
BAB I
PENDAHULUAN
1.1
Latar
Belakang
Perkembangan
zaman dewasa ini sudah maju dengan pesat, banyak teknologi yang sudah
dikembangkang dari sebuah sistem kecil yang ada pada hardware yang besar hingga
menjadi sebuah sistem yang lebih besar yang ada pada hardware yang lebih kecil.
Perkembangan tersebut sangat terlihat pada perkembangan sistem komputer yang
sudah sangat maju, baik itu dari hardware, software atau perangkat pendukung
lainnya.
Dewasa ini sistem komputer terdiri dari CPU (Central Processing Unit); serta sejumlah
device controller yang dihubungkan
melalui bus yang menyediakan akses ke
memori. Setiap device controller
bertugas mengatur perangkat yang tertentu (contohnya disk drive, audio device,
dan video display). CPU dan device controller dapat dijalankan
secara bersamaan, namun demikian diperlukan mekanisme sinkronisasi untuk
mengatur akses ke memori.
Pada saat pertama kali dijalankan
atau pada saat boot, terdapat sebuah
program awal yang mesti dijalankan. Program awal ini disebut program bootstrap. Program ini berisi semua
aspek dari sistem komputer, mulai dari register CPU, device controller, sampai isi memori.
Interupsi
merupakan bagian penting dari sistem arsitektur komputer. Setiap sistem
komputer memiliki mekanisme yang berbeda. Interupsi bisa terjadi apabila
perangkat keras (hardware) atau
perangkat lunak (software) minta
"dilayani" oleh prosesor. Apabila terjadi interupsi maka prosesor
menghentikan proses yang sedang dikerjakannya, kemudian beralih mengerjakan service routine untuk melayani interupsi
tersebut. Setelah selesai mengerjakan service
routine maka prosesor kembali melanjutkan proses yang tertunda.
Banyak
yang sudah berkembang dari sebuah sistem komputer, tapi sistem komputer yang
baru dan lebih berkembang harus didukung oleh sistem operasi yang lebih baik
juga, sehingga kinerja dari sistem komputer tersebut dapat berjalan dengan
baik. Dalam sistem operasi juga terdapat beberapa bagian yang perlu diketahui
dan dipelajari seperti halnya sistem komputer, baik itu dari segi penjadwalan
proses atau manajemen memori yang ada pada sistem operasi.
1.2 Rumusan Masalah
1. Apa Pengertian
Sistem Operasi?
2. Bagaimana
Sejarah Sistem Operasi?
3. Apa Tujuan dan
Fungsi Sistem Operasi?
4. Apa saja
macam-macam Sistem Operasi?
5. Bagaimana
Penjadwalan Proses?
6. Bagaimana
Tahapan Proses?
1.3
Tujuan
Setelah mempelajari materi dalam bab ini, mahasiswa
diharapkan mampu:
7. Memahami
komponen pada sistem operasi, manajemen yang diatur sistem operasi dan
layanan pada sistem operasi.
8. Mengetahui beberapa struktur sistem operasi.
9. Agar
dapat merancang sendiri atau memodifikasi sistem operasi yang telah ada sesuai
kebutuhan khusus kita.
BAB II
PEMBAHASAN
2.1 Pengertian Sistem Operasi
Dalam Ilmu komputer, Sistem
operasi atau dalam bahasa Inggris: operating system atau OS adalah perangkat lunak sistem yang
bertugas untuk melakukan kontrol eksekusi program aplikasi dan manajemen perangkat keras serta
operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti
program-program pengolah kata dan browser web.
Sistem
Operasi juga bertindak sebagai antar-muka antara pengguna dengan perangkat
keras komputer. Sistem Operasi mengandung sejumlah program, dan beberapa
program tergolong sebagai utilitas. Kumpulan program ini menyediakan
layanan kontrol terhadap sumber daya komputer.Secara khusus, sistem operasi
menangani kontrol dan penggunaan sumber daya perangkat keras, seperi disc-room,
memory, processor, dan perangkat tambahan lain, seperti mouse,
printer, dan lain-lain.
2.2
Sejarah
Sistem Operasi
Perkembangan sistem operasi
dipengaruhi oleh perkembangan
hardware. Sistem operasi mulai dikembangkan sejak ±40 tahun lalu,
yaitu:
1.
Generasi ke-nol (1940).
a.
Komponen utama tabung hampa
udara;
b.
Sistem komputer belum menggunakan
sistem operasi;
c.
Sistem operasi komputer dilakukan
secara manual melalui plugboard, dan hanya bisa digunakan untuk
menghitung (+,-, dan *).
2.
Generasi pertama (1950).
a.
Komponen utama transistor;
b.
Sistem operasi berfungsi terutama
sebagai pengatur pergantian antar job agar waktu instalasi job
berikutnya lebih efisien. Dalam masa ini muncul konsep batch system (semua
job sejenis dikumpulkan jadi satu);
c.
Input pemakai punch card.
3.
Generasi kedua (1960).
a.
Komponen utama IC;
b.
Berkembang konsep-konsep:
1)
Multiprogramming, satu prosesor mengerjakan
banyak program yang ada di memori utama;
2)
Multiprosesing, satu job dikerjakan oleh banyak
prosesor berguna untuk meningkatkan utilitas;
3)
Spooling
Simultaneous Peripheral Operation On Line, bertindak sebagai buffer
(penyangga) saja, dan mampu menerima pesanan meskipun belum akan dikerjakan;
4)
Device Indipendence, masing-masing komponen memiliki sifat yang saling
berbeda (misal: tiap-tiap printer memiliki driver);
5)
Time
Sharing atau Multitasking, sistem bagi
waktu yang diberikan oleh CPU terhadap berbagai job yang sedang dijalankan.
6) Real-time system, berguna sebagai kontrol bagi
mesin-mesin.
4.
Generasi ketiga (1970)
a.
Komponen utama VLSI (Very Large Scale Integrated Circuit);
b.
Ditandai dengan berkembangnya
konsep general purpose system, sehingga sistem operasi menjadi sangat
kompleks, mahal dan sulit untuk dipelajari;
5.
Generasi keempat (pertengahan
1970-an hingga sekarang).
a.
PC makin populer;
b.
Ditandai dengan berkembangnya
sistem operasi untuk jaringan komputer dengan tujuan: data sharing, hardware
sharing, dan program sharing;
c.
User interface semakin user friendly
tanpa harus mengorbankan unjuk kerja.
2.3 Tujuan dan Fungsi
Sistem Operasi
1.
Tujuan
Sistem Operasi
Sistem
operasi diharapkan mempunyai dua tujuan yaitu:
a.
Kenyamanan :
suatu sistem operasi membuat komputer lebih mudah untuk digunakan.
b.
Efesien :
suatu sistem operasi memungkinkan sumber daya sistem komputer dapat digunakan
dengan cara yang efesien.
2.
Fungsi
Sistem Operasi
System operasi memiliki tiga
fungsi utama yaitu manajemen proses, manajemen sumber daya dan manajemen data.
a.
Manajemen proses mencakup
penyiapan, penjadwalan dan pemantauan proses pada computer. Proses adalah
program yang sedang dijalankan.
b.
Manajemen sumber daya berkaitan
dengan pengendalian terhadap pemakaian sumber daya dalam system computer yang
dilakukan oleh perangkat lunak system maupun pereangkat lunak aplikasi yang
sedang dijalankan oleh computer. Yang dimaksudkan sumber daya disini adalah
komponen perangkat keras dalam computer seperti CPU, memori utama dan peranti
masukan/keluaran.
c.
Manajemen data berupa
pengendalian terhadap data masukan/keluaran, termasuk dalam hal pengalokasian
dalam peranti penyimpan sekunder maupun memori utama.
Selain tiga fungsi utama
tersebut, system operasi umumnya juga mempunyai sarana untuk mengelola
keamanan. Ciri system operasi yang mempunyai fasilitas manajemen keamanan
adalah mengharuskan pemakai memasukan nama pengguna dan password (kata rahasia)
sebelum mengakses computer.
Dan secara
garis besar, fungsi utama dari sistem
operasi adalah sebagai suatu sistem yang digunakan untuk mengarahkan dan
mengatur kinerja dari sebuah komputer, menyelesaikan berbagai masalah-masalah
dalam komputer, dan menjaga bagian-bagian dari sistem agar tetap aman.
2.4
Macam-Macam Sistem Operasi
Dalam
perkembangan sistem operasi, sudah banyak perusahaan-perusahaan atau para
programer yang membuat dan mengembangkan sistem operasi sendiri, baik itu
personal atau general. Tapi pada saat ini terdapat beberapa sistem operasi yang
sudah sangat dikenal yaitu:
1.
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 7 (Seven) yang dirilis pada
tahun 2009, dan Windows Orient yang akan dirilis pada tahun 2014)).
2.
Keluarga Unix yang
menggunakan antarmuka sistem operasi POSIX, seperti SCO UNIX, keluarga BSD (Berkeley
Software Distribution), GNU/Linux, MacOS/X (berbasis kernel BSD yang
dimodifikasi, dan dikenal dengan nama Darwin) dan GNU/Hurd.
3.
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.4
(Tiger). Awal tahun 2007 direncanakan peluncuran versi 10.5 (Leopard).
4.
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.
Terdapat
pula beberapa sistem operasi tersebut yang bisa digunakan dalam sebuah
handphone atau mobile phone. Seperti halnya system operasi pada komputer,
sistem operasi ponsel adalah software
utama yang melakukan menejemen dan kontrol terhadap hardware secara
langsung serta menejemen dan mengotrol software-soft lain sehingga
software-software lain tersebut dapat bekerja. Sehingga suatu system operasi
ponsel (mobile operating system) akan bertanggung jawab dalam mengoperasikan
berbagai fungsi dan fitur yang tersedia dalam perangkat ponsel tersebut
seperti, skedulling task, keyboard, WAP, email, text message, sinkronisasi dengan
aplikasi dan perangkat lain, memutar musik, camera, dan mengontrol fitur-fitur
lainnya. Banyak perusahaan ponsel yang membenamkan system operasi dalam
produknya baik pada PDA, Smartphone maupun handphone.
2.5
Penjadwalan Proses
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.
Penjadwalan
proses merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang
berkaitan dengan urutan kerja yang dilakukan sistem komputer.
Tujuan dari
multiprogramming adalah untuk memiliki sejumlah proses yang berjalan pada
sepanjang waktu, untuk memaksimalkan penggunaan CPU. Tujuan dari pembagian
waktu adalah untuk mengganti CPU diantara proses-proses yang begitu sering
sehingga user dapat berinteraksi dengan setiap program sambil CPU bekerja.
Untuk sistem uniprosesor, tidak akan ada lebih dari satu proses berjalan. Jika
ada proses yang lebih dari itu, yang lainnya akan harus menunggu sampai CPU
bebas dan dapat dijadwalkan kembali.
Terdapat
empat jenis penjadwalan pada sistem operasi:
1.
Penjadwalan
Jangka-Panjang
Penjadwalan
jangka-panjang merupkan keputusan untuk menambahkan program yang akan
dieksekusi ke pool. Penjadwalan jangka-panjang menentukan program yang mana
diakui sebagai sistem untuk diproses. Jadi, penjadwalan jangka-panjang
mengontrol derajat multiprogramming (jumlah proses yang berada di dalam
memori). Sekali diakui, sebuah tugas atau program pengguna menjadi proses dan
ditambahkan ke antrian untuk penjadwalan-pendek. Dalam beberapa sistem, proses
diciptakan baru saja dimulai pada kondisi swapped-out, dakan kasus dimana
proses ditambahkan ke antrian untuk penjadwalan jangka-menengah.
2.
Penjadwalan
Jangka-Menengah
Penjadwalan
jangka-menengah merupakan suatu keputusan untuk menambah banyaknya
proses-proses itu secara parsial atau secar penuh didalam memori utama.
Penjadwalan jangka-menengah menjadi bagian dari pertukaran fungsi. Umumnya,
keputusan swapping-in didasarkan pada kebutuhan untuk mengatur derajat
multiprogramming. Pada sisetm yang tidak menggunakan memori sebetulnya,
manajemen memori adalah juga merupakan suatu masalah. Jadi keputusan
swapping-in akan memperlihatkan persyaratan memori dari proses swapped-out.
3.
Penjadwalan
Jangka-Pendek
Penjadwalan
Jangka-Pendek merupakan keputusan sebagai proses tersedia yang mana yang akan
dieksekusi oleh prosesor. Penjadwalan tingkat tinggi mengeksekusi relatif
jarang dan membuat keputusan secar garis besar saja tnentang diambilnya atau
tidaknya suatu proses baru, dan mana yang akan diambil. Penjadwalan
jangka-pendek ayng juga mengenal sebagai dispatcher sering kali mengeksekusi
dan membuat keputusan yang lebih detail tentang tugas yang akan dieksekusi
berikutnya.
Sebagaimana proses
bekerja, maka proses tersebut merubah state (keadaan statis/asal). Status dari
sebuah proses didefinisikan dalam bagian oleh aktivitas yang ada dari proses
tersebut. Tiap proses mungkin adalah satu dari keadaan berikut ini:
1)
New:Proses sedang
dikerjakan/dibuat.
2)
Running: Instruksi
sednag dikerjakan.
3)
Waiting:Proses sedang
menunggu sejumlah kejadian untuk terjadi (seperti sebuah penyelesaian I/O atau
penerimaan sebuah tanda/signal).
4)
Ready: Proses sedang
menunggu untuk ditugaskan pada sebuah prosesor.
5)
Terminated: Proses telah
selsesai melaksanakan tugasnya/mengeksekusi.
Nama-nama tersebut
adalah arbitrer/berdasar opini, istilah tersebut bervariasi disepanjang sistem
operasi. Keadaan yang mereka gambarkan ditemukan pada seluruh sistem. Namun,
sistem operasi tertentu juga lebih baik menggambarkan keadaan /status proses.
Adalah penting untuk menyadari bahwa hanya satu proses dapat berjalan pada
prosesor manapun pada waktu kapanpun. Namun, banyak proses yang dapat ready
atau waiting. Keadaan diagram yang berkaitan dangan keadaan tersebut.
Ketika proses memasuki sistem, mereka diletakkan dalam antrian job. Antrian
ini terdiri dari seluruh proses dalam sistem. Proses yang hidup pada memori
utama dan siap dan menunggu/wait untuk mengeksekusi disimpan pada sebuah daftar
bernama ready queue. Antrian ini biasanya disimpan sebagai daftar penghubung.
Sebuah header ready queue berisikan penunjuk kepada PCB-PCB awal dan akhir.
Setiap PCB memiliki pointer field yang menunjukkan proses selanjutnya dalam
ready queue.
Juga ada antrian lain dalam
sistem. Ketika sebuah proses mengalokasikan CPU, proses tersebut
berjalan/bekerja sebentar lalu berhenti, di interupsi, atau menunggu suatu
kejadian tertentu, seperti penyelesaian suatu permintaan I/O. Pada kasus ini
sebuah permintaan I/O, permintaan seperti itu mungkin untuk sebuah tape drive
yang telah diperuntukkan, atau alat yang berbagi, seperti disket. Karena ada
banyak proses dalam sistem, disket bisa jadi sibuk dengan permintaan I/O untuk
proses lainnya. Maka proses tersebut mungkin harus menunggu untuk disket
tersebut. Daftar dari proses yang menunggu untuk peralatan I/O tertentu disebut
sebuah device queue.
2.6
Manajement Memori
Bagian
operating sistem yang mengatur memori disebut dengan memory manager. Pemakaian
memori (manajemen memori dan organisasi) perlu dilakukan karena hal tersebut
sangat mempengaruhi kinerja komputer, sehingga memiliki fungsi dan tugas
penting dan kompleks yaitu berkaitan dengan :
a.
Memori utama
sebagai sumber daya yang harus dialokasikasikan dan dipakai bersama di antara
sejumlah proses yang aktif, sehingga dapat memanfaatkan pemroses dan fasilitas
masukan/keluaran secara efisien, sehingga memori dapat menampung sebanyak
mungkin proses.
b.
Upaya agar
pemogram atau proses tidak dibatasi kapasitas memori fisik di sistem komputer.
1.
Swapping
Sebuah proses harus berada di memori untuk dieksekusi. Proses juga
dapat ditukar (swap) sementara keluar memori ke backing store dan
kemudian dibawa kembali ke memori untuk melanjutkan eksekusi.
Backing store berupa disk besar dengan
kecepatan tinggi yang cukup untuk meletakkan copy dari semua memory image untuk
semua user, sistem juga harus menyediakan akses langsung ke memory image tersebut.
Contohnya, sebuah lingkungan multiprogramming dengan penjadwalan CPU
menggunakan algoritma round-robin. Pada saat waktu kuantum berakhir,
manajer memori akan memulai untuk menukar proses yang baru selesai keluar dan
menukar proses lain ke dalam memori yang dibebaskan. Pada waktu berjalan,
penjadwal CPU (CPU scheduler) akan mengalokasikan sejumlah waktu untuk
proses yang lain di memori. Ketika masing-masing proses menyelesaikan waktu
kuantum-nya, akan ditukar dengan proses yang lain.
Kebijakan penukaran juga
dapat digunakan pada algoritma penjadwalan berbasis prioritas. Jika proses
mempunyai prioritas lebih tinggi datang dan meminta layanan, memori akan swap
out proses dengan prioritas lebih rendah sehingga proses dengan prioritas
lebih tinggi dapat di-load dan dieksekusi.
Umumnya sebuah proses
yang di-swap out akan menukar kembali ke ruang memori yang sama dengan
sebelumnya. Jika proses pengikatan dilakukan pada saatload-time, maka
proses tidak dapat dipindah ke lokasi yang berbeda. Tetapi, jika pengikatan
pada saat execution-time , maka kemungkinan proses ditukar ke ruang
memori yang berbeda, karena alamat fisik dihitung selama waktu eksekusi.
Bila CPU scheduler memutuskan
untuk mengeksekusi proses, OS memanggil dispatcher. Dispatcher memeriksa untuk
melihat apakah proses selanjutnya pada ready queue ada di memori.
Jika tidak dan tidak terdapat cukup memori bebas, maka dispatcher swap out sebuah
proses yang ada di memori dan swap in proses tersebut. Kemudian reload
register ke keadaan normal.
Teknik swapping yang sudah dimodifikasi
ditemui pada beberapa sistem misalnya Linux, UNIX dan Windows.
2.
Alokasi Berurutan
Memori utama biasanya
dibagi ke dalam dua partisi yaitu untuk:
a.
Sistem operasi biasanya
diletakkan pada alamat memori rendah dengan vektor interupsi
b.
Proses user yang
diletakkan pada alamat memori tinggi.
Alokasi proses user pada
memori berupa single partition allocation atau multiple partition
allocation.
3.
Single Partition
Allocation
Pada single partition allocation diasumsikan sistem operasi
ditempatkan di memori rendah dan proses user dieksekusi di memori tinggi. Kode
dan data sistem operasi harus diproteksi dari perubahan tak terduga oleh
user proses. Proteksi dapat dilakukan dengan menggunakan register
relokasi (relocation register) dan register limit (limit register).
Register relokasi berisi nilai dari alamat fisik terkecil sedangkan register
limit berisi jangkauan alamat logika dan alamat logika harus lebih kecil dari
register limit. MMU memetakan alamat logika secara dinamis dengan menambah
nilai pada register relokasi.
4.
Multiple Partition
Allocation
Pada multiple partition allocation, mengijinkan memori user
dialokasikan untuk proses yang berbeda yang berada di antrian input (input
queue) yang menunggu dibawa ke memori.
Terdapat dua skema yaitu
partisi tetap (fixed partition) dimana memori dibagi dalam
sejumlah partisi tetap dan setiap partisi berisi tepat satu proses. Jumlah
partisi terbatas pada tingkat multiprogramming. Digunakan oleh IBM
OS/360 yang disebut Multiprogramming with a Fixed number of Task (MFT).
Skema yang kedua adalah partisi dinamis (variable partition) merupakan
MFT yang digeneralisasi yang disebut Multiprogramming with a Variable
number of Tasks (MVT). Skema ini digunakan terutama pada lingkungan
batch.
Pada MVT, sistem operasi
menyimpan tabel yang berisi bagian memori yang tersedia dan yang digunakan.
Mula-mula, semua memori tersedia untuk proses user sebagai satu blok
besar (large hole). Lubang (hole) adalah blok yang tersedia di
memori yang mempunyai ukuran berbeda. Bila proses datang dan memerlukan memori,
dicari lubang (hole) yang cukup untuk proses tersebut. Bila ditemukan memory
manager mengalokasikan sejumlah memori yang dibutuhkan dan menyimpan
sisanya untuk permintaan berikutnya. Sistem operasi menyimpan informasi tentang
partisi yang dialokasikan dan partisi yang bebas (hole).
5.
Fragmentasi
Fragmentasi Eksternal terjadi pada situasi
dimana terdapat cukup ruang memori total untuk memenuhi permintaan,
tetapi tidak dapat langsung dialokasikan karena tidak berurutan.
Fragmentasi eksternal dilakukan pada algoritma alokasi dinamis, terutama strategi
first-fit dan best-fit.
Fragmentasi Internal terjadi pada situasi
dimana memori yang dialokasikan lebih besar dari pada memori yang
diminta tetapi untuk satu partisi tertentu hanya berukuran kecil
sehingga tidak digunakan. Pada multiple partition, fragmentasi internal
mungkin terjadi pada situasi berikut. Misalnya terdapat lubang 18464 byte,
dan proses meminta 18462 byte. Alokasi dilakukan sesuai permintaan maka
sisa lubang 2 byte. Penyimpanan lubang ini akan memerlukan memori lebih besar
dari lubang itu sendiri. Pendekatannya adalah dengan mengalokasikan lubang
yang sangat kecil sebagai bagian dari permintaan yang besar.
6.
Paging
a.
Konsep Dasar Paging
Paging merupakan kemungkinan solusi untuk permasalahan fragmentasi
eksternal dimana ruang alamat logika tidak berurutan; mengijinkan sebuah proses
dialokasikan pada memori fisik yang terakhir tersedia. Memori fisik dibagi ke
dalam blok-blok ukuran tetap yang disebut frame. Memori logika juga
dibagi ke dalam blokblok dg ukuran yang sama yang disebut page. Semua
daftar frame yang bebas disimpan. Untuk menjalankan program dengan
ukuran n page, perlu menemukan n frame bebas dan
meletakkan program pada frame tersebut. Tabel page (page table)
digunakan untuk menterjemahkan alamat logika ke alamat fisik.
Setiap alamat
dibangkitkan oleh CPU dengan membagi ke dalam 2 bagian yaitu :
1)
Page number (p) digunakan
sebagai indeks ke dalam table page (page table). Page table berisi
alamat basis dari setiap page pada memori fisik.
2)
Page offset (d) mengkombinasikan alamat
basis dengan page offset untuk mendefinisikan alamat memori fisik yang
dikirim ke unit memori.
b.
Implementasi Sistem
Paging
Setiap sistem operasi mempunyai metode sendiri untuk menyimpan
tabel page. Beberapa sistem operasi mengalokasikan sebuah tabel page untuk
setiap proses. Pointer ke tabel page disimpan dengan nilai
register lainnya dari PCB. Pada dasarnya terdapat 3 metode yang berbeda
untuk implementasi tabel page :
1)
Tabel page diimplementasikan
sebagai kumpulan dari “dedicated” register. Register berupa
rangkaian logika berkecepatan sangat tinggi untuk efisiensi translasi alamat
paging. Contoh : DEC PDP-11. Alamat terdiri dari 16 bit dan ukuran page 8K.
Sehingga tabel page berisi 8 entri yang disimpan pada register.
Penggunaan register memenuhi jika tabel page kecil (tidak lebih dari 256
entry).
2)
Tabel page disimpan
pada main memori dan menggunakan page table base registe” (PTBR) untuk
menunjuk ke tabel page yang disimpan di main memori. Penggunakan memori
untuk mengimplementasikan tabel page akan memungkinkan tabel page sangat
besar (sekitar 1 juta entry). Perubahan tabel page hanya mengubah PTBR
dan menurunkan waktu context-switch. Akan tetapi penggunaan metode ini
memperlambat akses memori dengan faktor 2. Hal ini dikarenakan untuk mengakses
memori perlu dua langkah : pertama untuk lokasi tabel page dan kedua
untuk lokasi alamat fisik yang diperlukan.
3)
Menggunakan perangkat
keras cache yang khusus, kecil dan cepat yang disebut associative
register atau translation look-aside buffers (TLBs). Merupakan
solusi standar untuk permasalahan penggunaan memori untuk implementasi tabel page.
Sekumpulan associative register berupa memori kecepatan tinggi. Setiap
register terdiri dari 2 bagian yaitu key dan value. Jika associative
register memberikan item, akan dibandingkan dengan semua key secara
simultan. Jika item ditemukan nilai yang berhubungan diberikan. Model ini
menawarkan pencarian cepat tetapi perangkat keras masih mahal. Jumlah entry
pada TLB bervariasi antara 8 s/d 2048. Mekanisme penggunaan associative
register adalah sebagai berikut :
a.
Associative register berisi hanya beberapa
entry tabel page (sampai dengan ukuran maksimum).
b.
Jika memori logika
dibangkitkan oleh CPU, nomor page berupa sekumpulan associative register
yang berisi nomor page dan nomor frame yang berkorespondensi.
c.
Jika nomor page ditemukan
pada associative register, nomor frame segera tersedia dan
digunakan untuk mengakses memori.
d.
Sebaliknya, jika nomor page
tidak ditemukan pada associative register, acuan memori ke tabel page
harus dibuat.
e.
Jika nomor frame tersedia,
maka dapat menggunakannya untuk mengakses ke memori yang tepat.
f.
Kemudian ditambahkan
nomor page dan nomor frame ke associative register sehingga
akan mudah ditemukan pada acuan berikutnya.
g.
Setiap kali tabel page
baru dipilih, TLB harus dihapus untuk menjamin eksekusi proses
berikutnya tidak menggunakan informasi translasi yang salah.
7.
Segmentasi
Kerugian utama dari paging adalah terdapat perbedaan antara
pandangan user mengenai memori dan memori fisik aktual.
a.
Konsep Dasar Segmentasi
Konsep segmentasi adalah user atau programmer tidak memikirkan
sejumlah rutin program yang dipetakan ke main memori sebagai array linier dalam
byte tetapi memori dilihat sebagai kumpulan segmen dengan ukuran berbeda-beda,
tidak perlu berurutan diantara segment tersebut. Segmentasi adalah skema
manajemen memori yang memungkinkan user untuk melihat memori tersebut. Ruang
alamat logika adalah kumpulan segmen.
Setiap segmen mempunyai
nama dan panjang. Spesifikasi alamat berupa nama segmen dan offset. Segment
diberi nomor dan disebut dengan nomor segmen (bukan nama segmen) atau segment
number. Segmen dibentuk secara otomatis oleh compiler. Sebuah
program adalah kumpulan segmen. Suatu segmen adalah unit logika seperti program
utama, prosedur, fungsi, metode, obyek, variabel lokal, variabel global, blok
umum, stack, tabel simbol, array dan lain-lain.
b.
Arsitektur Segmentasi
Alamat logika terdiri dari dua bagian yaitu nomor segmen (s)
dan offset (d) yang dituliskan dengan
<nomor segmen,
offset>
Pemetaan alamat logika
ke alamat fisik menggunakan tabel segmen (segment table), terdiri
dari :
1)
Segmen basis (base)
berisi alamat fisik awal
2)
Segmen limit merupakan
panjang segmen Seperti tabel page, tabel segmen dapat berupa register
atau memori berkecepatan tinggi. Pada program yang berisi sejumlah segmen yang
besar, maka harus menyimpan tabel page di memori.
3)
Segment-table base
register (STBR) digunakan untuk menyimpan alamat yang menunjuk ke segment
table.
4)
Segment-table length
register (STLR) digunakan untuk menyimpan nilai jumlah segmen yang
digunakan program.
5)
Untuk alamat logika (s,
d), pertama diperiksa apakah segment number s legal (s < STLR),
kemudian tambahkan segment number ke STBR, alamat hasil (STBR + s)
ke memori dari segment table.
BAB III
KESIMPULAN & SARAN
3.1 Kesimpulan
Pada
kesempatan ini kami sebagai penyusun makalah, ingin memberikan hasil kesimpulan
yang kami peroleh dari makalah yang kami susun ini.
Pada sebuah computer
banyak system yang mendukung sehingga sebuah computer itu dapat beroperasi
dengan baik, tidak hanya hardware saja yang perlu kita ketahui tapi software
juga merupakan salah satu hal yang perlu kita ketahui juga.
Dalam pembagian jenis
software kami memfokuskan untuk membahas sebuah software yang dinamakan System
Operasi yaitu perangkat lunak sistem yang bertugas untuk melakukan
kontrol eksekusi program aplikasi dan manajemen perangkat keras serta
operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti
program-program pengolah kata dan browser web.
Dan didalam system operasi banyak
sekali system-sistem yang digunakan dan terus berkembang, seperti Penjadwalan,
Management momory, dan lain sebagainya.
Semoga makalah ini dapat member
mamfaat bagi kita semua. Terima kasih
3.2 Saran
Apabila dalam penyusunan makalah ini
terdapat suatu kekurangan, maka saya sebagai penyusun menerima dengan besar
hati apabila ada kritik, dan saran dari pembaca guna kesempurnaan dari
makalah-makalah selanjutnya.
DAFTAR PUSTAKA
Muntaha,
(2013). Pengertian Sistem Operasi dan Fungsinya. [online].
Tersedia: http://blog.ugm.ac.id/2010/09/27/pengertian-sistem-operasi-dan-fungsinya. (diakses
tanggal 02
November 2016).
Stallings, William. Organisasi & Arsitektur Komputer
Rancangan Kerja. Jilid 1. Prentice Hall: 2003. Edisi ke enam.
Sigit, Riyanto. Dkk. Dukungan Sistem Operasi. Pens’s Lecturer, 2011
Yeyen,
(2003). Sistem Operasi.
[online]. Tersedia: http://bebas.vlsm.org/v06/Kuliah/SistemOperasi/2003/21/produk/SistemOperasi/proses1/. (diakses tanggal
02
November 2016).