• Tidak ada hasil yang ditemukan

Sistem Operasi recent site activity

N/A
N/A
Protected

Academic year: 2018

Membagikan "Sistem Operasi recent site activity "

Copied!
4
0
0

Teks penuh

(1)

UNIVERSITAS LANGLANGBUANA FAKULTAS TEKNIK

N a m a : Boy A. H. Djuhari NPM :

Mata Kuliah : Sistem Operasi Tanggal : 20 Oktober 2011

Dosen : Trida Wulandari Kelas : Reguler+Karyawan

Jurusan : Teknik Informatika

1.

Multi-program

ming

Multi-programming adalah 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.

Pada masa-masa awal dunia perkomputeran, CPU cukup mahal dan peripherals sangat lamban. Saat komputer menjalankan sebuah program yang membutuhkan akses ke peripheral, CPU harus menghentikan instruksi-instruksi program lainnya selama peripheral memproses data. Hal ini dianggap sangat tidak efisien.

Usaha pertama untuk membuat sistem operasi berbasis multi-program dilakukan pada tahun 1960an. Beberapa program yang berlainan di dalam batch di-load ke memori komputer, dan program yang pertama akan dijalankan. Saat program tersebut mencapai instruksi untuk menunggu akses ke peripheral, konteks dari program ini disimpan, dan program berikutnya di memori mulai dijalankan. Proses ini berulang terus sampai semua program selesai dijalankan.

Multi-program tidak memberi garansi bahwa program-program akan berjalan bersamaan. Bisa saja program pertama yang dijalankan tidak membutuhkan akses ke peripheral sehingga program tersebut berjalan terus berjam-jam. Namun demikian multiprogramming cukup mengurangi waktu user untuk menunggu karena user tinggal memasukan sederetan program ke komputer dan kembali beberapa jam kemudian untuk melihat hasilnya.

Primary Control Program (PCP) pada OS/360 versi awal menggunakan sistem multiprogramming seperti yang disebut barusan, namun kemudian diganti pada tahun berikutnya oleh MFT dengan sistem multi-program yang membatasi waktu proses bagi CPU sebelum mengganti dengan proses lainnya.

2.

System Calls

Komputer digunakan untuk melakukan suatu proses yang dikehendaki user. Oleh karena itu harus ada suatu bentuk komunikasi antara user dan hardware. Komunikasi itu terjadi dalam bentuk system calls. SO melalui shell-nya akan menangkap perintah dari user yang kemudian akan dikomunikasikan melalui system calls. Disinilah peran SO sebagai jembatan komunikasi antara user dan hardware itu terjadi. System calls itu sendiri umumnya ditulis dalam bahasa C dan C++.

Mengenai shell, shell itu sendiri secara umum adalah layer yang berfungsi sebagai interface antara user dan inti dalam sistem operasi (kernel). Melalui shell, user dapat memberi perintah-perintah yang akan dikirim ke sistem operasi, sehingga shell ini merupakan layer yang menerima interaksi dari user secara langsung. Shell dalam SO secara umum dibagi menjadi 2, Command Line(CLI) dan Graphical(GUI). Jadi dengan kata lain, system calls berperan sebagai interface dalam layanan-layanan yang disediakan oleh sistem operasi.

Untuk lebih jelasnya lihat gambar berikut. Contoh di atas adalah sytem calls di dalam program yang membaca data dari satu file lalu meng- copy-nya ke file lain.

(2)

3.

Thread

Thread (singkatan dari "thread of execution") dalam ilmu komputer, diartikan sebagai sekumpulan perintah (instruksi) yang dapat dilaksanakan (dieksekusi) secara sejajar dengan ulir lainnya, dengan menggunakan cara time slice (ketika satu CPU melakukan perpindahan antara satu ulir ke ulir lainnya) atau multiprocess (ketika ulir-ulir tersebut dilaksanakan oleh CPU yang berbeda dalam satu sistem). Ulir sebenarnya mirip dengan proses, tapi cara berbagi sumber daya antara proses dengan ulir sangat berbeda. Multiplethread dapat dilaksanakan secara sejajar pada sistem komputer. Secara umum multithreading melakukan time-slicing (sama dengan time-division multipleks), di mana sebuah CPU bekerja pada ulir yang berbeda, di mana suatu kasus ditangani tidak sepenuhnya secara serempak, untuk CPU tunggal pada dasarnya benar-benar melakukan sebuah pekerjaan pada satu waktu. Teknik penggantian (switching) ini memungkinkan CPU seolah-olah bekerja secara serempak.

4.

Mutual Exclusion

Pada system computer terdapat sumber daya yang tidak dapat dipakai bersama pada saat yang bersamaan seperti pada penggunaan printer, Sumber daya seperti hanya dapat menjalankan satu proses pada suatu saat, sumber daya ini disebut sumber daya kritis. Program yang menggunakan sumber daya kritis disebut sedang memasuki critical region / section .

Sistem operasi memberikan fasilitas untuk pemrogram dapat memberikan indikasi keberadaan critical region. Sistem operasi menyediakan layanan ( berupa system call ) untuk mencagah suatu proses masuk kedalam critical region akan tetapi di dalam critical region terdapat proses lain yang sedang berjalan. Mutual exclusion merupakan solusi bagi masalah pada critical region / section, mutual exclusion adalah persoalan untu menjamin hanya satu proses saja yang berjalan dalam suatu critical region / section.

5.

Starvation

Starvation adalah kondisi yang biasanya terjadi setelah deadlock. Proses yang kekurangan resource (karena terjadi deadlock) tidak akan pernah mendapat resource yang dibutuhkan sehingga mengalami starvation (kelaparan). Namun, starvation juga bisa terjadi tanpa deadlock. Hal ini ketika terdapat kesalahan dalam sistem sehingga terjadi ketimpangan dalam pembagian resouce. Satu proses selalu mendapat resource, sedangkan proses yang lain tidak pernah mendapatkannya. Ilustrasi starvation tanpa deadlock di dunia nyata dapat dilihat di bawah ini.Pada gambar diatas, pada antrian kanan terjadi starvation karena resource (jembatan) selalu dipakai oleh antrian kiri, dan antrian kanan tidak mendapatkan giliran.

6.

Pre-emption

Harus diperhatikan bahwa penjadwalan selalu dikelola dengan prioritas, baik rendah ataupun tinggi. Job dengan prioritas yang sama ada dalam penjadwalan FCFS. Algoritma penjadwalan Shortest Job First adalah bentuk khusus dari penjadwalan Prioritas yang umum karena SJF dapat dijalankan dengan prioritas menurut nilai yang dihitung dari kebalikan (perkirakan) waktu penyelesaian job.

Prioritas-prioritas biasanya dalam bentuk bilangan yang telah ditetapkan sebelumnya. Walaupun demikian masih belum ada kesepakatan apakah suatu angka kecil memang menunjukkan prioritas yang rendah. Prioritas dapat dihitung baik secara ienternal maupun eksternal. Prioritas yang terdefinisi secara internal menggunakan ukuran kuantitas, seperti batas waktu, kebutuhan memori, jumlah file yang dibukanya, ataupun perbandingan antara waktu I/O dengan waktu CPU, dan lain-lain. Prioritas eksternal ditentukan oleh kriteria di luar sistem operasi, misalnya jumlah iuran yang dibayar untuk pemakaian komputer, bagian yang mensponsori kerja, bahkan mungkin saja faktor-faktor politis juga.

Masalah utama dengan algoritma penjadwalan Prioritas adalah penahanan (blocking) takterbatas atau lebih dikenal starvation. Starvation muncul jika suatu job telah siap untuk dijalankan (sedang menunggu CPU) tetapi tidak pernah diberi kesempatan untuk menyelesaikan jobnya karena prioritasnya rendah. Pemecahan

(3)

masalah ini adalah Aging (untuk selanjutnya disebut pemetaan). Pemetaan adalah teknik yang menaikkan secara berkala prioritas job yang sudah lama menunggu di dalam sistem. Misalnya untuk kisaran prioritas antara 0 (rendah) sampai 127 (tinggi), prioritas job yang menuggu dapat dinaikkan 1 setiap 15 menit . Sehingga walaupun prioritas job semula adalah 0, namun suatu saat mampu pula mencapai prioritas tertinggi dan akhirnya dijalankan oleh CPU.

Walaupun sesungguhnya suatu sistem dapat memiliki beberapa buah CPU, dalam pembahasan selanjutnya untuk penyederhanaan hanya akan disediakan satu CPU untuk pengerjaan beberapa job.

7.

Fragmentation

Fragmentasi adalah munculnya hole hole yang tidak cukup besar untuk menampung permintaan dari proses. Fragmentasi Eksternal: apabila fragmen berupa hole yang berukuran kecil dan tidak berurutan disebabkan karena partisi dinamis. Fragmentasi Internal: apabila terdapat di dalam blok memori yang sudah dialokasikan secara statis.

Fragmentasi dapat terjadi dalam kondisi-kondisi berikut:

Pada saat pengguna membuat berkas, partisi di mana pengguna hendak menyimpan berkas tersebut tidak memiliki unit alokasi yang saling berdekatan yang cukup besar untuk menyimpan berkas yang bersangkutan. Sistem berkas akan memecah berkas tersebut ke dalam beberapa fragmen (yang setiap fragmennya berukuran sama dengan ukuran unit alokasi), sebelum disimpan dalam media penyimpanan.

Pada saat pengguna menyunting berkas, berkas tersebut ternyata "membengkak" melebihi unit alokasi yang sebelumnya dialokasikan oleh sistem berkas terhadap berkas yang bersangkutan. Ketika sebuah berkas menghabiskan semua unit alokasi yang telah dialokasikan, maka sistem berkas akan mengalokasikan tambahan unit alokasi yang didapat dari unit alokasi yang belum dialokasikan (masih bebas), di lokasi yang kadang berdekatan, atau kadang-kadang berjauhan. Pada saat lokasi yang dialokasikan sistem berkas saling berjauhan, maka dapat dikatakan bahwa berkas tersebut terfragmentasi, karena berkas disimpan dalam beberapa fragmen yang tidak disusun secara berdekatan.

Sistem operasi MS-DOS, Windows 95/98/Me/2000/XP/Server 2003/Vista memiliki utilitas defragmentasi hard disk yang mampu melakukan reorganisasi terhadap berkas-berkas yang terfragmentasi agar dapat disusun secara berdekatan. Beberapa utilitas lainnya pun banyak tersedia, baik yang bersifat komersial (semacam O&O Defrag, Diskeeper, Norton SpeedDisk) hingga yang gratis.

8.

Replacement Policy

Tujuan replacement policy untuk memilih page mana yang bisa ditimpa dengan page lain atau harus dikeluarkan dari memori. Permasalahan pada replacement policy adalah page yang dipindah biasanya page yang diperkirakan paling lama akan diakses lagi, perkiraan didasarkan pada kelakukan page-page sebelumnya. Semakin tepat dan semakin canggih replacement policy yang digunakan dapat menimbulkan overhead yang tinggi baik dari segi hardware maupun software.

9.

Segmentation

Segmentasi merupakan skema manajemen memori yang mendukung cara pandang seorang programmer terhadap memori. Ruang alamat lojik merupakan sekumpulan dari segmen-segmen. Masing-masing segmen mempunyai panjang dan nama. Alamat diartikan sebagai nama segmen dan offset dalam suatu segmen. Jadi jika seorang pengguna ingin menunjuk sebuah alamat dapat dilakukan dengan menunjuk nama segmen dan offsetnya. Untuk lebih menyederhanakan implementasi, segmen-segmen diberi nomor yang digunakan sebagai pengganti nama segmen. Sehingga, alamat lojik terdiri dari dua tuple: [segmen-number, offset].

Meskipun seorang pengguna dapat memandang suatu objek dalam suatu program sebagai alamat berdimensi dua, memori fisik yang sebenarnya tentu saja masih satu dimensi barisan byte. Jadi kita harus bisa mendefinisikan pemetaan dari dua dimensi alamat yang didefinisikan oleh pengguna kesatu dimensi alamat fisik. Pemetaan ini disebut sebagai sebuah segmen table. Masing-masing masukan mempunyai segmen base dan segmen limit. Segmen base merupakan alamat fisik dan segmen limit merupakan panjang dari segmen.

(4)

Sebagai contoh, kita mempunyai nomor segmen dari 0 sampai dengan 4. Segmen-segmen ini disimpan dalam suatu memori fisik. Tabel segmen berisi data untuk masing-masing segmen, yang memberikan informasi tentang awal alamat dari segmen di fisik memori (atau base) dan panjang dari segmen (atau limit). Misalkan segmen 2 mempunyai panjang 400 dan dimulai pada lokasi 4300. Jadi, referensi di byte 53 dari segmen 2 dipetakan ke lokasi 4300 + 53 = 4353. Suatu referensi ke segmen 3, byte 852, dipetakan ke 3200 + 852 = 4052. referensi ke byte 1222 dari segmen 0 akan menghasilkan suatu trap ke sistem operasi, karena segmen ini hanya mempunyai panjang 1000 byte.

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.

10.

Concerention

Referensi

Dokumen terkait

Dalam hal ini Bank Dunia bersama-sama dengan IMF bertanggungjawab dalam hal keuangan TNCs sedangkan PBB mempunyai peran dalam menyediakan dukungan di bidang hukum dan perundangan

Pengertian Bangun Ruang Sisi Datar .... Mengidentifikasi Bagian-bagian Bangun Ruang

Adapun tujuan dari penelitian adalah untuk mengetahui pengaruh inovasi produk, kualitas produk dan corporate social responsibility terhadap keputusan pembelian smartphone xiaomi di

Penelitian ini dilatarbelakangi oleh rendahnya hasil belajar matematika siswa, hal ini terjadi karena selama ini proses pelaksanaan belajar mengajar matematika di

mashlahah dari sedekah tidak hanya bisa dirasakan oleh individu. Mashlahah bisa jadi dirasakan oleh konsumen yang lain terutama orang miskin. Selama orang miskin masih

mengembangkan self-esteem kepada remaja usia 15-17 tahun baik yang. tinggal di panti asuhan ataupun di luar panti asuhan dengan

Waktu berkontribusi besar dalam balapan liar sebab waktu sibuk dan libur menentukan tingkat kepadatan jalan kota di Bintaro. Pada hari biasa dan jam kerja, jalan Bintaro jarang

Pengujian pengaruh simultan (F test) pada tabel, didapatkan F hitung sebesar 14,79 dengan signifikansi pada 0,000 karena p < 0,05 maka model regresi dapat