Sunday, March 10, 2019


 ARTIKEL TUGAS 2
PROSES 
SISTEM OPERASI MULTIMEDIA






Disusun oleh :
MOH.IRVAN.HARIYONO
Nim: 1614311029

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK
UNIVERSITAS BHAYANGKARA
2019





PENDAHULUAN

Kami sekarang akan memulai studi rinci tentang bagaimana sistem operasi dirancang dan dibangun. Konsep paling sentral dalam sistem operasi apa pun adalah proses: abstraksi dari program yang sedang berjalan. Segala sesuatu yang lain bergantung pada konsep ini, dan penting bahwa perancang sistem operasi (dan siswa) memiliki pemahaman menyeluruh tentang apa proses sedini mungkin. Proses adalah salah satu abstraksi tertua dan paling penting yang disediakan sistem operasi. Mereka mendukung kemampuan untuk melakukan operasi (pseudo) bersamaan bahkan ketika hanya ada satu CPU yang tersedia. Mereka mengubah satu CPU menjadi beberapa CPU virtual. Tanpa abstraksi proses, komputasi modem tidak akan ada.

PROSES

Semua komputer modern sering melakukan beberapa hal pada saat bersamaan. Orang yang terbiasa bekerja dengan komputer pribadi mungkin tidak sepenuhnya menyadari fakta ini, jadi beberapa contoh mungkin memperjelas hal ini. Pertama pertimbangkan server Web. Permintaan datang dari seluruh meminta halaman Web. Ketika permintaan masuk, server memeriksa untuk melihat apakah halaman yang dibutuhkan ada dalam cache. Jika ya, itu dikirim kembali; jika tidak, permintaan disk mulai mengambilnya. Namun, dari sudut pandang CPU, permintaan disk tetap selamanya. Sambil menunggu permintaan disk selesai, lebih banyak lagi dilihat dalam interval waktu yang cukup lama, semua proses telah membuat kemajuan, tetapi pada saat tertentu hanya satu proses yang benar-benar berjalan. Seperti Gambar dibawah ini.




      Dalam bab ini, kita akan mengasumsikan hanya ada satu CPU. Namun, semakin banyak anggapan itu tidak benar, karena chip baru seringkali multicore, dengan dua, empat, atau lebih CPU. Kita akan melihat chip multicore dan multiprosesor, tetapi untuk saat ini, lebih mudah hanya memikirkan satu CPU pada satu waktu. Jadi ketika kita mengatakan bahwa CPU hanya dapat menjalankan satu proses pada satu waktu, jika ada dua core (atau CPU), masing-masing dari mereka hanya dapat menjalankan satu proses pada satu waktu.
     Dengan CPU yang beralih dengan cepat bolak-balik di antara proses-proses tersebut, laju di mana suatu proses melakukan komputasinya tidak akan seragam dan bahkan mungkin tidak dapat direproduksi jika proses yang sama dijalankan kembali. Dengan demikian, proses tidak boleh diprogram dengan asumsi bawaan tentang waktu. Pertimbangkan, misalnya, proses I / O yang memulai pita streamer untuk mengembalikan file yang dicadangkan, mengeksekusi loop kosong 10.000 kali untuk mempercepatnya, dan kemudian mengeluarkan perintah untuk membaca catatan pertama. Jika CPU memutuskan untuk beralih ke proses lain selama idle loop, proses rekaman mungkin tidak berjalan lagi sampai setelah catatan pertama sudah melewati kepala baca. Ketika suatu proses memiliki persyaratan real-time kritis seperti ini, yaitu, peristiwa tertentu harus terjadi dalam jumlah milidetik tertentu, tindakan khusus harus diambil untuk memastikan bahwa itu memang terjadi. Namun, biasanya, sebagian besar proses tidak terpengaruh oleh multiprogramming yang mendasari CPU atau kecepatan relatif dari proses yang berbeda.


STATUS PROSES

   Meskipun setiap proses adalah entitas independen, dengan program counter sendiri dan keadaan internal, proses sering perlu berinteraksi dengan proses lain. Satu proses dapat menghasilkan beberapa output yang digunakan proses lain sebagai input.Ketika suatu proses blok, ia melakukannya karena secara logis ia tidak dapat melanjutkan, biasanya karena menunggu input yang belum tersedia. Dimungkinkan juga untuk proses yang siap secara konsep dan dapat dijalankan untuk dihentikan karena sistem operasi telah memutuskan untuk mengalokasikan CPU ke proses lain untuk sementara waktu. Kedua kondisi ini sangat berbeda. Dalam kasus pertama, penangguhan melekat pada masalah (Anda tidak dapat memproses baris perintah pengguna sampai ketikan). Dalam kasus kedua, ini adalah teknis dari sistem (tidak cukup CPU untuk memberikan setiap proses prosesor pribadinya sendiri). Seperti Berikut ini :

1. Berjalan (sebenarnya menggunakan CPU pada saat itu). 
2. Ready (runnable; sementara dihentikan untuk membiarkan proses lain berjalan). 
3. Diblokir (tidak dapat berjalan sampai beberapa peristiwa eksternal terjadi).

   Secara logis, dua kondisi pertama serupa. Dalam kedua kasus, proses bersedia dijalankan, hanya di yang kedua, untuk sementara tidak ada CPU yang tersedia. Keadaan ketiga berbeda dari dua yang pertama dalam proses yang tidak dapat berjalan, bahkan jika CPU tidak ada lagi yang harus dilakukan. seperti berikut ini :




IMPLEMENTASI PROSES

   alamat prosedur layanan interupsi. Misalkan proses pengguna 3 sedang berjalan ketika disk mengganggu terjadi. Penghitung program proses pengguna, kata status program, dan kadang-kadang satu atau lebih register didorong ke tumpukan (saat ini) oleh perangkat keras interupsi. Komputer kemudian melompat ke alamat yang ditentukan dalam vektor interupsi. Itulah yang dilakukan perangkat keras. Mulai sekarang, tergantung pada perangkat lunak, khususnya, prosedur layanan interupsi.
   Semua interupsi dimulai dengan menyimpan register, seringkali dalam entri tabel proses untuk proses saat ini. Kemudian informasi yang didorong ke tumpukan oleh interupsi dihapus dan penunjuk tumpukan diatur untuk menunjuk ke tumpukan sementara yang digunakan oleh penangan proses. Tindakan seperti menyimpan register dan mengatur stack pointer bahkan tidak dapat diekspresikan dalam bahasa tingkat tinggi seperti C, sehingga mereka dilakukan oleh rutin bahasa assembly kecil, biasanya yang sama untuk semua gangguan karena pekerjaan menyimpan register adalah identik, tidak peduli apa penyebab interupsi itu.
   Ketika rutin ini selesai, ia memanggil prosedur C untuk melakukan sisa pekerjaan untuk tipe interupsi spesifik ini. (Kami menganggap sistem operasi ditulis dalam C, pilihan yang biasa untuk semua sistem operasi nyata.) Ketika telah melakukan tugasnya, mungkin membuat beberapa proses sekarang siap, penjadwal dipanggil untuk melihat siapa yang akan menjalankan selanjutnya. Setelah itu, kontrol dilewatkan kembali ke kode bahasa assembly untuk memuat register dan peta memori untuk proses sekarang-saat ini dan mulai berjalan. Penanganan dan penjadwalan yang terganggu. Perlu dicatat bahwa rinciannya agak berbeda dari satu sistem ke sistem lainnya. Seperti berikut ini :

1. Perangkat keras menghitung penghitung program, dll. 
2. Perangkat keras memuat penghitung program baru dari vektor interupsi. 
3. Prosedur bahasa assembly menyimpan register. 
4. Prosedur bahasa assembly mengatur tumpukan baru. 
5. Layanan interupsi C berjalan {biasanya membaca dan buffer input). 
6. Penjadwal memutuskan proses mana yang akan dijalankan selanjutnya. 
7. Prosedur C kembali ke kode rakitan. 
8. Prosedur bahasa assembly memulai proses baru saat ini.

   Ketika proses selesai, sistem operasi menampilkan karakter yang cepat dan menunggu perintah baru. Ketika menerima perintah, itu memuat program baru ke dalam memori, menimpa yang pertama.
    
Pemodelan Multiprogramming

    Untuk mengimplementasikan model proses, sistem operasi memelihara tabel (array struktur), yang disebut tabel proses, dengan satu entri per proses. (Beberapa penulis menyebut entri ini blok kontrol proses.) Entri ini berisi informasi penting tentang status proses, termasuk penghitung programnya, penunjuk tumpukan, alokasi memori, status file yang terbuka, informasi akuntansi dan penjadwalannya, dan segala hal lain tentang proses yang harus disimpan ketika proses dialihkan dari menjalankan ke status siap atau diblokir sehingga dapat dimulai kembali nanti seolah-olah tidak pernah telah dihentikan. seperti berikut ini :


   Bidang di kolom pertama terkait dengan manajemen proses. Dua lainnya berhubungan dengan manajemen memori dan manajemen file, masing-masing. Perlu dicatat bahwa bidang mana yang dimiliki tabel proses sangat tergantung pada sistem, tetapi gambar ini memberikan gambaran umum tentang jenis informasi yang dibutuhkan. seperti berikut ini.


    
    Sekarang kita telah melihat tabel proses, dimungkinkan untuk menjelaskan sedikit lebih banyak tentang bagaimana ilusi dari beberapa proses berurutan dipertahankan pada satu (atau masing-masing) CPU. Terkait dengan setiap kelas I / O adalah lokasi (biasanya di lokasi tetap dekat bagian bawah memori) yang disebut vektor interupsi.


ARTIKEL TUGAS 1
PENGENALAN MATERI SISTEM OPERASI MULTIMEDIA










Disusun oleh :
MOH.IRVAN.HARIYONO
Nim: 1614311029

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK
UNIVERSITAS BHAYANGKARA
2019







PENDAHULUAN


Komputer modern terdiri dari satu atau lebih prosesor, beberapa memori utama, disk, printer, keyboard, mouse, layar, antarmuka jaringan, dan berbagai perangkat input / output lainnya. Semua dalam semua, sistem yang kompleks. Jika setiap pemrogram aplikasi harus memahami bagaimana semua hal ini bekerja secara terperinci, tidak ada kode yang akan ditulis. Selain itu, mengelola semua komponen ini dan menggunakannya secara optimal adalah pekerjaan yang sangat menantang. Untuk alasan ini, komputer dilengkapi dengan lapisan perangkat lunak yang disebut sistem operasi, yang tugasnya adalah menyediakan program pengguna dengan model komputer yang lebih baik, lebih sederhana, lebih bersih, dan menangani pengelolaan semua sumber daya yang baru saja disebutkan.

Sistem operasi berbeda dari program pengguna (yaitu, aplikasi) dengan cara selain di mana mereka berada. Secara khusus, mereka besar, kompleks, dan berumur panjang. Kode sumber sistem operasi seperti Linux atau Windows ada di urutan lima juta baris kode. Untuk memahami apa artinya ini, pikirkan untuk mencetak lima juta baris dalam bentuk buku, dengan 50 baris per halaman dan 1000 halaman per volume (lebih besar dari buku ini). Dibutuhkan 100 volume untuk membuat daftar sistem operasi dengan ukuran ini — pada dasarnya seluruh rak buku. Dapatkah Anda bayangkan mendapatkan pekerjaan mempertahankan sistem operasi dan pada hari pertama meminta atasan membawa Anda ke sebuah kotak buku berisi kode dan berkata: "Pergilah belajar itu." Dan ini hanya untuk bagian yang berjalan di kernel. Program pengguna seperti GUI, perpustakaan, dan perangkat lunak aplikasi dasar (hal-hal seperti Windows Explorer) dapat dengan mudah dijalankan hingga 10 atau 20 kali lipat dari jumlah itu.

akses lengkap ke semua perangkat keras dan dapat menjalankan instruksi apa pun yang dapat dieksekusi mesin. Sisa perangkat lunak berjalan dalam mode pengguna, di mana hanya sebagian dari instruksi mesin yang tersedia. Khususnya, instruksi yang mempengaruhi kontrol mesin atau I / O (Input / Output) dilarang untuk menggunakan program mode. Kami akan kembali ke perbedaan antara mode kernel dan mode pengguna berulang kali, seperti gambar dibawah ini.


                      Program antarmuka pengguna, shell atau GUI, adalah level terendah dari perangkat l    lunak mode pengguna, dan memungkinkan pengguna untuk memulai program lain, seperti browser Web, pembaca email, atau pemutar musik. Program-program ini juga banyak menggunakan sistem operasi.
                     APA ITU SISTEM OPERASI?

                    Pengertian Sistem Operasi, Fungsi, Macam & Contohnya|Secara Umum, Pengertian Sistem Operasi adalah perangkat lunak (software) pada komputer yang bertugas dalam menggontrol dan memanajemen perangkat keras dan sebagai operasi-operasi dasar sistem, termasuk dalam menjalankan software aplikasi misalnya program-program pengolah data untuk mempermudah kegiatan manusia. Dalam bahasa Inggris, sistem operasi disebut dengan Operating Systematau disingkat OS. 
                       Sistem Operasi Komputer merupakan software di lapisan pertama dalam meletakkan memori komputer (memori komputer yaitu hardisk, bukan memori ram) di saat komputer dinyalakan. Lalu pada software-software yang lainnya dijalankan setelah Sistem Operasi Komputer berjalan, dan melakukan layanan inti umum ke seluruh software-software. Layanan inti umum tersebut misalnya akses ke disk, manajemen memori, skudiling task, dan antarmuka user. Sehingga setiap software tidak lagi melakukan tugas inti umum karena telah dilakukan dan dilayani oleh Sistem Operasi. 

      Sistem Operasi berfungsi sebagai penghubung antara lapisan hardware dan lapisan software. Selain dari itu sistem operasi komputer melakukan semua perintah penting dalam komputer, serta menjamin aplikasi-aplikasi yang berbeda fungsinya dapat berjalan lancar secara bersamaan tanpa adanya hambatan. Sistem Operasi Komputer menjamin, aplikasi perangkat lunak lainnya dapat memakai memori, melakukan input serta output ke peralatan lain, dan memiliki akses ke setiap sistem file. Sistem operasi juga mengatur, jika aplikasi berjalan secara bersamaan, sehingga proses di komputer berjalan mendapatkan waktu yang cukup dan tidak saling mengganggu perangkat yang lain. 
                    dianggap sebagai sistem operasi (seperti sistem file) berjalan di ruang pengguna. Dalam sistem seperti itu, sulit untuk menggambar batas yang jelas. Segala sesuatu yang berjalan dalam mode kernel jelas merupakan bagian dari sistem operasi, tetapi beberapa program yang berjalan di luarnya bisa dibilang juga bagian dari itu, atau setidaknya terkait erat dengannya.
                   Sistem operasi berbeda dari program pengguna (yaitu, aplikasi) dengan cara selain di mana mereka berada. Secara khusus, mereka besar, kompleks, dan berumur panjang. Kode sumber sistem operasi seperti Linux atau Windows ada di urutan lima juta baris kode. Untuk memahami apa artinya ini, pikirkan untuk mencetak lima juta baris dalam bentuk buku, dengan 50 baris per halaman dan 1000 halaman per volume (lebih besar dari buku ini). Dibutuhkan 100 volume untuk membuat daftar sistem operasi dengan ukuran ini — pada dasarnya seluruh rak buku. Dapatkah Anda bayangkan mendapatkan pekerjaan mempertahankan sistem operasi dan pada hari pertama meminta atasan membawa Anda ke sebuah kotak buku berisi kode dan berkata: "Pergilah belajar itu." Dan ini hanya untuk bagian yang berjalan di kernel. Program pengguna seperti GUI, perpustakaan, dan perangkat lunak aplikasi dasar (hal-hal seperti Windows Explorer) dapat dengan mudah dijalankan hingga 10 atau 20 kali lipat dari jumlah itu.
                     Seharusnya jelas sekarang mengapa sistem operasi hidup lama - mereka sangat sulit untuk menulis, dan setelah menulis satu, pemilik enggan membuangnya dan mulai lagi. Sebaliknya, mereka berevolusi dalam periode waktu yang lama. Windows 95/98 / Me pada dasarnya adalah satu sistem operasi dan Windows NT / 2000 / XP / Vista adalah yang berbeda. Mereka terlihat mirip dengan pengguna karena Microsoft memastikan bahwa antarmuka pengguna Windows 2000 / XP cukup mirip dengan sistem yang diganti, kebanyakan Windows 98. Namun demikian, ada alasan yang sangat bagus mengapa Microsoft menyingkirkan Windows 98 dan kami akan sampai pada ini ketika kita mempelajari Windows secara terperinci.
                     Contoh utama lain yang akan kita gunakan di seluruh buku ini (selain Windows) adalah UNIX dan varian serta klonnya. Itu, juga, telah berkembang selama bertahun-tahun, dengan versi seperti System V, Solaris, dan FreeBSD yang berasal dari sistem asli, sedangkan Linux adalah basis kode baru, meskipun sangat mirip dengan model UNIX dan sangat kompatibel dengannya. Kami akan menggunakan contoh-contoh dari UNIX di seluruh buku ini dan melihat Linux secara detail.

TINJAUAN PERANGKAT KERAS KOMPUTER

Gambar. (A) Pipa tiga tahap, (b) CPU superscalar
           
             menahan buffer sampai mereka dapat dieksekusi. Segera setelah unit eksekusi gratis, ia akan melihat di buffer holding untuk melihat apakah ada instruksi yang dapat ditangani, dan jika demikian, ia menghapus instruksi dari buffer dan menjalankannya. Implikasi dari desain ini adalah bahwa instruksi program sering dijalankan tidak sesuai pesanan. Untuk sebagian besar, tergantung pada perangkat keras untuk memastikan hasil yang dihasilkan adalah sama dengan implementasi sekuensial yang akan dihasilkan, tetapi kerumitan jumlah yang mengganggu dimasukkan ke sistem operasi, seperti yang akan kita lihat.
           Sebagian besar CPU, kecuali yang sangat sederhana yang digunakan dalam sistem tertanam,. Memiliki dua mode, mode kernel dan mode pengguna, sebagaimana disebutkan sebelumnya. Biasanya, sedikit di PSW mengontrol mode. Saat berjalan dalam mode kernel, CPU dapat menjalankan setiap instruksi dalam set instruksi dan menggunakan setiap fitur perangkat keras. Sistem operasi berjalan dalam mode kernel, memberikannya akses ke perangkat keras yang lengkap.

DISK
         Selanjutnya dalam hierarki adalah disk magnetik (hard disk). Penyimpanan disk dua urutan besarnya lebih murah daripada RAM per bit dan seringkali dua urutan besarnya lebih besar juga. Satu-satunya masalah adalah bahwa waktu untuk mengakses data secara acak hampir tiga kali lipat lebih lambat. Kecepatan rendah ini disebabkan oleh fakta bahwa disk adalah perangkat mekanis seperti gambar dibawah ini.

Gambar. Komponen Lapisan Disk

          Disk terdiri dari satu atau lebih piring-piring logam yang berputar pada 5400, 7200, atau 10.800 rpm. Lengan mekanik berputar di atas piring-piring dari sudut, mirip dengan lengan pikap pada fonograf 33 rpm tua untuk memutar rekaman vinil. Informasi ditulis ke disk dalam serangkaian lingkaran konsentris. Pada posisi lengan tertentu, masing-masing kepala dapat membaca daerah berbentuk lingkaran yang disebut trek. Bersama-sama, semua trek untuk posisi lengan tertentu membentuk sebuah silinder. Setiap trek dibagi menjadi beberapa sektor, biasanya 512 byte per sektor. Pada disk modem, silinder luar mengandung lebih banyak sektor daripada yang dalam. Memindahkan lengan dari satu silinder ke silinder berikutnya membutuhkan waktu sekitar 1 msec. Memindahkannya ke silinder acak biasanya membutuhkan 5 msec hingga 10 msec, tergantung pada drive. Setelah lengan berada di trek yang benar, drive harus menunggu sektor yang diperlukan untuk berputar di bawah kepala, penundaan tambahan 5 msec hingga 10 msec, tergantung pada rpm drive. Setelah sektor berada di bawah kepala, membaca atau menulis terjadi pada tingkat 50 MB / detik pada disk low-end hingga 160 MB / detik pada yang lebih cepat.