Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Proses Secara informaladalah program proses dalam eksekusi prosesadalah lebih dari kode program, yang kadang-kadang dikenal sebagai bagian teks. proses.

Presentasi serupa


Presentasi berjudul: "Proses Secara informaladalah program proses dalam eksekusi prosesadalah lebih dari kode program, yang kadang-kadang dikenal sebagai bagian teks. proses."— Transcript presentasi:

1 proses Secara informaladalah program proses dalam eksekusi prosesadalah lebih dari kode program, yang kadang-kadang dikenal sebagai bagian teks. proses

2 Adapun proses itu terdiri atas beberapa bagian
proses negara Proses Control Block proses penjadwalan Proses pencipta . Proses penghentian

3 Proses negara Sebagai sebuah proses mengeksekusi, perubahan keadaan. Negara proses didefinisikan dalam bagian oleh arus kegiatan dari proses itu. Masing-masing proses dapat berada di salah satu negara-negara berikut: • Baru. Proses sedang dibuat. • Berjalan. Instruksi yang sedang dieksekusi. • Menunggu. Proses menunggu kejadian untuk terjadi (seperti sebuah I/O penyelesaian atau penerimaan sinyal). • Siap. Proses yang menunggu untuk ditugaskan ke prosesor. • Dihentikan. Proses telah selesai dieksekusi.

4 Proses Control Block Setiap proses digambarkan dalam sistem operasi oleh sebuah process control block (PCB)—juga disebut sebuah tugas blok kontrol. Sebuah PCB ditunjukkan dalam Gambar 3.3. Ini berisi banyak potongan-potongan informasi yang terkait dengan proses yang spesifik, termasuk ini:

5 berbeda dari proses ke proses.
gambar Secara singkat, PCB hanya berfungsi sebagai gudang untuk informasi apa pun yang mungkin berbeda dari proses ke proses.

6 proses penjadwalan Tujuan dari multiprogramming adalah untuk memiliki beberapa proses yang berjalan pada semua 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

7 penjadwalan antrian Terdiri dari semua proses dalam sistem. Proses yang berada di memori utama dan siap dan menunggu untuk mengeksekusi disimpan pada daftar yang disebut siap antrian.

8 Operasi pada proses Proses dalam sebagian besar sistem dapat mengeksekusi secara bersamaan, dan mereka mungkin dapat dibuat dan dihapus secara dinamis Dengan demikian, sistem ini harus memberikan mekanisme untuk pembuatan proses dan terminasi. Di bagian ini, kita akan menjelajahi mekanisme yang terlibat dalam menciptakan proses dan menggambarkan proses penciptaan pada UNIX dan sistem Jendela.

9 Proses pencipta Suatu proses dapat membuat beberapa proses baru, melalui membuat-proses sistem panggilan, selama eksekusi Sebagian besar sistem operasi (termasuk UNIX dan Windows keluarga sistem operasi) mengidentifikasi proses-proses sesuai dengan proses yang unik identifier inetd adalah yang bertanggung jawab untuk jaringan layanan seperti telnet dan ftp; dtlogin adalah proses yang mewakili pengguna layar login.

10 nama file img.jpg, dan akan menggunakan nama file, membuka file, dan
menulis isi. Hal ini juga dapat mendapatkan nama perangkat output. Beberapa sistem operasi melewati sumber-sumber ke anak proses. Pada sistem tersebut, proses baru bisa mendapat dua berkas terbuka, img.jpg dan perangkat terminal, dan dapat cukup transfer datum antara keduanya.

11 penghentian Proses Terminasi dapat terjadi pada keadaan yang lain juga. Sebuah proses dapat menyebabkan penghentian proses lain melalui sistem yang tepat (misalnya, TerminateProcess() di Win32). Biasanya, sistem seperti itu dapat dipanggil hanya oleh induk proses tersebut yang akan diterminasi. Jika tidak, pengguna bisa sewenang-wenang membunuh masing-masing pekerjaanUntuk menggambarkan proses pelaksanaan dan pengakhiran, mempertimbangkan bahwa, UNIX, kita dapat menghentikan proses dengan menggunakan exit() system call; proses induk mungkin menunggu untuk penghentian proses child dengan menggunakan menunggu() sistem call. Menunggu() system call kembali identifier proses yang dihentikan anak sehingga orangtua bisa memberitahu anak-anak yang telah dihentikan. Jika orang tua berakhir, namun, semua anak-anak telah ditetapkan sebagai orangtua baru yang init proses. Dengan demikian, anak-anak masih punya sebuah induk untuk mengumpulkan status mereka dan eksekusi statistik.

12 Interprocess communication
Proses mengeksekusi secara bersamaan dalam sistem operasi dapat berupa independen proses atau bekerja sama proses. Proses independen jika hal ini tidak mempengaruhi atau dipengaruhi oleh proses-proses lain yang berjalan dalam sistem. Setiap proses yang tidak berbagi data dengan proses lain adalah independent. A proses ini bekerja sama jika hal itu dapat mempengaruhi atau dipengaruhi oleh proses-proses lain pelaksana dalam sistem. Jelas, setiap proses yang berbagi data dengan yang lain proses adalah bekerjasama proses. Ada beberapa alasan untuk penyediaan sebuah lingkungan yang memungkinkan proses kerjasama: • Berbagi informasi. Sejak beberapa pengguna dapat tertarik pada hal yang sama sepotong informasi (sebagai contoh, sebuah berkas bersama), kita harus menyediakan sebuah lingkungan untuk memungkinkan akses bersamaan ke informasi tersebut. • Perhitungan speedup. Jika kita menginginkan sebuah tugas khusus untuk menjalankan lebih cepat, kita harus memecahnya menjadi sub-tugas, masing-masing yang akan mengeksekusi secara paralel dengan lain-lain. Perhatikan bahwa seperti speedup dapat dicapai hanya jika komputer memiliki beberapa proses pengolahan unsur-unsur (seperti Cpu atau I/O channel). • Modularitas. Kita mungkin ingin untuk membangun sistem modular, membagi fungsi sistem menjadi beberapa proses atau threads, seperti yang kita yang dibahas dalam Bab 2. • Kenyamanan. Bahkan seorang pengguna individu mungkin bekerja pada tugas-tugas di waktu yang sama. Sebagai contoh, seorang pengguna dapat mengedit, mencetak, dan menyusun dalam paralel

13 Bersama-memori sistem
Interprocess komunikasi yang menggunakan memori bersama membutuhkan berkomunikasi proses untuk membangun sebuah daerah memori bersama. Biasanya, bersama-memori wilayah yang berada dalam ruang alamat dari proses yang menciptakan ruang-memori segmen ini. Proses lainnya thatwish untuk berkomunikasi menggunakan ini bersama-memori segmen harus melampirkan ke ruang alamat mereka. Ingat bahwa, biasanya, sistem operasi yang mencoba untuk mencegah satu proses fromaccessing lain proses ini memori. Memori bersama yang membutuhkan dua atau lebih proses setuju untuk menghapus pembatasan ini. Mereka kemudian dapat bertukar informasi dengan membaca dan menulis data di tempat. Berupa data-data dan lokasi yang ditentukan oleh proses-proses dan tidak berada di bawah sistem operasi kontrol. Proses juga bertanggung jawab untuk memastikan bahwa mereka tidak menulis ke lokasi yang sama secara bersamaan. Untuk mengilustrasikan konsep bekerja sama proses, mari kita pertimbangkan masalah produsen–konsumen, yang merupakan paradigma umum untuk bekerja sama proses. Produser proses menghasilkan informasi yang dikonsumsi oleh konsumen proses. Sebagai contoh, sebuah kompiler dapat menghasilkan kode assembly, yang dikonsumsi oleh assembler. Assembler, pada gilirannya, dapat menghasilkan objek modul, yang dikonsumsi oleh loader.

14 Pesan lewat sistem Pesan lewat menyediakan mekanisme untuk memungkinkan proses berkomunikasi dan untuk menyinkronkan aksi mereka tanpa berbagi ruang alamat yang sama dan ini sangat berguna dalam lingkungan yang terdistribusi, dimana berkomunikasiproses dapat berada pada komputer yang berbeda yang terhubung oleh jaringan. Untukcontoh, sebuah program chatting yang digunakan pada World Wide Web dapat dirancang sehingga yang chat peserta berkomunikasi dengan satu sama lain dengan bertukar pesan Amessage-lewat fasilitas ini menyediakan setidaknya dua operasi: kirim(pesan) dan terima(pesan). Pesan dikirim dengan sebuah proses yang dapat baik tetap atau variabel size. Jika hanya tetap berukuran pesan dapat dikirim, sistem-tingkat pelaksanaan lebih mudah. Pembatasan ini, namun, membuat tugas pemrograman lebih sulit. Sebaliknya, variabel ukuran pesan yang memerlukan sistem yang lebih kompleks tingkat implementasi, tapi tugas pemrograman item nextConsumed; while (true) { while (in == out) ; // do nothing nextConsumed = buffer[out]; out = (out + 1) % BUFFER SIZE; /* consume the item in nextConsumed */ }

15 Penamaan Proses yang ingin berkomunikasi harus memiliki cara untuk merujuk kepada satu sama lain. Mereka dapat digunakan baik secara langsung atau tidak langsung komunikasi. Dalam komunikasi langsung, setiap proses yang ingin berkomunikasi harus secara eksplisit nama penerima atau pengirim dari komunikasi tersebut

16 Sinkronisasi Komunikasi antara proses membutuhkan place melalui panggilan untuk mengirim() dan menerima() primitif. Ada berbagai pilihan desain untuk menerapkan masing-masing primitif. Pesan lewat dapat berupa pemblokiran atau nonblocking—juga dikenal sebagai synchronous dan asynchronous. • Memblokir kirim. Dalam proses pengiriman diblokir sampai pesan yang diterima oleh penerima proses atau oleh mailbox. • Nonblocking kirim. Pengiriman proses mengirimkan pesan dan resume operasi. • Memblokir menerima. Penerima blok sampai pesan yang tersedia. • Nonblocking menerima. Penerima mengambil salah satu pesan yang valid atau null.

17 Buffering

18 Komunikasi Client–Server Siste
proses-proses dapat berkomunikasi menggunakan shared memori dan message passing. Teknik ini dapat digunakan untuk komunikasi dalam client–server sistem (Bagian ). Di bagian ini, kita akan menjelajahi dua strategi lain untuk komunikasi client–server sistem: soket dan remote procedure calls.

19 Soket Soket didefinisikan sebagai sebuah endpoint untuk komunikasi. Sepasang proses berkomunikasi melalui jaringan menggunakan sepasang soket—satu untuk masing-masing proses. Soket adalah diidentifikasi oleh alamat IP yang disambung dengan nomor port. Di umum, soket menggunakan arsitektur client–server. Yang serverwaits untuk masuk permintaan klien dengan mendengarkan port tertentu. Setelah permintaan diterima, server menerima koneksi dari client socket untuk menyelesaikan koneksi.


Download ppt "Proses Secara informaladalah program proses dalam eksekusi prosesadalah lebih dari kode program, yang kadang-kadang dikenal sebagai bagian teks. proses."

Presentasi serupa


Iklan oleh Google