Kamis, 31 Maret 2011

Tugas Sistem Operasi Bagian II

0 komentar
Process control block
Process Control Block (PCB) mengandung banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk hal-hal di bawah ini:
1.     Status Proses
2.    Program counter
3.    CPU Register
4.    Informasi Manajemen Memori
5.    Informasi pencatatan


Pengertian thread?
Thread adalah unit dasar dari penggunaan CPU, yang terdiri dari Thread_ID, program counter,register set,  dan stack.
Sebuah thread berbagi code section, data section, dan sumber daya sistem operasi dengan Thread lain yang dimiliki oleh proses yang sama . Thread juga sering disebut lightweight process.

Penjelasan model tread many to one, one to on, & many to many
     Many to One Model memetakan beberapa user-level threads ke satu kernel threads.
     



           Contohnya yaitu   SolarisGreen Threads dan GNU Portable Threads
 Kelemahan:    Satu block semua block One to One model memetakan setiap user thread ke kernel thread.

Ini adalah contoh gambar dari one to one

          Contontohnya pada penggunaan
            Windows NT/XP/2000
             Linux
             Solaris 9 and later
             Keuntungannya yaitu adanya Konkurensi, Butuh space, waktu, Tidak blocking, Terbatas


Many to many model memetakan banyak user-level thread ke kernel thread yang lebih sedikit atau sama.


User dapat membuat banyak thread, masing2 kernel thread dpt jalan di lingkungan multiprocessor
                
Contohnya Solaris prior to version 9 dan Windows NT/2000 with the ThreadFiber packa



Fungsi  dari Fork
fork memiliki fungsi untuk menduplikasi proses dimana proses anak yang dihasilkan bersifat independent.
Penjadwalan preemptive dan non preemptive!
Penjadwalan Preemptive merupakan proses yg sdg dieksekusi dpt diinterupsi dan dipaksa utk menyerahkan CPU.
Penjadwalan Non-preemptive
Proses yg sdg dieksekusi menggunakan CPU hingga proses tsb menyerahkannya secara sukarela

Terjadinya Deadlock.
Deadlock ialah suatu kondisi dimana proses tidak berjalan lagi atau pun tidak ada komunikasi lagi antar proses. Deadlock disebabkan karena proses yang satu menunggu sumber daya yang sedang dipegang oleh proses lain yang sedang menunggu sumber daya yang dipegang oleh proses tersebut. Dengan kata lain setiap proses dalam set menunggu untuk sumber yang hanya dapat dikerjakan oleh proses lain dalam set yang sedang menunggu.
Proses P1 Proses P2
..... .....
..... .....
Receive (P2); Receive (P1);
..... .....
..... .....
Send (P2, M1); Send (P1, M2);
Deadlock selalu tidak lepas dari sumber daya, seperti kita lihat dari contoh-contoh diatas, bahwa hampir seluruhnya merupakan masalah sumber daya yang digunakan bersama-sama. Oleh karena itu, kita juga perlu tahu tentang jenis sumber daya, yaitu: sumber daya dapat digunakan lagi berulang-ulang dan sumber daya yang dapat digunakan dan habis dipakai atau dapat dikatakan sumber daya sekali pakai.
empat kondisi yang dapat mengakibatkan terjadinya Deadlock, yaitu:

1.     Mutual Eksklusif: hanya ada satu proses yang boleh memakai sumber daya, dan proses lain yang ingin memakai sumber daya tersebut harus menunggu hingga sumber daya tadi dilepaskan atau tidak ada proses yang memakai sumber daya tersebut.
2.    Memegang dan menunggu: proses yang sedang memakai sumber daya boleh meminta sumber daya lagi maksudnya menunggu hingga benar-benar sumber daya yang diminta tidak dipakai oleh proses lain, hal ini dapat menyebabkan kelaparan sumber daya sebab dapat saja sebuah proses tidak mendapat sumber daya dalam waktu yang lama
3.    Tidak ada Preemption: sumber daya yang ada pada sebuah proses tidak boleh diambil begitu saja oleh proses lainnya. Untuk mendapatkan sumber daya tersebut, maka harus dilepaskan terlebih dahulu oleh proses yang memegangnya, selain itu seluruh proses menunggu dan mempersilahkan hanya proses yang memiliki sumber daya yang boleh berjalan
4.    Circular Wait: kondisi seperti rantai, yaitu sebuah proses membutuhkan sumber daya yang dipegang proses berikutnya


Cara menanggulangi Deadlock
1.     Mengabaikan masalah Deadlock.
2.    Mendeteksi dan memperbaiki
3. Penghindaran yang terus menerus dan pengalokasian yang baik dengan menggunakan protokol untuk memastikan sistem tidak pernah memasuki keadaan Deadlock. Yaitu dengan Deadlock avoidance sistem untuk mendata informasi tambahan tentang proses mana yang akan meminta dan menggunakan sumber daya.
4.    Pencegahan yang secara struktur bertentangan dengan empat kondisi terjadinya Deadlock dengan Deadlock prevention sistem untuk memasti- kan bahwa salah satu kondisi yang penting tidak dapat menunggu.





Sabtu, 05 Maret 2011

Tugas Sistem Operasi Bagian I

0 komentar

1. Tiga tujuan SO

1. Pada user Sistem Operasi bertujuan untuk dapat melakukan interaksi dengan komponen komputer melalui sistem operasi
2. Pada seleksi Sistem Operasi bertujuan untuk berbagai macam sistem operasi pada setiap instalasi computer
3. Pada penggunaan aplikasi tertentu, sistem operasi dapat menyesuaikan dengan kebutuhan kita.



2. Keuntungan dari Multiprogramming

Ketika satu komputer mengerjakan banyak program yang ada pada memori utamapada satu waktu . Teknik multiprogramming meningkatkan utilisasi CPU dengan mengorganisasikan job-job yang ada dan mengurangi total waktu yang dibutuhkan untuk menyelesaikan tugas-tugas tersebut .Multiprogramming, yang dibuat untuk meningkatkan kemampuan, juga mengizinkan time sharing. Sistem operasi yang bersifat time-shared memperbolehkan banyak pengguna untuk menggunakan komputer secara interaktif pada saat yang bersamaan.


3. Perbedaan utama dari sistem operasi antara komputer mainframe dan PC

1. Komputer mainframe adalah sebuah sistem komputer yang mengumpulkan device -device yang berfungsi sama atau bermacam -macam yang disatukan dalam sebuah sistem yang saling berbagi.

2. Personal Computer(PC) adalah sebuah komputer yang dirancang hanya digunakan oleh satu orang dalam suatu waktu. Harganya cenderung lebih murah dan biasanya mampu mengerjakan berbagai macam tugas.

3. Perbedaan PC dengan komputer mainframe adalah PC ukurannya lebih kecil dan harganya lebih murah dibanding mainframe.Sistem operasi untuk komputer-komputer seperti ini dalam beberapa hal diuntungkan oleh pengembangan sistem operasi untuk komputer mainframe. Namun, semenjak penggunaan komputer untuk keperluan pribadi, maka utilisasi CPU tidak lagi menjadi perhatian utama. Karena itu, beberapa desain untuk komputer mainframe tidak cocok untuk sistem yang lebih kecil.


4. Kendala-kendala yang harus diatasi oleh programmer dalam menulis sistem operasi untuk lingkungan waktu nyata :

1. Secondary storage sangat terbatas

2. Terjadinya page faults tambahan selama eksekusi

3. Sistem yang mengharuskan suatu komputasi selesai dalam jangka waktu tertentu

4. Kemampuan untuk operasi, response dalam batasan waktu tertentu

5. Digunakan sebagai control device untuk aplikasi khusus

5. Perbedaan antara symmetric dan asymmetric multiprocessing serta keuntungan dan kerugian dari sistem multiprosessor

Perbedaan antara 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 performance.

Sementara itu dalam ASMP setiap prosesor diberikan suatu tugas yang spesifik. Sebuah prosesor bertindak sebagai Master processor yang bertugas menjadwalkan dan mengalokasikan pekerjaan pada prosesor lain yang disebut slave processors.

Umumnya ASMP dipakai pada sistem yang besar.


6. Perbedaan antara trap dan interrupt dan penggunaan dari setiap fungsi tersebut :

  • Trap adalah interupsi karena terjadinya kesalahan atau kondisi kekecualian yang dihasilkan proses yang running seperti usaha ilegal dalam mengakses file. Dengan adanya trap,sistem operasi menentukan apakah kesalahan yang dibuat merupakan kesalahan fatal. Jika fatal, proses yang saat itu running disingkirkan dan terjadi alih proses. Jika kesalahan tidak fatal bergantung sifat kesalahan dan rancangan sistem operasi kemungkinan yang dilakukan adalah menjalankan prosedur pemulihan atau memperingatkan pemakai
  • Interupsi adalah suatu permintaan khusus kepada mikroprosessor untuk melakukan sesuatu bila terjadi interupsi,maka komputer akan menghentikan dahulu apa yang sedang dikerjakannya dan melakukan apa yang diminta oleh yang menginterupsi

7. Direct Memory Access
DMA, disebut juga Direct memory access merupakan Operasi penanganan I/O dimana device controller langsung berhubungan dengan memori tanpa campur tangan CPU,DMA digunakan untuk perangkat I/O dengan kecepatan tinggi hanya terdapat satu interupsi setiap blok.

Interrupt hanya terjadi tiap blok bukan tiap word atau byte data. Seluruh proses DMA dikendalikan oleh sebuah controller bernama DMA Controller (DMAC) . DMA Controller mengirimkan atau menerima signal dari memori dan I/O device. Prosesor hanya mengirimkan alamat awal data, tujuan data, panjang data ke DMA Controller . . Interrupt pada prosesor hanya terjadi saat proses transfer selesai. Hak terhadap penggunaan bus memory yang diperlukan DMA controller didapatkan dengan bantuan bus arbiter yang dalam PC sekarang berupa chipset Northbridge .



8. Kegunaan memori cache

Sebagai tempat penyimpanan sementara (volatile)sejumlah kecil data, serta meningkatkan kecepatan pengambilan atau penyimpanan data dari memori oleh prosessor berkecepatan tinggi

9. Beberapa CPU menyediakan lebih dari dua mode operasi.Dua kemungkinan penggunaan dari mode

Dual mode sistem operasi

  1. User -> Eksekusi dikendalikan oleh user.
  2. Monior/kernel/Sistem Mode -> Eksekusi dikendalikan oleh sistem operasi.

Pada saat boot time,perangkat keras bekerja pada mode monitor dan stelah sistem operasi di-load maka akan mulai masuk ke mode pengguna.Ketika terjadi trap atau interupsi,perangkat keras akan menswitch lagi keadaan dari mode pengguna menjadi mode monitor(terjadi perubahan state menjadi bit 0) dan akan kembali menjadi mode pengguna jikalau sistem operasi menambil alih proses dan kontrol komputer (state akan berubah menjadi bit1 )


10. Lima kegiatan utama dari sistem operasi yang berhubungan dengan managemen proses

  1. Pembuatan dan penghapusan proses pengguna dan sistem proses.
  2. Menunda autau melanjutkan proses.
  3. Menyediakan mekanisme untuk proses sinkronisasi.
  4. Menyediakan mekanisme untuk proses komunikasi.
  5. Menyediakan mekanisme untuk proses penanganan deadlock.

11. Tiga kegiatan utama dari sistem operasi yang berhubungan dengan managemen memori

  1. Menjaga track dari memori yang sedang digunakan dan siapa yang menggunakannya.
  2. Memilih program yang akan di-load ke memori.
  3. Mengalokasikan dan meng-dealokasikan ruang memori sesuai kebutuhan.

12. Tiga kegiatan utama dari sistem operasi yang berhubungan dengan managemen secondary-storage

  1. Menyimpan data besifat sementara
  2. Memindahkan data dari satu tempat ke tempat lain
  3. Alternatif pengganti memory (virtual memory)

13. Lima kegiatan utama dari sistem operasi yang berhubungan dengan managemen berkas

  1. Pembuatan dan penghapusan berkas.
  2. Pembuatan dan penghapusan direktori.
  3. Mendukung manipulasi berkas dan direktori.
  4. Memetakan berkas ke secondary storage.
  5. Mem-backup berkas ke media penyimpanan yang permanen (non-volatile)

14. Tujuan dari command interpreter dan mengapa biasanya hal tersebut terpisah dengan kernel

Tujuan dari command interpreter adalah agar pengguna dapat membuat permintaan tanpa menulis program.

Biasa terpisah karena Konsep mesin virtual menyediakan proteksi yang lengkap untuk sumberdaya sistem, dikarenakan tiap mesin virtual terpisah dari mesin virtual yang lain.

-Kernel, DMA and transmisi Explanation-

Kernel

Kernel merupakan suatu perangkat lunak yang menjadi bagian utama dari sebuah sistem operasi. Tugasnya melayani bermacam program aplikasi untuk mengakses perangkat keras komputer secara aman.

Karena akses terhadap perangkat keras terbatas, sedangkan ada lebih dari satu program yang harus dilayani dalam waktu yang bersamaan, maka kernel juga bertugas untuk mengatur kapan dan berapa lama suatu program dapat menggunakan satu bagian perangkat keras tersebut. Hal tersebut dinamakan sebagai multiplexing.

Akses kepada perangkat keras secara langsung merupakan masalah yang kompleks, oleh karena itu kernel biasanya mengimplementasikan sekumpulan abstraksi hardware. Abstraksi-abstraksi tersebut merupakan sebuah cara untuk menyembunyikan kompleksitas, dan memungkinkan akses kepada perangkat keras menjadi mudah dan seragam. Sehingga abstraksi pada akhirnya memudahkan pekerjaan programer.

DMA

Direct Memory Access (DMA) suatu metoda penanganan I/O dimana device controller langsung berhubungan dengan memori tanpa campur tangan CPU. Setelah men-set buffers, pointers, dan counters untuk perangkat I/O, device controller mentransfer blok data langsung ke penyimpanan tanpa campur tangan CPU. DMA digunakan untuk perangkat I/O dengan kecepatan tinggi. Hanya terdapat satu interupsi setiap blok, berbeda dengan perangkat yang mempunyai kecepatan rendah dimana interupsi terjadi untuk setiap byte (word).

Transmisi sinkron dan tak sinkron?

Transmisi sinkron adalah jika waktu kirim dan terima atau lamanya penerimaan setiap bit ditentukan secara pasti sebelum bit tersebut dikirim dan diterima.

transmisi taksinkron jika waktu kirim dan terima atau lamanya penerimaan setiap bit tidak ditentukan oleh karakter sebelumnya.

About me

Foto saya
Sistem Komputer 09 Universitas Sriwijaya