Kamis, 26 November 2020

UTS Sistem operasi, Kampus Milenila ITBI

Nama:Oky prasetya laia

Teknik:Informatika
Kelas:Malam


UTS Sistem Operasi

 SOAL

1.Apa itu sistem operasi?
2.Tuliskan tujuan dan fungsi sistem operasi?
3.Tuliskan perkembangan sistem operasi berdasarkan 3 kelompok besar,tuliskan kelompok besarnya saja, beserta kelebihan dan kekurangan nya.
4.Jelaskan peranan sistem operasi dalam struktur sistem kerja komputer!
5.Apa yang di maksud dengan hardware dan software? Apa peranan masing masing pada sistem operasi komputer!
6.Jelaskan ragam arsitektur sistem operasi secara singkat!
7.Tuliskan konsep manajemen proses pada sistem operasi secara singkat!
8.proses yang dijalankan oleh sistem operasi memiliki 3 jenis keadaan atau status proses yaitu!
9.Tuliskan keuntungan dan kerugian konsep mesin virtual!
10.Apa saja yang sudah kamu pahami setelah belajar sistem operasi? Tuliskan dengan singkat.

JAWABAN

1. Sistem operasi adalah perangkat lunak sistem yang mengatur sumber daya dari perangkat keras dan perangkat lunak, serta sebagai daemon untuk program komputer. Tanpa sistem operasi, pengguna tidak dapat menjalankan program aplikasi pada komputer mereka, kecuali program booting.

2. Sistem operasi merupakan sebuah penghubung antara pengguna dari komputer dengan perangkat keras komputer. “

Sebelum ada sistem operasi, orang hanya mengunakan komputer dengan menggunakan sinyal analog dan sinyal digital. Seiring dengan berkembangnya pengetahuan dan teknologi, pada saat ini terdapat berbagai sistem operasi dengan keunggulan masing-masing.

Untuk lebih memahami sistem operasi maka sebaiknya perlu diketahui terlebih dahulu beberapa konsep dasar mengenai sistem operasi itu sendiri

Pengertian sistem operasi secara umum ialah pengelola seluruh sumber-daya yang terdapat pada sistem komputer dan menyediakan sekumpulan layanan (system calls) ke pemakai sehingga memudahkan dan menyamankan penggunaan serta pemanfaatan sumber-daya sistem komputer.

Fungsi Dasar Sistem Operasi

Sistem komputer pada dasarnya terdiri dari empat komponen utama, yaitu perangkat-keras, program aplikasi, sistem-operasi, dan para pengguna. Sistem operasi berfungsi untuk mengatur dan mengawasi penggunaan perangkat keras oleh berbagai program aplikasi serta para pengguna

Sistem operasi berfungsi ibarat pemerintah dalam suatu negara, dalam arti membuat kondisi komputer agar dapat menjalankan program secara benar. Untuk menghindari konflik yang terjadi pada saat pengguna menggunakan sumber-daya yang sama, sistem operasi mengatur pengguna mana yang dapat mengakses suatu sumber-daya. Sistem operasi juga sering disebut resource allocator. Satu lagi fungsi penting sistem operasi ialah sebagai program pengendali yang bertujuan untuk menghindari kekeliruan (error) dan penggunaan komputer yang tidak perlu.

Tujuan Mempelajari Sistem Operasi

Tujuan mempelajari sistem operasi agar dapat merancang sendiri serta dapat memodifikasi sistem yang telah ada sesuai dengan kebutuhan kita, agar dapat memilih alternatif sistem operasi, memaksimalkan penggunaan sistem operasi dan agar konsep dan teknik sistem operasi dapat diterapkan pada aplikasi-aplikasi lain.

Fungsi dan Tujuan Sistem Operasi

fungsi dan tujuan dari sitem operasi adalah mengontrol eksekusi program-program aplikasi dan juga sebagai interface antara pengguna komputer dan hardware komputer. Secara umum sistem operasi memiliki 3 tujuan dasar :

  1. Efisiensi : sistem operasi memungkinkan sumber daya sistem komputer untuk digunakan dengan secara efisien
  2. Kemudahan : sistem operasi membuat komputer lebih mudah dipakai
  3. Kemampuan berevolusi : sistem operasi harus disusun sedemikian rupa sehingga memungkinkan pengembangan yang efektif, pengunjian, dan penerapan fungsi-fungsi sistem yang baru tanpa mengganggu layanan yang telah ada.
3 ..Seperti yang kita ketahui operating system adalah perangkat lunak yang bertugas untuk mengatur, mengendalikan perangkat keras dan memberikan kemudahan untuk pemakai dalam penggunaan computer. Operating system akan melakukan layanan inti umum untuk software aplikasi. Layanan tersebut seperti akses ke disk, management memory, tugas penjadwalan, dan antar muka user. Menurut Tanebaum,  Operating system mengalami perkembangan yang dapat dibagi kedalam lima generasi.

Generasi awal tahun 1945 – 1955 merupakan perkembangan awal komputasi elektronik sebagai pengganti system komputasi mekanik, hal itu disebabkan kecepatan manusia untuk menghitung terbatas dan manusia sangat dapat mudah untuk membuat kecerobohan, kekeliruan bahkan kesalahan. Pada generasi ini belum ada Operating System, maka computer system diberi instruksi yang harus dikerjakan langsung oleh pengguna.

Generasi kedua tahun 1955-1965 memperkenalkan Batch Processing System, yaitu Job yang dikerjakan dalam satu rangkaian, lalu dieksekusi secara berurutan. Generasi ini sistem komputer belum dilengkapi operating system, tetapi beberapa fungsi operating system telah ada, contohnya fungsi operating system ialah FMS dan IBSYS

Generasi Ketiga tahun 1965-1980 operating system pada generasi ini dikembangkan untuk melayani banyak pemakai, dimana para pemakai berkomunikasi lewat terminal secara on-line ke komputer. Operating system menjadi multi-user (digunakan oleh banyak pengguna sekaligus), multi-programming (melayani banyak program sekaligus) dan multi tasking (melayani banyak tugas dan pekerjaan / Batch Processing System)

Generasi Keempat 1980 – 2000-an pada masa ini operating system telah menggunakan Graphical User Interface(GUI) yaitu antar-muka komputer yang berbasis grafis yang sangat nyaman dan mudah digunakan. Pada masa ini juga dimulai era komputasi tersebar (distributed computer) dimana komputasi-komputasi tidak lagi berpusat di satu titik, tetapi dipecah dibanyak komputer sehingga tercapai kinerja yang lebih baik.

Generasi Selanjutnya pada generasi ini diperkenalkan Operating system yang berada dalam sebuah Operating system dan Operating system bergerak (Mobile) pada perangkat bergerak seperti: PDA, Poket PC, Laptop, Notebook dan NetBook. Operating system jaringan virtual juga berkembang, sehingga dalam satu jaringan hanya diinstal satu buah Operating system pada perangkat Server.

Semakin berkembangnya zaman , teknologi pun semakin berkembang. Tiap orang berpikir untuk bagaimana semakin hari teknologi dapat membantu manusia dalam mengerjakan pekerjaan manusia sehingga lebih mudah. Dari teknologi itu sendiri sangat berkaitan dengan sistem yang semakin berkembang contohnya pada Operating System Komputer.

Dari tahun ke tahun Operating System Komputer semakin berkembang dari Operating System sederhana dari CLI hingga sekarang berbasis GUI, dari perubahan tersebut memungkinkan adanya Operating System masa  depan yang lebih canggih dari Operating System sebelumnya. Dari tahun tahun saja teknologi sistem operasi sangat cepat perubahan yang sangat signifikan . Sistem  operasi yang sekarang berkembang dari sistem operasi sebelumnya seperti sistem operasi DOS berkembang  menjadi Windows yang dikelola oleh Microsoft dan unix berkembang menjadi linux serta android.

Sistem operasi sekarang,dapat  menjalankan berbagai proses, dari proses sederhana sampai proses yang sangat rumit. Proses-proses tersebut dapat diproses oleh sistem operasi dengan cepat. tetapi untuk proses yang banyak dan rumit masih ada waiting time dan proses nya  lama. Sistem operasi masa depan diramalkan akan dapat memproses banyak proses sekaligus tanpa adanya waiting time. Kecepatan dalam memproses sistem operasi sangatlah cepat.

Sekarang sistem operasi untuk desktop bisa bergiga- giga  , windows 7 saja saat diinstal, kapasitas memori yang digunakan sampai 6 gb lebih,meskipun kapasitas memori sekarang besar, tetapi dengan sistem operasi yang penggunaan memori yang banyak maka akan menyianyiakan penggunan memori untuk meyimpan file yang lain. Sistem operasi masa depan , akan mempunyai kapasitas memori yang kecil. Tetapi pemforma yang diberikan oleh sistem operasi tersebut sangatlah baik dan kompleks.

Sebuah komputer harus diinstall sistem operasinya, hal ini akan menyulitkan jika komputer yang ingin diintall sangat banyak, hal ini menjadi suatu masalah yang harus dipecahkan dimasa kini. Sistem operasi masa depan , akan dapat berjalan disemua komputer tanpa harus mengintallnya, sistem operasi masa depan tidak harus diintall di komputer satu-satu tetapi sistem operasi masa depan hanya dengan mengintall disatu komputer, komputer lain dapat mengakses sistem operasi dikomputer tersebut dan memungkinkan sistem operasi portable.

Dan yang paling menarik dibicarakan saat ini adalah tentang sistem masa depan yaitu Cloud Computing. Cloud Computing adalah sistem operasi dan aplikasi dapat berjalan dengan menggunakan internet, atau yang dikenal komputasi awan. Dimana setiap data yang menggunakan sistem tersebut, tidak disimpan di dalam desktop, tapi disimpan di internet tersebut. Sehingga dalam memakai sistem terbeut kita hanya perlu masuk ke penyimpanan di internet. Kita tidak perlu lagi menyediakan tempat memori dan hardisk yang besar karena setiap file sudah dapat disimpan di internet. Dengan adanya sistem ini kemungkinan tampilan komputer pun akan semakin kecil. Bahkan di masa depan kemungkinan komputer akan berbentuk nanoteknologi yang merupakan teknologi yang melibatkan atom dan molekul dengan ukuran lebih kecil dari 1.000 nanometer, sehingga komputer ini dapat didampingkan dalam perangkat perangkat seperti alat kedokteran, pembelajaran dll.

Sistem komputer masa depan mungkin akan terlihat aneh dimasa sekarang tetapi jika dipelajari lebih mendalam sistem ini ada kemungkinan bakal menjadi sebuah sistem yang nyata dimasa akan datang

SebagaiKernel, yakni program yang terus-menerus berjalan selama komputer tengah dijalankan.

4.  Sebagai Guardian, yakni penyedia kontrol akses yang melindungi file dan memberikan pengawasan kepada proses pembacaan, penulisan atau eksekusi data dan program.Sebagai Gatekeeper, mengendalikan siapa saja yang memang berhak untuk masuk ke dalam sistem dan mengawasi tindakan apa saja yang bisa mereka lakukan saat telah masuk di dalam sistem.Sebagai Optimizer, yakni mengefisiensikan hardware komputer sehingga nyaman untuk dioperasikan oleh pengguna (user), menjadwal input dari pengguna, mengakses basis data, proses komunikasi dan pengeluaran untuk meningkatkan kegunaan.Sebagai Coordinator, yakni menyediakan berbagai fasilitas sehingga aktivitas yang kompleks bisa diatur untuk dikerjakan berdasar urutan yang telah disusun sebelumnya.Sebagai Program Controller, yakni program yang berguna untuk mengontrol program aplikasi lainnya.Sebagai Server, yakni menyediakan layanan yang memang sering dibutuhkan oleh pengguna, entah itu secara eksplisit maupun implisit, seperti mekanisme akses file, fasilitas interupt.Sebagai Accountant, yakni mengatur waktu CPU, penggunaan memori, pemanggilan perangkat Input dan Output, disk storage dan waktu koneksi terminal.Sebagai Interface, yakin menjembatani pengguna dengan hardware, menyediakan lingkungan yang lebih bersahabat dan mudah untuk digunakan. Sehingga, pengguna tidak akan dirumitkan oleh bahasa mesin atau perangkat pada level bawah.Sebagai Sistem Resources Manager, yakni menjadi pengelola seluruh sumber daya Sistem Komputer Sebagai Virtual Machine, yakni menyediakan layanan seperti halnya menyembunyikan kompleksitas pemrograman dan menyajikan fasilitas yang lebih mudah dalam penggunaan perangkat keras.

5 .Hardware adalah sebuah komponen pada sebuah komputer yang dapat dilihat atau berbentuk fisik. Contoh darihardware adalah mouse, keyboard, monitor, printer, dan lain-lain yang dapat di sentuh. Software adalah sebuah perangkat lunak yang berupa data-data yang terdapat didalam sebuah komputer.Sistem operasi berperan dalam mengoordinasikan semua perangkat yang saling terhubung pada komputerdalam waktu yang bersamaan, seperti penyimpanan internal, mouse, speaker, dan CPU. Dalam hal ini sistem operasiberperan sebagai jembatan yang menghubungkan perangkat keras dengan perangkat lunak.

6.ARSITEKTUR SISTEM OPERASI adalah suatu arsitektur perangkat lunak yang dipakai dalam membangun sistem operasi pada komputer. Ada beragam macam atau jenis arsitektur sistem operasi, antara lain sistem monolitik, sistem berlapis, sistem server atau client, sistem virtual mesin dan juga sistem yang berorientasi pada objek.


SISTEM MONOLITIK

Adalah struktur suatu sistem operasi yang tergolong sederhana, dilengkapi operasi dual pelayanan atau sistem call.


SISTEM BERLAPIS


Adalah struktur suatu sistem operasi yang dirancang dengan mamakai pendekatan top-down. Pada sistem berlapis ini, semua fungsi ditentukan serta dibagi ke dalam komponen-komponen.


SISTEM SERVER/CLIENT


Adalah struktur suatu sistem operasi di mana semua pekerjaan keruel akan dilaksanakan pada pengendalian komunikasi di antara server dan client.


SISTEM VIRTUAL


Sistem operasi yang satu ini pada dasarnya tak banyak berbeda dengan sistem berlapis. Hanya saja terdapat tambahan antarmuka yang kemudian menghubungkan antara kernel dengan perangkat keras pada tiap-tiap proses yang ada.


SISTEM BERORIENTASI OBJEK


Merupakan sistem operasi yang secara garis besar mengadopsi keunggulan teknologi yang berorientasi pada objek. Pada sistem ini, layanan akan diimplementasukan sebagai suatu kumpulan objek.

7.Manajemen proses merupakan konsep pokok dalam sistem operasi, sehingga masalah manajemen proses adalah masalah utama dalam perancangan sistem operasi.

Proses adalah program yang sedang dieksekusi. Proses dapat juga didefinisikan sebagai unit kerja terkecil yang secara individu memiliki sumber daya dan dijadwalkan oleh sistem operasi. Proses berisi instruksi, data, program counter, register pemroses, stack data, alamat pengiriman dan variabel pendukung lainnya.

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:

? New                    : Proses sedang dikerjakan/ dibuat.

? Running             : Instruksi sedang dikerjakan.

? Waiting              : Proses sedang menunggu sejumlah kejadian untuk terjadi (seperti sebuah penyelesaian I/O

? Ready                 : Proses sedang menunggu untuk ditugaskan pada sebuah prosesor.

? Terminated       : Proses telah selsesai melaksanakan tugasnya/ mengeksekusi.

 

PROCESS CONTROL BLOCK

Tiap proses digambarkan dalam sistem operasi oleh sebuah process control block (PCB) – juga

disebut sebuah control block. Sebuah PCB ditunjukkan dalam Gambar 2. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk ini:

  • ? Keadaan proses   : Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak                                                               lagi.
  • ? Program counter : Counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk                                            proses ini.
  • ? CPU register          : Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer.

 

PENJADWALAN PROSES

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 pengguna 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 dijadualkan kembali.

 

Terdapat 3 konsep dasar Penjadwalan proses yaitu :

  • Penjadualan Antrian (Scheduling Queue)

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.

  • Penjadual / Scheduler

Sebuah proses berpindah antara berbagai penjadualan antrian selama umur hidupnya. Sistem

operasi harus memilih, untuk keperluan penjadualan, memproses antrian-antrian ini dalam cara tertentu. Pemilihan proses dilaksanakan oleh penjadual yang tepat/ cocok. Dalam sistem batch, sering ada lebih banyak proses yang diserahkan daripada yang dapat dilaksanakan segera

  • Alih Konteks / Switch Context

Mengganti CPU ke proses lain memerlukan penyimpanan suatu keadaan proses lama (state of old

process) dan kemudian beralih ke proses yang baru. Tugas tersebut diketahui sebagai alih konteks (context switch). Alih konteks sebuah proses digambarkan dalam PCB suatu proses; termasuk nilai dari CPU register, status proses (lihat Gambar 7). dan informasi managemen memori. Ketika alih konteks terjadi, kernel menyimpan konteks dari proses lama kedalam PCB nya dan mengisi konteks yang telah disimpan dari process baru yang telah terjadual untuk berjalan.

 

OPERASI PADA PROSES

Proses dalam sistem dapat dieksekusi secara bersama-sama, proses tersebut harus dibuat dan dihapus secara dinamis. Maka, sistem operasi harus menyediakan suatu mekanisme untuk pembuatan proses dan erminasi proses. Sistem operasi dalam mengelola proses dapat melakukan operasi-operasi terhadap proses. Operasi tersebut adalah :

  1. Penciptaan proses
  2. Penghancuran/terminasi proses
  3. Penundaan proses
  4. Pelanjutan kembali proses
  5. Pengubahan prioritas proses
  6. Memblok proses
  7. Membangunkan proses
  8. Menjadwalkan proses
  9. Memungkinkan proses berkomunikasi dengan proses lain

 

Pembuatan Proses

Melibatkan banyak aktivitas, yaitu :

  1. Memberi identitas proses
  2. Menyisipkan proses pada senarai atau tabel proses
  3. Menentukan prioritas awal proses
  4. Menciptakan PCB
  5. Mengalokasikan sumber daya awal bagi proses

 

Kejadian yang dapat menyebabkan penciptaan proses :

  1. Pada lingkungan batch, sebagai tanggapan atas pemberian satu kerja (job). Sistem operasi dengan kendali batch job, setelah menciptakan proses baru, kemudian melanjutkan membaca job berikutnya.
  2. Pada lingkungan interaktif, ketika pemakai baru berusaha logon.
  3. Sebagai tanggapan suatu aplikasi, seperti permintaan pencetakan file, sistem operasi dapat menciptakan proses yang akan mengelola pencetakan itu. Sistem operasi menciptakan proses untuk memenuhi satu fungsi pada program pemakai, tanpa mengharuskan pemakai menunggu.
  4. Proses penciptaan proses lain (proses anak). Untuk mencapai modularitas atau mengeksploitasi

kongkurensi, program pemakai memerintahkan pembuatan sejumlah proses.

Tahap-tahap penciptaan proses

 

Penciptaan proses meliputi beberapa tahap :

  1. Beri satu identifier unik ke proses baru. Isian baru ditambahkan ke tabel proses utama yang berisi satu isian perproses.
  2. Alokasikan ruang untuk proses.
  3. PCB harus diinisialisasi.
  4. Kaitan-kaitan antar tabel dan senarai yang cocok dibuat.
  5. Bila diperlukan struktur data lain maka segera dibuat struktur data itu.

 

Penghancuran / Terminasi Proses

Penghancuran proses melibatkan pembebasan proses dari sistem, yaitu :

  1. Sumber daya-sumber daya yang dipakai dikembalikan.
  2. Proses dihancurkan dari senarai atau tabel sistem.

c.PCB dihapus (ruang memori PCB dikembalikan ke pool memori bebas).

ci.

Penghancuran lebih rumit bila proses telah menciptakan proses-proses lain.

Terdapat dua pendekatan, yaitu :

  1. Pada beberapa sistem, proses-proses turunan dihancurkan saat proses induk dihancurkan secara otomatis.
  2. Beberapa sistem lain menganggap proses anak independen terhadap proses induk, sehingga proses anak tidak secara otomatis dihancurkan saat proses induk dihancurkan.

 

Alasan penghancuran proses :

1 Selesainya proses secara manual. Proses mengeksekusi panggilan layanan sistem operasi untuk menandakan bawah proses telah berjalan secara lengkap.

2 Batas waktu telah terlewati. Proses telah berjalan melebihi batas waktu total yang dispesifikasikan.

3 Memori tidak tersedia. Proses memerlukan memori lebih banyak daripada yang dapat disediakan sistem.

4 Pelanggaran terhadap batas memori Proses mencoba mengakses lokasi memori yang tidak diijinkan diakses.

5 Terjadi kesalahan karena pelanggaran proteksi

6 Terjadi kesalahan aritmatika

7 Waktu telah kedaluwarsa

8 Terjadi kegagalan Masukan/keluaran

9 Instruksi yang tidak benar

 

  • Proses yang Kooperatif

Proses yang bersifat simultan (concurrent) dijalankan pada sistem operasi dapat dibedakaan menjadi yaitu proses independent dan proses kooperatif. Suatu proses dikatakan independen apabila proses tersebut tidak dapat terpengaruh atau dipengaruhi oleh proses lain yang sedang dijalankan pada sistem.

 

  • Komunikasi Proses Dalam Sistem

Cara lain untuk meningkatkan efek yang sama adalah untuk sistem operasi yaitu untuk menyediakan alat-alat proses kooperatif untuk berkomunikasi dengan yang lain lewat sebuah komunikasi dalam proses (IPC = Inter-Process Communication). IPC menyediakan sebuah mekanisme untuk mengizinkan proses- proses untuk berkomunikasi dan menyelaraskan aksi-aksi mereka tanpa berbagi ruang alamat yang sama. IPC adalah khusus digunakan dalam sebuah lingkungan yang terdistribusi dimana proses komunikasi tersebut mungkin saja tetap ada dalam komputer-komputer yang berbeda yang tersambung dalam sebuah jaringan. IPC adalah penyedia layanan terbaik dengan menggnakan sebuah sistem penyampaian pesan, dan sistem- sistem pesan dapat diberikan dalam banyak cara.

 

  • Sistem Penyampaian Pesan

Fungsi dari sebuah sistem pesan adalah untuk memperbolehkan komunikasi satu dengan yang lain

tanpa perlu menggunakan pembagian data. Sebuah fasilitas IPC menyediakan paling sedikit dua operasi yaitu kirim (pesan) dan terima (pesan). Pesan dikirim dengan sebuah proses yang dapat dilakukan pada ukuran pasti atau variabel. Jika hanya pesan dengan ukuran pasti dapat dikirimkan, level sistem implementasi adalah sistem yang sederhana. Pesan berukuran variabel menyediakan sistem implementasi level yang lebih kompleks.

Berikut ini ada beberapa metode untuk mengimplementasikan sebuah jaringan dan operasi

pengiriman/penerimaan secara logika:

  1. Komunikasi langsung atau tidak langsung.
  2. Komunikasi secara simetris/ asimetris.
  3. Buffer otomatis atau eksplisit.
  4. Pengiriman berdasarkan salinan atau referensi.
  5. Pesan berukuran pasti dan variabel.

 

THREAD

Model proses yang didiskusikan sejauh ini telah menunjukkan bahwa suatu proses adalah sebuah

program yang menjalankan eksekusi thread tunggal. Sebagai contoh, jika sebuah proses menjalankan sebuah program Word Processor, ada sebuah thread tunggal dari instruksi-instruksi yang sedang dilaksanakan.

Konsep Dasar

Secara informal, proses adalah program yang sedang dieksekusi. Ada dua jenis proses, proses berat

(heavyweight) atau biasa dikenal dengan proses tradisional, dan proses ringan atau kadang disebut thread.

Thread saling berbagi bagian program, bagian data dan sumber daya sistem operasi dengan thread

lain yang mengacu pada proses yang sama. Thread terdiri atas ID thread, program counter, himpunan register, dan stack. Dengan banyak kontrol thread proses dapat melakukan lebih dari satu pekerjaan pada waktu yang sama.

User Threads

User thread didukung oleh kernel dan diimplementasikan oleh thread library ditingkat pengguna.

Library mendukung untuk pembentukan thread, penjadualan, dan managemen yang tidak didukung oleh

kernel.

Kernel Threads

Kernel thread didukung secara langsung oleh sistem operasi: pembentukan thread, penjadualan, dan managemen dilakukan oleh kernel dalam ruang kernel. Karena managemen thread telah dilakukan oleh sistem operasi, kernel thread biasanya lebih lambat untuk membuat dan mengelola daripada pengguna thread.

Model Multithreading

Dalam sub bab sebelumnya telah dibahas pengertian dari thread, keuntungannya, tingkatan atau

levelnya seperti pengguna dan kernel. Sistem-sistem yang ada sekarang sudah banyak yang bisa mendukung untuk kedua pengguna dan kernel thread, sehingga model-model multithreading-nya pun menjadi beragam. Implementasi multithreading yang umum akan kita bahas ada tiga, yaitu model many-to-one, one-to-one, dan many-to-many.

Model Many to One

Model many-to-one ini memetakan beberapa tingkatan pengguna thread hanya ke satu buah kernel

thread. Managemen proses thread dilakukan oleh (di ruang) pengguna, sehingga menjadi efisien, tetapi apabila sebuah thread melakukan sebuah pemblokingan terhadap sistem pemanggilan, maka seluruh proses akan berhenti (blocked). Kelemahan dari model ini adalah multihreads tidak dapat berjalan atau bekerja secara paralel di dalam multiprosesor dikarenakan hanya satu thread saja yang bisa mengakses kernel dalam suatu waktu.

Model One to One

Model one-to-one memetakan setiap thread pengguna ke dalam satu kernel thread. Hal ini membuat model one-to-one lebih sinkron daripada model many-to-one dengan mengizinkan thread lain untuk berjalan ketika suatu thread membuat pemblokingan terhadap sistem pemanggilan; hal ini juga mengizinkan multiple thread untuk berjalan secara parallel dalam multiprosesor. Kelemahan model ini adalah dalam pembuatan thread pengguna dibutuhkan pembuatan korespondensi thread pengguna. Karena dalam proses pembuatan kernel thread dapat mempengaruhi kinerja dari aplikasi maka kebanyakan dari implementasi model ini membatasi jumlah thread yang didukung oleh sistem. Model one-to-one diimplementasikan oleh Windows NT dan OS/2.

Model Many to Many

Beberapa tingkatan thread pengguna dapat menggunakan jumlah kernel thread yang lebih kecil atau sama dengan jumlah thread pengguna. Jumlah dari kernel thread dapat dispesifikasikan untuk beberapa aplikasi dan beberapa mesin (suatu aplikasi dapat dialokasikan lebih dari beberapakernel thread dalam multiprosesor daripada dalam uniprosesor) dimana model many-to-one mengizinkan pengembang untuk membuat thread pengguna sebanyak mungkin, konkurensi tidak dapat tercapai karena hanya satu thread yang dapat dijadualkan oleh kernel dalam satu waktu. Model one-to-one mempunyai konkurensi yang lebih tinggi, tetapi pengembang harus hati-hati untuk tidak membuat terlalu banyak thread tanpa aplikasi dan dalam kasus tertentu mungkin jumlah thread yang dapat dibuat dibatasi.

8.

Status Proses Sistem Operasi

Proses adalah keadaan ketika sebuah program sedang di eksekusi. Saat komputer berjalan, terdapat banyak proses yang berjalan secara bersamaan. Sebuah proses dibuat melalui system call create-process yang membentuk proses turunan ( child process) yang dilakukan oleh proses induk ( parent process). Proses turunan tersebut juga mampu membuat proses baru sehingga semua proses ini pada akhirnya membentuk pohon proses.
Pada saat proses dieksekusi, akan terjadi perubahan status. Status proses didefinisikan sebagai bagian dari aktivitas proses yang sedang berlangsung saat itu. Tipa-tiap proses dapat memiliki salah satu status di bawah ini:
– New, yaitu status yang dimiliki pada saat proses baru saja dibuat oleh penjadwalan tingkat tinggi, tetapi belum siap melakukan eksekusi
– Running, yaitu status yang dimiliki pada saat proses bisa dieksekusi, karena CPU tidak sedang mengerjakan tugas yang lain
– Waiting, yaitu status yang dimiliki pada saat proses sedang menunggu beberapa event yang akan terjadi (seperti menunggu untuk menyelesaikan I/O atau menerima sinyal)
– Ready, yaitu status yang dimiliki pada saat proses menunggu jatah waktu dari prosesor
– Terminated, yaitu status yang dimiliki pada saat proses telah selesai dieksekusi
Saat komputer berjalan, terdapat banyak proses yang berjalan secara bersamaan. Sebuah proses dibuat melalui system call create-process membentuk proses turunan (child process) yang dilakukan oleh proses induk parent process. Proses turunan tersebut juga mampu membuat proses baru sehingga kesemua proses-proses ini pada akhirnya membentuk pohon proses.
Ketika sebuah proses dibuat maka proses tersebut dapat memperoleh sumber-daya seperti ”waktu CPU”, ”memori”, ”berkas” atau perangkat ”M/K”. Sumber daya ini dapat diperoleh langsung dari Sistem Operasi, dari Proses Induk yang membagi-bagikan sumber daya kepada setiap proses turunannnya, atau proses turunan dan proses induk berbagi sumber-daya yang diberikan Sistem Operasi.
Ada dua kemungkinan bagaimana jalannya (running) proses induk dan turunan berjalan (running). Proses-proses tersebut berjalan secara konkuren atau proses induk menunggu sampai beberapa/seluruh proses turunannya selesai berjalan
Proses Control Block adalah bentuk informasi-informasi lain yang diperlukan sistem operasi untuk mengendalikan dan mengoordinasikan beragam proses aktif dalam suatu proses. Dalam kenyataannya, proses banyak mengalami gangguan dalam menjalankan tugasnya oleh karena itu ada PCB (Proses Control Block) untuk membantu dan memberikan dukungan kepada proses itu.
Setiap proses digambarkan dalam sistem operasi oleh sebuah process control block(PCB), juga disebut sebuah control block. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, seperti status proses, program counter, CPU register, Informasi manajemen memori, informasi pencatatan, informasi status I/O. Berikut adalah gambar diagram PCB.

9. Mesin Virtual

 rang ini, mesin-mesin virtual dapat mensimulasikan perangkat keras walaupun tidak ada perangkat keras aslinya sama sekali.[1]

Contohnya adalah program yang ditulis dalam bahasa Java akan dilayani oleh Java Virtual Machine (JVM) dengan cara memberikan perintah-perintah yang dimengerti JVM yang selanjutnya akan memberikan hasil yang diharapkan. Dengan memberikan layanan seperti ini kepada program tersebut, perangkat lunak JVM ini berlaku sebagai sebuah “mesin virtual”, sehingga program tidak lagi perlu untuk mengakses langsung melalui sistem operasi ataupun perangkat keras yang sangat bervariasi dan memerlukan pemrograman masing-masing secara spesifik.

Mesin virtual terdiri dari dua kategori besar, dipisahkan menurut cara penggunaan dan tingkat keterhubungannya dengan mesin-mesin aslinya. Sebuah mesin virtual sistemadalah perangkat yang berupa platform sistem yang lengkap dan dapat menjalankan sebuah sistem operasi yang lengkap. Sebaliknya, mesin virtual proses didesain untuk menjalankan sebuah program komputer tertentu (tunggal), yang berarti mesin virtual ini mendukung proses tertentu juga. Karakteristik mendasar dari sebuah mesin virtual adalah batasan-batasan bagi perangkat lunak yang berjalan di dalam mesin tersebut, sumber daya yang dibatasi, dan tidak dapat mengakses ke luar tembok batasan dunia maya itu

Keuntungan

  • Meningkatkan pemanfaatan hardware mesin Anda
  • Menurunkan biaya modal dan operasional
  • Ketersediaan tinggi
  • Anda dapat menjalankan program lain di VM yang belum tentu di OS yang sama dengan mesin host (misalnya menjalankan Windows atau Mac OS X VM pada mesin host Linux, dan sebaliknya)
  • Beberapa solusi VM memungkinkan Anda untuk menyimpan negara mesin yang akan memungkinkan Anda untuk kembali ke keadaan sebelumnya harus kesalahan terjadi
  • Umumnya VMS agak terisolasi dari mesin host dalam kasus infeksi oleh malware, tuan rumah tidak akan terpengaruh

Kekurangan

  • Jika tuan rumah sedang down, VM tidak bisa diakses
  • Peningkatan memori dan penggunaan prosesor sebagai bagian dari biaya overhead diperkenalkan oleh VM
  • Dengan pernyataan dari VM yang “terisolasi”, hal ini juga tergantung pada bagaimana Anda mengkonfigurasi mesin Anda. Jika Anda memiliki VM hal-hal seperti shared folder clipboard / file atau jika ada fitur yang memungkinkan passthrough hardware (tersedia untuk sejumlah pilih perangkat keras) mungkin masih mengekspos mesin host Anda untuk ancaman yang sama seperti jika Anda akan dengan VM. 
10. Saya telah memahami cara kerja sistem operasi dan bagaimana cara sistem operasi di instal kembali

UTS Sistem Operasi

 SOAL

1.Apa itu sistem operasi?
2.Tuliskan tujuan dan fungsi sistem operasi?
3.Tuliskan perkembangan sistem operasi berdasarkan 3 kelompok besar,tuliskan kelompok besarnya saja, beserta kelebihan dan kekurangan nya.
4.Jelaskan peranan sistem operasi dalam struktur sistem kerja komputer!
5.Apa yang di maksud dengan hardware dan software? Apa peranan masing masing pada sistem operasi komputer!
6.Jelaskan ragam arsitektur sistem operasi secara singkat!
7.Tuliskan konsep manajemen proses pada sistem operasi secara singkat!
8.proses yang dijalankan oleh sistem operasi memiliki 3 jenis keadaan atau status proses yaitu!
9.Tuliskan keuntungan dan kerugian konsep mesin virtual!
10.Apa saja yang sudah kamu pahami setelah belajar sistem operasi? Tuliskan dengan singkat.

JAWABAN

1. Sistem operasi adalah perangkat lunak sistem yang mengatur sumber daya dari perangkat keras dan perangkat lunak, serta sebagai daemon untuk program komputer. Tanpa sistem operasi, pengguna tidak dapat menjalankan program aplikasi pada komputer mereka, kecuali program booting.

2. Sistem operasi merupakan sebuah penghubung antara pengguna dari komputer dengan perangkat keras komputer. “

Sebelum ada sistem operasi, orang hanya mengunakan komputer dengan menggunakan sinyal analog dan sinyal digital. Seiring dengan berkembangnya pengetahuan dan teknologi, pada saat ini terdapat berbagai sistem operasi dengan keunggulan masing-masing.

Untuk lebih memahami sistem operasi maka sebaiknya perlu diketahui terlebih dahulu beberapa konsep dasar mengenai sistem operasi itu sendiri

Pengertian sistem operasi secara umum ialah pengelola seluruh sumber-daya yang terdapat pada sistem komputer dan menyediakan sekumpulan layanan (system calls) ke pemakai sehingga memudahkan dan menyamankan penggunaan serta pemanfaatan sumber-daya sistem komputer.

Fungsi Dasar Sistem Operasi

Sistem komputer pada dasarnya terdiri dari empat komponen utama, yaitu perangkat-keras, program aplikasi, sistem-operasi, dan para pengguna. Sistem operasi berfungsi untuk mengatur dan mengawasi penggunaan perangkat keras oleh berbagai program aplikasi serta para pengguna

Sistem operasi berfungsi ibarat pemerintah dalam suatu negara, dalam arti membuat kondisi komputer agar dapat menjalankan program secara benar. Untuk menghindari konflik yang terjadi pada saat pengguna menggunakan sumber-daya yang sama, sistem operasi mengatur pengguna mana yang dapat mengakses suatu sumber-daya. Sistem operasi juga sering disebut resource allocator. Satu lagi fungsi penting sistem operasi ialah sebagai program pengendali yang bertujuan untuk menghindari kekeliruan (error) dan penggunaan komputer yang tidak perlu.

Tujuan Mempelajari Sistem Operasi

Tujuan mempelajari sistem operasi agar dapat merancang sendiri serta dapat memodifikasi sistem yang telah ada sesuai dengan kebutuhan kita, agar dapat memilih alternatif sistem operasi, memaksimalkan penggunaan sistem operasi dan agar konsep dan teknik sistem operasi dapat diterapkan pada aplikasi-aplikasi lain.

Fungsi dan Tujuan Sistem Operasi

fungsi dan tujuan dari sitem operasi adalah mengontrol eksekusi program-program aplikasi dan juga sebagai interface antara pengguna komputer dan hardware komputer. Secara umum sistem operasi memiliki 3 tujuan dasar :

  1. Efisiensi : sistem operasi memungkinkan sumber daya sistem komputer untuk digunakan dengan secara efisien
  2. Kemudahan : sistem operasi membuat komputer lebih mudah dipakai
  3. Kemampuan berevolusi : sistem operasi harus disusun sedemikian rupa sehingga memungkinkan pengembangan yang efektif, pengunjian, dan penerapan fungsi-fungsi sistem yang baru tanpa mengganggu layanan yang telah ada.
3 ..Seperti yang kita ketahui operating system adalah perangkat lunak yang bertugas untuk mengatur, mengendalikan perangkat keras dan memberikan kemudahan untuk pemakai dalam penggunaan computer. Operating system akan melakukan layanan inti umum untuk software aplikasi. Layanan tersebut seperti akses ke disk, management memory, tugas penjadwalan, dan antar muka user. Menurut Tanebaum,  Operating system mengalami perkembangan yang dapat dibagi kedalam lima generasi.

Generasi awal tahun 1945 – 1955 merupakan perkembangan awal komputasi elektronik sebagai pengganti system komputasi mekanik, hal itu disebabkan kecepatan manusia untuk menghitung terbatas dan manusia sangat dapat mudah untuk membuat kecerobohan, kekeliruan bahkan kesalahan. Pada generasi ini belum ada Operating System, maka computer system diberi instruksi yang harus dikerjakan langsung oleh pengguna.

Generasi kedua tahun 1955-1965 memperkenalkan Batch Processing System, yaitu Job yang dikerjakan dalam satu rangkaian, lalu dieksekusi secara berurutan. Generasi ini sistem komputer belum dilengkapi operating system, tetapi beberapa fungsi operating system telah ada, contohnya fungsi operating system ialah FMS dan IBSYS

Generasi Ketiga tahun 1965-1980 operating system pada generasi ini dikembangkan untuk melayani banyak pemakai, dimana para pemakai berkomunikasi lewat terminal secara on-line ke komputer. Operating system menjadi multi-user (digunakan oleh banyak pengguna sekaligus), multi-programming (melayani banyak program sekaligus) dan multi tasking (melayani banyak tugas dan pekerjaan / Batch Processing System)

Generasi Keempat 1980 – 2000-an pada masa ini operating system telah menggunakan Graphical User Interface(GUI) yaitu antar-muka komputer yang berbasis grafis yang sangat nyaman dan mudah digunakan. Pada masa ini juga dimulai era komputasi tersebar (distributed computer) dimana komputasi-komputasi tidak lagi berpusat di satu titik, tetapi dipecah dibanyak komputer sehingga tercapai kinerja yang lebih baik.

Generasi Selanjutnya pada generasi ini diperkenalkan Operating system yang berada dalam sebuah Operating system dan Operating system bergerak (Mobile) pada perangkat bergerak seperti: PDA, Poket PC, Laptop, Notebook dan NetBook. Operating system jaringan virtual juga berkembang, sehingga dalam satu jaringan hanya diinstal satu buah Operating system pada perangkat Server.

Semakin berkembangnya zaman , teknologi pun semakin berkembang. Tiap orang berpikir untuk bagaimana semakin hari teknologi dapat membantu manusia dalam mengerjakan pekerjaan manusia sehingga lebih mudah. Dari teknologi itu sendiri sangat berkaitan dengan sistem yang semakin berkembang contohnya pada Operating System Komputer.

Dari tahun ke tahun Operating System Komputer semakin berkembang dari Operating System sederhana dari CLI hingga sekarang berbasis GUI, dari perubahan tersebut memungkinkan adanya Operating System masa  depan yang lebih canggih dari Operating System sebelumnya. Dari tahun tahun saja teknologi sistem operasi sangat cepat perubahan yang sangat signifikan . Sistem  operasi yang sekarang berkembang dari sistem operasi sebelumnya seperti sistem operasi DOS berkembang  menjadi Windows yang dikelola oleh Microsoft dan unix berkembang menjadi linux serta android.

Sistem operasi sekarang,dapat  menjalankan berbagai proses, dari proses sederhana sampai proses yang sangat rumit. Proses-proses tersebut dapat diproses oleh sistem operasi dengan cepat. tetapi untuk proses yang banyak dan rumit masih ada waiting time dan proses nya  lama. Sistem operasi masa depan diramalkan akan dapat memproses banyak proses sekaligus tanpa adanya waiting time. Kecepatan dalam memproses sistem operasi sangatlah cepat.

Sekarang sistem operasi untuk desktop bisa bergiga- giga  , windows 7 saja saat diinstal, kapasitas memori yang digunakan sampai 6 gb lebih,meskipun kapasitas memori sekarang besar, tetapi dengan sistem operasi yang penggunaan memori yang banyak maka akan menyianyiakan penggunan memori untuk meyimpan file yang lain. Sistem operasi masa depan , akan mempunyai kapasitas memori yang kecil. Tetapi pemforma yang diberikan oleh sistem operasi tersebut sangatlah baik dan kompleks.

Sebuah komputer harus diinstall sistem operasinya, hal ini akan menyulitkan jika komputer yang ingin diintall sangat banyak, hal ini menjadi suatu masalah yang harus dipecahkan dimasa kini. Sistem operasi masa depan , akan dapat berjalan disemua komputer tanpa harus mengintallnya, sistem operasi masa depan tidak harus diintall di komputer satu-satu tetapi sistem operasi masa depan hanya dengan mengintall disatu komputer, komputer lain dapat mengakses sistem operasi dikomputer tersebut dan memungkinkan sistem operasi portable.

Dan yang paling menarik dibicarakan saat ini adalah tentang sistem masa depan yaitu Cloud Computing. Cloud Computing adalah sistem operasi dan aplikasi dapat berjalan dengan menggunakan internet, atau yang dikenal komputasi awan. Dimana setiap data yang menggunakan sistem tersebut, tidak disimpan di dalam desktop, tapi disimpan di internet tersebut. Sehingga dalam memakai sistem terbeut kita hanya perlu masuk ke penyimpanan di internet. Kita tidak perlu lagi menyediakan tempat memori dan hardisk yang besar karena setiap file sudah dapat disimpan di internet. Dengan adanya sistem ini kemungkinan tampilan komputer pun akan semakin kecil. Bahkan di masa depan kemungkinan komputer akan berbentuk nanoteknologi yang merupakan teknologi yang melibatkan atom dan molekul dengan ukuran lebih kecil dari 1.000 nanometer, sehingga komputer ini dapat didampingkan dalam perangkat perangkat seperti alat kedokteran, pembelajaran dll.

Sistem komputer masa depan mungkin akan terlihat aneh dimasa sekarang tetapi jika dipelajari lebih mendalam sistem ini ada kemungkinan bakal menjadi sebuah sistem yang nyata dimasa akan datang

SebagaiKernel, yakni program yang terus-menerus berjalan selama komputer tengah dijalankan.

4.  Sebagai Guardian, yakni penyedia kontrol akses yang melindungi file dan memberikan pengawasan kepada proses pembacaan, penulisan atau eksekusi data dan program.Sebagai Gatekeeper, mengendalikan siapa saja yang memang berhak untuk masuk ke dalam sistem dan mengawasi tindakan apa saja yang bisa mereka lakukan saat telah masuk di dalam sistem.Sebagai Optimizer, yakni mengefisiensikan hardware komputer sehingga nyaman untuk dioperasikan oleh pengguna (user), menjadwal input dari pengguna, mengakses basis data, proses komunikasi dan pengeluaran untuk meningkatkan kegunaan.Sebagai Coordinator, yakni menyediakan berbagai fasilitas sehingga aktivitas yang kompleks bisa diatur untuk dikerjakan berdasar urutan yang telah disusun sebelumnya.Sebagai Program Controller, yakni program yang berguna untuk mengontrol program aplikasi lainnya.Sebagai Server, yakni menyediakan layanan yang memang sering dibutuhkan oleh pengguna, entah itu secara eksplisit maupun implisit, seperti mekanisme akses file, fasilitas interupt.Sebagai Accountant, yakni mengatur waktu CPU, penggunaan memori, pemanggilan perangkat Input dan Output, disk storage dan waktu koneksi terminal.Sebagai Interface, yakin menjembatani pengguna dengan hardware, menyediakan lingkungan yang lebih bersahabat dan mudah untuk digunakan. Sehingga, pengguna tidak akan dirumitkan oleh bahasa mesin atau perangkat pada level bawah.Sebagai Sistem Resources Manager, yakni menjadi pengelola seluruh sumber daya Sistem Komputer Sebagai Virtual Machine, yakni menyediakan layanan seperti halnya menyembunyikan kompleksitas pemrograman dan menyajikan fasilitas yang lebih mudah dalam penggunaan perangkat keras.

5 .Hardware adalah sebuah komponen pada sebuah komputer yang dapat dilihat atau berbentuk fisik. Contoh darihardware adalah mouse, keyboard, monitor, printer, dan lain-lain yang dapat di sentuh. Software adalah sebuah perangkat lunak yang berupa data-data yang terdapat didalam sebuah komputer.Sistem operasi berperan dalam mengoordinasikan semua perangkat yang saling terhubung pada komputerdalam waktu yang bersamaan, seperti penyimpanan internal, mouse, speaker, dan CPU. Dalam hal ini sistem operasiberperan sebagai jembatan yang menghubungkan perangkat keras dengan perangkat lunak.

6.ARSITEKTUR SISTEM OPERASI adalah suatu arsitektur perangkat lunak yang dipakai dalam membangun sistem operasi pada komputer. Ada beragam macam atau jenis arsitektur sistem operasi, antara lain sistem monolitik, sistem berlapis, sistem server atau client, sistem virtual mesin dan juga sistem yang berorientasi pada objek.


SISTEM MONOLITIK

Adalah struktur suatu sistem operasi yang tergolong sederhana, dilengkapi operasi dual pelayanan atau sistem call.


SISTEM BERLAPIS


Adalah struktur suatu sistem operasi yang dirancang dengan mamakai pendekatan top-down. Pada sistem berlapis ini, semua fungsi ditentukan serta dibagi ke dalam komponen-komponen.


SISTEM SERVER/CLIENT


Adalah struktur suatu sistem operasi di mana semua pekerjaan keruel akan dilaksanakan pada pengendalian komunikasi di antara server dan client.


SISTEM VIRTUAL


Sistem operasi yang satu ini pada dasarnya tak banyak berbeda dengan sistem berlapis. Hanya saja terdapat tambahan antarmuka yang kemudian menghubungkan antara kernel dengan perangkat keras pada tiap-tiap proses yang ada.


SISTEM BERORIENTASI OBJEK


Merupakan sistem operasi yang secara garis besar mengadopsi keunggulan teknologi yang berorientasi pada objek. Pada sistem ini, layanan akan diimplementasukan sebagai suatu kumpulan objek.

7.Manajemen proses merupakan konsep pokok dalam sistem operasi, sehingga masalah manajemen proses adalah masalah utama dalam perancangan sistem operasi.

Proses adalah program yang sedang dieksekusi. Proses dapat juga didefinisikan sebagai unit kerja terkecil yang secara individu memiliki sumber daya dan dijadwalkan oleh sistem operasi. Proses berisi instruksi, data, program counter, register pemroses, stack data, alamat pengiriman dan variabel pendukung lainnya.

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:

? New                    : Proses sedang dikerjakan/ dibuat.

? Running             : Instruksi sedang dikerjakan.

? Waiting              : Proses sedang menunggu sejumlah kejadian untuk terjadi (seperti sebuah penyelesaian I/O

? Ready                 : Proses sedang menunggu untuk ditugaskan pada sebuah prosesor.

? Terminated       : Proses telah selsesai melaksanakan tugasnya/ mengeksekusi.

 

PROCESS CONTROL BLOCK

Tiap proses digambarkan dalam sistem operasi oleh sebuah process control block (PCB) – juga

disebut sebuah control block. Sebuah PCB ditunjukkan dalam Gambar 2. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk ini:

  • ? Keadaan proses   : Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak                                                               lagi.
  • ? Program counter : Counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk                                            proses ini.
  • ? CPU register          : Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer.

 

PENJADWALAN PROSES

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 pengguna 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 dijadualkan kembali.

 

Terdapat 3 konsep dasar Penjadwalan proses yaitu :

  • Penjadualan Antrian (Scheduling Queue)

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.

  • Penjadual / Scheduler

Sebuah proses berpindah antara berbagai penjadualan antrian selama umur hidupnya. Sistem

operasi harus memilih, untuk keperluan penjadualan, memproses antrian-antrian ini dalam cara tertentu. Pemilihan proses dilaksanakan oleh penjadual yang tepat/ cocok. Dalam sistem batch, sering ada lebih banyak proses yang diserahkan daripada yang dapat dilaksanakan segera

  • Alih Konteks / Switch Context

Mengganti CPU ke proses lain memerlukan penyimpanan suatu keadaan proses lama (state of old

process) dan kemudian beralih ke proses yang baru. Tugas tersebut diketahui sebagai alih konteks (context switch). Alih konteks sebuah proses digambarkan dalam PCB suatu proses; termasuk nilai dari CPU register, status proses (lihat Gambar 7). dan informasi managemen memori. Ketika alih konteks terjadi, kernel menyimpan konteks dari proses lama kedalam PCB nya dan mengisi konteks yang telah disimpan dari process baru yang telah terjadual untuk berjalan.

 

OPERASI PADA PROSES

Proses dalam sistem dapat dieksekusi secara bersama-sama, proses tersebut harus dibuat dan dihapus secara dinamis. Maka, sistem operasi harus menyediakan suatu mekanisme untuk pembuatan proses dan erminasi proses. Sistem operasi dalam mengelola proses dapat melakukan operasi-operasi terhadap proses. Operasi tersebut adalah :

  1. Penciptaan proses
  2. Penghancuran/terminasi proses
  3. Penundaan proses
  4. Pelanjutan kembali proses
  5. Pengubahan prioritas proses
  6. Memblok proses
  7. Membangunkan proses
  8. Menjadwalkan proses
  9. Memungkinkan proses berkomunikasi dengan proses lain

 

Pembuatan Proses

Melibatkan banyak aktivitas, yaitu :

  1. Memberi identitas proses
  2. Menyisipkan proses pada senarai atau tabel proses
  3. Menentukan prioritas awal proses
  4. Menciptakan PCB
  5. Mengalokasikan sumber daya awal bagi proses

 

Kejadian yang dapat menyebabkan penciptaan proses :

  1. Pada lingkungan batch, sebagai tanggapan atas pemberian satu kerja (job). Sistem operasi dengan kendali batch job, setelah menciptakan proses baru, kemudian melanjutkan membaca job berikutnya.
  2. Pada lingkungan interaktif, ketika pemakai baru berusaha logon.
  3. Sebagai tanggapan suatu aplikasi, seperti permintaan pencetakan file, sistem operasi dapat menciptakan proses yang akan mengelola pencetakan itu. Sistem operasi menciptakan proses untuk memenuhi satu fungsi pada program pemakai, tanpa mengharuskan pemakai menunggu.
  4. Proses penciptaan proses lain (proses anak). Untuk mencapai modularitas atau mengeksploitasi

kongkurensi, program pemakai memerintahkan pembuatan sejumlah proses.

Tahap-tahap penciptaan proses

 

Penciptaan proses meliputi beberapa tahap :

  1. Beri satu identifier unik ke proses baru. Isian baru ditambahkan ke tabel proses utama yang berisi satu isian perproses.
  2. Alokasikan ruang untuk proses.
  3. PCB harus diinisialisasi.
  4. Kaitan-kaitan antar tabel dan senarai yang cocok dibuat.
  5. Bila diperlukan struktur data lain maka segera dibuat struktur data itu.

 

Penghancuran / Terminasi Proses

Penghancuran proses melibatkan pembebasan proses dari sistem, yaitu :

  1. Sumber daya-sumber daya yang dipakai dikembalikan.
  2. Proses dihancurkan dari senarai atau tabel sistem.

c.PCB dihapus (ruang memori PCB dikembalikan ke pool memori bebas).

ci.

Penghancuran lebih rumit bila proses telah menciptakan proses-proses lain.

Terdapat dua pendekatan, yaitu :

  1. Pada beberapa sistem, proses-proses turunan dihancurkan saat proses induk dihancurkan secara otomatis.
  2. Beberapa sistem lain menganggap proses anak independen terhadap proses induk, sehingga proses anak tidak secara otomatis dihancurkan saat proses induk dihancurkan.

 

Alasan penghancuran proses :

1 Selesainya proses secara manual. Proses mengeksekusi panggilan layanan sistem operasi untuk menandakan bawah proses telah berjalan secara lengkap.

2 Batas waktu telah terlewati. Proses telah berjalan melebihi batas waktu total yang dispesifikasikan.

3 Memori tidak tersedia. Proses memerlukan memori lebih banyak daripada yang dapat disediakan sistem.

4 Pelanggaran terhadap batas memori Proses mencoba mengakses lokasi memori yang tidak diijinkan diakses.

5 Terjadi kesalahan karena pelanggaran proteksi

6 Terjadi kesalahan aritmatika

7 Waktu telah kedaluwarsa

8 Terjadi kegagalan Masukan/keluaran

9 Instruksi yang tidak benar

 

  • Proses yang Kooperatif

Proses yang bersifat simultan (concurrent) dijalankan pada sistem operasi dapat dibedakaan menjadi yaitu proses independent dan proses kooperatif. Suatu proses dikatakan independen apabila proses tersebut tidak dapat terpengaruh atau dipengaruhi oleh proses lain yang sedang dijalankan pada sistem.

 

  • Komunikasi Proses Dalam Sistem

Cara lain untuk meningkatkan efek yang sama adalah untuk sistem operasi yaitu untuk menyediakan alat-alat proses kooperatif untuk berkomunikasi dengan yang lain lewat sebuah komunikasi dalam proses (IPC = Inter-Process Communication). IPC menyediakan sebuah mekanisme untuk mengizinkan proses- proses untuk berkomunikasi dan menyelaraskan aksi-aksi mereka tanpa berbagi ruang alamat yang sama. IPC adalah khusus digunakan dalam sebuah lingkungan yang terdistribusi dimana proses komunikasi tersebut mungkin saja tetap ada dalam komputer-komputer yang berbeda yang tersambung dalam sebuah jaringan. IPC adalah penyedia layanan terbaik dengan menggnakan sebuah sistem penyampaian pesan, dan sistem- sistem pesan dapat diberikan dalam banyak cara.

 

  • Sistem Penyampaian Pesan

Fungsi dari sebuah sistem pesan adalah untuk memperbolehkan komunikasi satu dengan yang lain

tanpa perlu menggunakan pembagian data. Sebuah fasilitas IPC menyediakan paling sedikit dua operasi yaitu kirim (pesan) dan terima (pesan). Pesan dikirim dengan sebuah proses yang dapat dilakukan pada ukuran pasti atau variabel. Jika hanya pesan dengan ukuran pasti dapat dikirimkan, level sistem implementasi adalah sistem yang sederhana. Pesan berukuran variabel menyediakan sistem implementasi level yang lebih kompleks.

Berikut ini ada beberapa metode untuk mengimplementasikan sebuah jaringan dan operasi

pengiriman/penerimaan secara logika:

  1. Komunikasi langsung atau tidak langsung.
  2. Komunikasi secara simetris/ asimetris.
  3. Buffer otomatis atau eksplisit.
  4. Pengiriman berdasarkan salinan atau referensi.
  5. Pesan berukuran pasti dan variabel.

 

THREAD

Model proses yang didiskusikan sejauh ini telah menunjukkan bahwa suatu proses adalah sebuah

program yang menjalankan eksekusi thread tunggal. Sebagai contoh, jika sebuah proses menjalankan sebuah program Word Processor, ada sebuah thread tunggal dari instruksi-instruksi yang sedang dilaksanakan.

Konsep Dasar

Secara informal, proses adalah program yang sedang dieksekusi. Ada dua jenis proses, proses berat

(heavyweight) atau biasa dikenal dengan proses tradisional, dan proses ringan atau kadang disebut thread.

Thread saling berbagi bagian program, bagian data dan sumber daya sistem operasi dengan thread

lain yang mengacu pada proses yang sama. Thread terdiri atas ID thread, program counter, himpunan register, dan stack. Dengan banyak kontrol thread proses dapat melakukan lebih dari satu pekerjaan pada waktu yang sama.

User Threads

User thread didukung oleh kernel dan diimplementasikan oleh thread library ditingkat pengguna.

Library mendukung untuk pembentukan thread, penjadualan, dan managemen yang tidak didukung oleh

kernel.

Kernel Threads

Kernel thread didukung secara langsung oleh sistem operasi: pembentukan thread, penjadualan, dan managemen dilakukan oleh kernel dalam ruang kernel. Karena managemen thread telah dilakukan oleh sistem operasi, kernel thread biasanya lebih lambat untuk membuat dan mengelola daripada pengguna thread.

Model Multithreading

Dalam sub bab sebelumnya telah dibahas pengertian dari thread, keuntungannya, tingkatan atau

levelnya seperti pengguna dan kernel. Sistem-sistem yang ada sekarang sudah banyak yang bisa mendukung untuk kedua pengguna dan kernel thread, sehingga model-model multithreading-nya pun menjadi beragam. Implementasi multithreading yang umum akan kita bahas ada tiga, yaitu model many-to-one, one-to-one, dan many-to-many.

Model Many to One

Model many-to-one ini memetakan beberapa tingkatan pengguna thread hanya ke satu buah kernel

thread. Managemen proses thread dilakukan oleh (di ruang) pengguna, sehingga menjadi efisien, tetapi apabila sebuah thread melakukan sebuah pemblokingan terhadap sistem pemanggilan, maka seluruh proses akan berhenti (blocked). Kelemahan dari model ini adalah multihreads tidak dapat berjalan atau bekerja secara paralel di dalam multiprosesor dikarenakan hanya satu thread saja yang bisa mengakses kernel dalam suatu waktu.

Model One to One

Model one-to-one memetakan setiap thread pengguna ke dalam satu kernel thread. Hal ini membuat model one-to-one lebih sinkron daripada model many-to-one dengan mengizinkan thread lain untuk berjalan ketika suatu thread membuat pemblokingan terhadap sistem pemanggilan; hal ini juga mengizinkan multiple thread untuk berjalan secara parallel dalam multiprosesor. Kelemahan model ini adalah dalam pembuatan thread pengguna dibutuhkan pembuatan korespondensi thread pengguna. Karena dalam proses pembuatan kernel thread dapat mempengaruhi kinerja dari aplikasi maka kebanyakan dari implementasi model ini membatasi jumlah thread yang didukung oleh sistem. Model one-to-one diimplementasikan oleh Windows NT dan OS/2.

Model Many to Many

Beberapa tingkatan thread pengguna dapat menggunakan jumlah kernel thread yang lebih kecil atau sama dengan jumlah thread pengguna. Jumlah dari kernel thread dapat dispesifikasikan untuk beberapa aplikasi dan beberapa mesin (suatu aplikasi dapat dialokasikan lebih dari beberapakernel thread dalam multiprosesor daripada dalam uniprosesor) dimana model many-to-one mengizinkan pengembang untuk membuat thread pengguna sebanyak mungkin, konkurensi tidak dapat tercapai karena hanya satu thread yang dapat dijadualkan oleh kernel dalam satu waktu. Model one-to-one mempunyai konkurensi yang lebih tinggi, tetapi pengembang harus hati-hati untuk tidak membuat terlalu banyak thread tanpa aplikasi dan dalam kasus tertentu mungkin jumlah thread yang dapat dibuat dibatasi.

8.

Status Proses Sistem Operasi

Proses adalah keadaan ketika sebuah program sedang di eksekusi. Saat komputer berjalan, terdapat banyak proses yang berjalan secara bersamaan. Sebuah proses dibuat melalui system call create-process yang membentuk proses turunan ( child process) yang dilakukan oleh proses induk ( parent process). Proses turunan tersebut juga mampu membuat proses baru sehingga semua proses ini pada akhirnya membentuk pohon proses.
Pada saat proses dieksekusi, akan terjadi perubahan status. Status proses didefinisikan sebagai bagian dari aktivitas proses yang sedang berlangsung saat itu. Tipa-tiap proses dapat memiliki salah satu status di bawah ini:
– New, yaitu status yang dimiliki pada saat proses baru saja dibuat oleh penjadwalan tingkat tinggi, tetapi belum siap melakukan eksekusi
– Running, yaitu status yang dimiliki pada saat proses bisa dieksekusi, karena CPU tidak sedang mengerjakan tugas yang lain
– Waiting, yaitu status yang dimiliki pada saat proses sedang menunggu beberapa event yang akan terjadi (seperti menunggu untuk menyelesaikan I/O atau menerima sinyal)
– Ready, yaitu status yang dimiliki pada saat proses menunggu jatah waktu dari prosesor
– Terminated, yaitu status yang dimiliki pada saat proses telah selesai dieksekusi
Saat komputer berjalan, terdapat banyak proses yang berjalan secara bersamaan. Sebuah proses dibuat melalui system call create-process membentuk proses turunan (child process) yang dilakukan oleh proses induk parent process. Proses turunan tersebut juga mampu membuat proses baru sehingga kesemua proses-proses ini pada akhirnya membentuk pohon proses.
Ketika sebuah proses dibuat maka proses tersebut dapat memperoleh sumber-daya seperti ”waktu CPU”, ”memori”, ”berkas” atau perangkat ”M/K”. Sumber daya ini dapat diperoleh langsung dari Sistem Operasi, dari Proses Induk yang membagi-bagikan sumber daya kepada setiap proses turunannnya, atau proses turunan dan proses induk berbagi sumber-daya yang diberikan Sistem Operasi.
Ada dua kemungkinan bagaimana jalannya (running) proses induk dan turunan berjalan (running). Proses-proses tersebut berjalan secara konkuren atau proses induk menunggu sampai beberapa/seluruh proses turunannya selesai berjalan
Proses Control Block adalah bentuk informasi-informasi lain yang diperlukan sistem operasi untuk mengendalikan dan mengoordinasikan beragam proses aktif dalam suatu proses. Dalam kenyataannya, proses banyak mengalami gangguan dalam menjalankan tugasnya oleh karena itu ada PCB (Proses Control Block) untuk membantu dan memberikan dukungan kepada proses itu.
Setiap proses digambarkan dalam sistem operasi oleh sebuah process control block(PCB), juga disebut sebuah control block. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, seperti status proses, program counter, CPU register, Informasi manajemen memori, informasi pencatatan, informasi status I/O. Berikut adalah gambar diagram PCB.

9. Mesin Virtual

 rang ini, mesin-mesin virtual dapat mensimulasikan perangkat keras walaupun tidak ada perangkat keras aslinya sama sekali.[1]

Contohnya adalah program yang ditulis dalam bahasa Java akan dilayani oleh Java Virtual Machine (JVM) dengan cara memberikan perintah-perintah yang dimengerti JVM yang selanjutnya akan memberikan hasil yang diharapkan. Dengan memberikan layanan seperti ini kepada program tersebut, perangkat lunak JVM ini berlaku sebagai sebuah “mesin virtual”, sehingga program tidak lagi perlu untuk mengakses langsung melalui sistem operasi ataupun perangkat keras yang sangat bervariasi dan memerlukan pemrograman masing-masing secara spesifik.

Mesin virtual terdiri dari dua kategori besar, dipisahkan menurut cara penggunaan dan tingkat keterhubungannya dengan mesin-mesin aslinya. Sebuah mesin virtual sistemadalah perangkat yang berupa platform sistem yang lengkap dan dapat menjalankan sebuah sistem operasi yang lengkap. Sebaliknya, mesin virtual proses didesain untuk menjalankan sebuah program komputer tertentu (tunggal), yang berarti mesin virtual ini mendukung proses tertentu juga. Karakteristik mendasar dari sebuah mesin virtual adalah batasan-batasan bagi perangkat lunak yang berjalan di dalam mesin tersebut, sumber daya yang dibatasi, dan tidak dapat mengakses ke luar tembok batasan dunia maya itu

Keuntungan

  • Meningkatkan pemanfaatan hardware mesin Anda
  • Menurunkan biaya modal dan operasional
  • Ketersediaan tinggi
  • Anda dapat menjalankan program lain di VM yang belum tentu di OS yang sama dengan mesin host (misalnya menjalankan Windows atau Mac OS X VM pada mesin host Linux, dan sebaliknya)
  • Beberapa solusi VM memungkinkan Anda untuk menyimpan negara mesin yang akan memungkinkan Anda untuk kembali ke keadaan sebelumnya harus kesalahan terjadi
  • Umumnya VMS agak terisolasi dari mesin host dalam kasus infeksi oleh malware, tuan rumah tidak akan terpengaruh

Kekurangan

  • Jika tuan rumah sedang down, VM tidak bisa diakses
  • Peningkatan memori dan penggunaan prosesor sebagai bagian dari biaya overhead diperkenalkan oleh VM
  • Dengan pernyataan dari VM yang “terisolasi”, hal ini juga tergantung pada bagaimana Anda mengkonfigurasi mesin Anda. Jika Anda memiliki VM hal-hal seperti shared folder clipboard / file atau jika ada fitur yang memungkinkan passthrough hardware (tersedia untuk sejumlah pilih perangkat keras) mungkin masih mengekspos mesin host Anda untuk ancaman yang sama seperti jika Anda akan dengan VM. 
10. Saya telah memahami cara kerja sistem operasi dan bagaimana cara sistem operasi di instal kembali

Tidak ada komentar:

Posting Komentar

UAS SISTEM OPERASI II

1.)EasyBCD adalah sebuah software alat bantu gratis, dari "neosmart technology" yang memiliki fungsi untuk mengatur bo...