Kamis, 07 Mei 2015

Process Description and Control

 3.1 WHAT IS A PROCESS

Kita juga bisa memikirkan proses sebagai entitas yang terdiri dari sejumlah elemen. Dua elemen penting dari sebuah proses adalah program code (yang dapat dibagi dengan proses lainnya yang melaksanakan program yang sama) dan satu set data yang terkait dengan kode itu. Pada setiap titik waktu tertentu, sementara program mengeksekusi, proses ini dapat secara unik ditandai dengan sejumlah elemen, termasuk yang berikut ini :
  • Identifier: Sebuah identifier unik yang terkait dengan proses ini, untuk membedakannya dari semua proses lainnya.
  • State: Jika proses ini sedang dijalankan, itu adalah dalam running state.
  • Priority: Tingkat prioritas relatif terhadap proses lainnya.
  • Program counter: Alamat dari instruksi berikutnya dalam program yang akan dijalankan.
  • Memory pointers: Termasuk pointer ke kode program dan data yang terkait dengan proses ini, ditambah blok memori setiap bersama dengan proses lainnya.
  • Context data: Ada data yang hadir dalam register di prosesor saat proses mengeksekusi.
  • I/O status information: Termasuk luar biasa permintaan I / O, I / O perangkat ditugaskan untuk proses ini, daftar file yang digunakan oleh proses, dan sebagainya.
  • Accounting information: Mungkin termasuk jumlah waktu prosesor dan waktu jam yang digunakan, batas waktu, nomor rekening, dan sebagainya.
Informasi yang ada dalam daftar sebelumnya disimpan ke dalam struktur data, biasanya disebut Process Control Block (Figure3.1).
Figure 3.1 Simplified Process Control Black
3.2 PROCESS STATES

A Two-State Process Model
Figure 3.2 Two-State Process Model

Dapat dilihat di Figure 3.2, terdapat 2 proses model. Yang (a) merupakan State Transition Diagram, pada model ini, proses bisa saja dalam satu dari 2 states: Running atau Not Running. Yang (b) merupakan Queuing Diagram. Queue dapat terdiri dari linked list dari blok data, dimana setiap blok merupakan satu proses.
Process Creation

Ketika sebuah proses baru yang akan ditambahkan ke mereka yang saat ini sedang dikelola, OS membangun struktur data yang digunakan untuk mengelola proses dan mengalokasikan ruang alamat di memori utama untuk proses.
Berikut Merupakan 4 peristiwa umum atau alasan mengarah pada penciptaan proses :
Table 3.1 Reasons for Process Creation

Ketika OS menciptakan proses atas permintaan eksplisit proses lain, tindakan ini disebut sebagai Process Spawning.

Process Termination
Table 3.2 Reasons for Process Termination

Tabel 3.2 merangkum alasan khas untuk process termination. Selain itu, sejumlah kondisi kesalahan dan kesalahan dapat menyebabkan penghentian proses. Dan akhirnya, dalam beberapa sistem operasi, proses dapa saja dihentikan oleh proses yang menciptakannya atau ketika proses induk itu sendiri diakhiri.

A Five State Model

five states dalam diagram model adalah sebagai berikut:
  • Running: Proses yang sedang dijalankan.
  • Ready: Sebuah proses yang siap untuk mengeksekusi ketika diberi kesempatan.
  • Block/Waiting: Sebuah proses yang tidak dapat mengeksekusi sampai beberapa peristiwa terjadi, seperti penyelesaian I / O operasi.
  • New: Sebuah proses yang baru saja dibuat namun belum mengakui ke kolam proses eksekusi oleh OS.
  • Exit: Sebuah proses yang telah dibebaskan dari kolam proses eksekusi oleh OS, baik karena dihentikan atau dibatalkan karena untuk beberapa alasan.

Figure 3.3 Five-State Process Model

Figure 3.6 menunjukkan jenis peristiwa yang menyebabkan setiap transisi state untuk proses; transisi yang mungkin adalah sebagai berikut:
  • Null -> New: Proses yang baru dibuat untuk mengeksekusi sebuah program.
  • New -> Ready: OS akan bergerak proses dari New state ke Ready state ketika siap untuk mengambil proses tambahan.
  • Ready -> Running: Ketika saatnya untuk memilih proses untuk menjalankan, OS memilih salah satu proses dalam Ready state.
  • Running -> Exit: Proses yang sedang berjalan dihentikan oleh OS jika proses menunjukkan bahwa mereka telah menyelesaikan atau jika dibatalkan.
  • Running -> Ready: Ketika proses yang berjalan melebihi waktu yang diizinkan untuk menginterupsi eksekusi merupakan alasan yang paling sering mengapa transisi ini terjadi.
  • Running -> Blocked: Sebuah proses diletakkan di Blocked state jika permintaan sesuatu yang harus menunggu.
  • Blocked -> Ready: Sebuah proses di Blocked state dipindahkan ke Ready state ketika acara yang telah menunggu terjadi.
  • Ready -> Exit: Untuk kejelasan, transisi ini tidak ditampilkan pada state diagram.
  • Blocked -> Exit:  Komentar di bawah item sebelumnya berlaku.
3.3 PROCESS CONTROL

Modes of Execution

Table 3.3 Typical Functions of an Operating System Kernel

3.4 EXECUTION OF THE OPERATING SYSTEM

Nonprocess Kernel

Figure 3.4 Relationship between Operating System and User Processes

Pada Figure 3.4(a), kebanyakan OS yang lama digunakan untuk mengeksekusi kernel dari OS keluar dari process apapun.
Pada Figure 3.4(b), OS menjadi kumpulan panggilan user untuk menjalan kan fungsi - fungsi yang ada dan mengeksekusi di dalam proses milik user.
Pada Figure 3.4(c), OS diimplementasikan sebagai kumpulan dari proses sistem.

Execution within User Processes

Sebuah alternatif yang umum dengan sistem operasi pada komputer yang lebih kecil untuk menjalankan hampir semua perangkat lunak OS dalam konteks proses pengguna.
Figure 3.5 menunjukkan struktur gambar proses khas untuk strategi ini.

Figure 3.5 Process Image: Operating System Executes within User Space


Tidak ada komentar:

Posting Komentar