Anda di halaman 1dari 49

Reynaldi Rahmadhan

539
Biarkan dua proses konkuren P1 dan berbagi P1
membaca dan menulis akses ke daerah data yang R di
memori utama. Hal ini umumnya diperlukan untuk
mencegah satu proses dari menulis ke R sedangkan
proses lainnya adalah membaca dari itu. Ini, kecuali
tindakan pencegahan yang tepat diambil, p2 dapat
memodifikasi beberapa variabel X dari R segera setelah
P; telah membaca nilai lama. sehingga pengolahan
selanjutnya P1 keputusan didasarkan pada nilai yang
tidak benar masalah x.this diselesaikan dengan
menegakkan aturan-aturan tertentu untuk saling
pengecualian, sehingga, dalam contoh ini, p1 memiliki
eksklusif akses ke R selama dibutuhkan, tanpa
gangguan dari proses lainnya. Sumber daya bersama
seperti R yang memerlukan saling pengecualian yang
disebut kritis.
Sebuah solusi perangkat lunak dasar untuk
masalah
saling
pengecualian,
adalah
untuk
mengasosiasikan kontrol variabel s disebut bendera
dengan setiap sumber daya R kritis, yang menunjukkan
ketika sumber daya yang digunakan. (dengan
pembatasan tambahan tertentu dibahas kemudian, s
disebut semaphore.) Sebelum attemptitng untuk
mengambil kendali dari R,
proses P pertama berbunyi bendera s nya. Jika s = I
(sibuk), menunjukkan bahwa beberapa proses sudah
menggunakan R, P tidak mencoba untuk menggunakan
R Jika, di sisi lain, p menemukan bahwa s adalah 0,
menunjukkan bahwa R tidak digunakan, segera
menetapkan kepada saya (sibuk), dan kemudian mulai
menggunakan R. ketika selesai dengan R, proses p
ulang s untuk 0 sehingga proses lain dapat

Reynaldi Rahmadhan

menggunakan R. Untuk jenis mekanisme kontrol untuk


bekerja, adalah penting bahwa saling pengecualian
diberlakukan untuk mengakses semaphore itu sendiri
selama pelaksanaan operasi uji-dan-set (lihat prob.
6.28).
Beberapa prosesor memberikan instruksi tes-danset untuk menerapkan bendera
(semaphore) kontrol di kernel dari suatu sistem operasi.
Untuk menjamin saling pengecualian, instruksi ini
dirancang untuk menjadi terpisahkan dalam arti bahwa
semua langkah siklus instruksi yang harus diselesaikan
tanpa interfercace oleh lainnya petunjuk. Sebagai
contoh, 8089 iop (Contoh 6.6 di Sec. 6.2.3) memiliki
instruksi seperti disebut TSL (istirahat dan mengatur
sementara terkunci). Dalam berikut 8089 assemblykode bahasa:
TSL S. I. WAIT
R: ... ...
.........; END R
MOV S.0
TSL menyebabkan variabel flag s untuk dibaca dari
memori utama dan dibandingkan dengan 0. Jika S: 0,
TSL menulis yang ditentukan saya nilai dalam S, dan
kontrol program ini ditransfer ke rutinitas R, yang
menggunakan sumber daya yang dilindungi oleh s. Jika
TSL menemukan bahwa s = 0, maka transfer kontrol ke
alamat cabang WAIT. Untuk memastikan saling
pengecualian, TSL mengaktifkan sinyal output khusus
yang disebut Lock pada 8089 keping. Sinyal ini
dimaksudkan untuk mendorong garis kunci bus dengan
nama yang sama pada Multibus yang atau bus sistem

Reynaldi Rahmadhan

serupa yang memori menyimpan S terpasang; lihat


Gambar. 6.21. Mengaktifkan Lock mencegah setiap
instruksi lain dari menggunakan bus sementara
TSL siklus instruksi sedang dieksekusi; akibatnya, TSL
telah yang dibutuhkan akses eksklusif ke s. Instruksi
langkah terakhir dalam di atas 8.089 alat kode s - 0
untuk me-reset bendera. Tersebut di atas R rutin adalah
contoh dari kritis
bagian dari program assembly-bahasa yang dilindungi
oleh bendera S. Jika Pernyataan TSL awal diganti
dengan

540
TUNGGU: TSL S, I, TUNGGU (6.6)
maka operasi uji-dan-set dieksekusi berulang-ulang
sampai S menjadi tersedia; pada dasarnya, proses
meminta R menunggu sampai perubahan S dari sibuk
untuk tidak sibuk.
Sederhana kontrol bendera merchanism dibahas di
atas memiliki beberapa deficiencies.It menggunakan
"sibuk"
dari
menunggu
di
mana
prosesor
menghabiskan banyak waktu hanya menguji bendera S.
Selain itu, proses P tertentu tidak dapat menemukan S
= 0 dan gain kontrol R karena persaingan dari proses
lainnya. Inimasalah ditangani oleh variabel kontrol
sumber daya khusus yang disebut semaphore, konsep
karena ro Edsger Dijkstra [15]. Sebuah semaphore S
adalah integerserving nonnegatif sebagai bendera
control untuk R. sumber daya ini memiliki dua prosedur
terpisahkan WAIT (S) dan SIGNAL (S) yang dapat
didefinisikan sebagai berikut, di mana P adalah proses
memanggil WAIT atau SIGNAL:

Reynaldi Rahmadhan

Tunggu (S): jika S> 0 maka S - s - I


lain menangguhkan P dan tempat dalam antrian Q
untuk R;
SIGNAL (S): jika Q tidak kosong maka pengiriman satu
proses dari Q
Lain S - S + l;
Sebuah
semaphore
S
dapat
digunakan
encapsulating kode R untuk sumber daya
sehingga:

oleh
kritis

WAIT (s)
R
SIGNAL (s)
dan menginisialisasi S untuk l. Pertama meminta akses
keuntungan proses untuk R dan menetapkan S ke 0.
proses selanjutnya berusaha untuk masuk R yang antri.
Oleh karena itu hanya satu Proses dapat di kawasan R
penting
memastikan
bahwa
mutual
exclusion
diawetkan.
Dengan menginisialisasi s untuk nilai yang lebih besar
k> l, jumlah proses dalam kritiswilayah dapat dibatasi
untuk k. Meskipun (6,5) dan (6,9) adalah superficiallv
serupa, penggunaan dari semaphore menghindari sibuk
menunggu, dan antrian oleh WAIT dan melepas
oleh SIGNAL permintaan untuk R memastikan Thar
semua proses yang meminta akhirnya mendapatkan
menggunakan R dalam beberapa urutan, misalnya,
FIFO, ditentukan oleh disiplin antrian untuk diblokir
proses.

Reynaldi Rahmadhan

Struktur Program (6,5) dan (6,9) merupakan solusi


yang cukup tingkat rendah untuk masalah mutual
exclusion. Mereka mungkin sulit untuk digunakan
dalam desain proses konkuren yang kompleks di mana
construcs pemrograman tingkat tinggi lebih disukai.
Salah satu cara untuk memperkenalkan kontrol
konkurensi ke dalam bahasa tingkat tinggi juga
disarankan oleh Dijkstra adalah untuk merangkum
semua prosedur dan data yang diperlukan untuk
memproses sumber daya R penting dalam struktur
program a.special M (R) disebut Monitor, yang hanya
dapat diakses oleh SM satu proses pada suatu waktu.
Oleh karena itu akses ke monitor tunduk mutual
exclusion, yang dapat diimplementasikan oleh compiler
menghubungkan tes-dan-set bendera dengan kode
obyek monitor. Sumber daya R hanya dapat diperoleh
atau dilepaskan oleh prosedur yang terkandung dalam
melaksanakan BAPAK). Jika R digunakan, proses
memanggil beberapa monitor yang prosedur PROC
yang menggunakan R dibuat untuk menunggu sampai
R menjadi tersedia. Hal ini dapat dicapai dengan
membuat

541
PROC memanggil prosedur WAIT seperti (6,7) sehingga
menunggu yang dilakukan di luar M (R), sehingga
mencegah proses menelepon dari mengikat monitor
dengan terbatas Tunggu. Proses menggunakan R rilis
itu dengan menjalankan prosedur SIGNAL seperti (6.8)
melalui monitor.

Reynaldi Rahmadhan

Contoh 5.7 pembaca dan penulis masalah. Situasi


umum yang dihadapi dalam sebuah sistem operasi
adalah di mana beberapa proccsses bersamaan perlu
membaca dari atau menulis ke file umum. Untuk
cxample, di jaringan komputer berbasis terminal seperti
sebagai sistem penerbangan reservarion, banyak
terminal perlu membaca database penerbangan
Informasi bersamaan, sementara beberapa perlu
menulis ke dalamnya dari waktu ke waktu untuk
memperbaruinya
misalnya,
untuk
memasukkan
reservasi untuk penerbangan tertentu. Dalam situasi
seperti itu, proses reader diperbolehkan untuk
mengakses file secara bersamaan, tetapi akses
eksklusif rnust diberikan kepada proses penulis.
Gambar 6-58 menunjukkan solusi untuk masalah
'pembaca-dan-penulis' ini dalam bentuk dari monitor
bernama baca-tulis yang ditulis dalam bahasa tingkat
tinggi
Pascal-seperti
[2].
MEMBACA-MENULIS
mendefinisikan satu set empat prosedur untuk
mengendalikan akses ke Database. Untuk membaca
dari database, proses pembaca panggilan prosedur
monitor yang BEGIN-READ; setelah selesai membaca,
itu panggilan AKHIR-BACA. Sebuah proses penulis
mengeksekusi BEGIN-MENULIS dan END-MENULIS
dengan cara yang sama. Selama satu pembaca aktif,
READ-MENULIS memungkinkan sejumlah pembaca
lainnya untuk mengakses
databasc di THC samc TimC. Seorang penulis dapat
acccss itu onty ketika busur iherc Apakah actiw othcr
pengguna, tetapi kemudian diberikan akses eksklusif.
The writing_allowed.provides semaphore
akses eksklusif ini. Variabel reader-count menunjukkan
jumlah pembaca yang sedang aktif. Hanya ketika

Reynaldi Rahmadhan

pembaca-count adalah reset ke nol dengan yang


terakhir dari kelompok bersamaan berbunyi, adalah
tulisan diaktifkan melalui SlGNAL (writing_allowed).
Monitor READ-MENULIS mengutamakan menunggu
(antri) membaca atau menulis permintaan lebih dari
yang baru tiba. Ini mencegah menunggu proccsses dari
yang tanpa batas tertunda aliran proses tiba. Jadi ketika
penulis selesai menulis dan excecuting END-MENULIS,
cek untuk melihat apakah ada pembaca yang
menunggu dalam antrian yang terkait dengan
semaphore kedua membaca-diperbolehkan. Hal ini
ditentukan dalam Fig.6.58 dengan cara (boolean) fungsi
ANTRIAN (S), yang merupakan salah (benar) jika
antrian yang terkait dengan semaphore S adalah
kosong (tidak kosong). Tes Proses penulis ANTRIAN
(reading_allowed) dan memungkinkan setiap pembaca
menunggu dengan excecuting SlGNAL (membacadiperbolehkan) sebelum mengizinkan setiap penulis
tunggu untuk melanjutkan melalui SIGNAL (menulisdiperbolehkan).
Demikian
pula,
BEGIN-BACA
memungkinkan pembaca untuk melanjutkan hanya jika
tidak ada proses penulis aktif atau menunggu.
Jalan buntu. Masalah sinkronisasi lain terkenal di sistem
operasi
kebuntuan, di mana proses menunggu suatu kejadian
seperti rilis beberapa sumber daya bersama bur acara
tersebut tidak pernah terjadi. Misalkan, misalnya, yang
memproses P1 dan P2 keduanya membutuhkan
penggunaan dua sumber R1 dan R2 yang hanya dapat
dikontrol oleh satu proses pada suatu waktu. Biarkan
R1 dialokasikan untuk P1, yang kemudian meminta R2
sementara masih tetap mempertahankan kontrol R1.

Reynaldi Rahmadhan

Pada saat yang sama, biarkan P2 Kendali R2 dan


menjadi meminta kontrol R1. Jika proses tidak dapat
berlanjut sampai itu memperoleh kontrol kedua proses,
maka hasil kebuntuan di mana setiap Proses berakhir
menunggu yang lain untuk melepaskan sumber daya,
sebuah tunggu melingkar Situasi yang merupakan
karakteristik dari kebuntuan. Sebuah proses tunggal
juga bisa menjadi

Reynaldi Rahmadhan

542
GAMBAR 658
Exampe monitor untuk mengontrol akses ke database
menemui jalan buntu menunggu peristiwa eksternal
seperti sinyal pengakuan bahwa gagal untuk muncul
dalam transaksi bus IO. Kondisi deadlock seperti dapat
hasil dari kegagalan hardware serta hardware atau
softwarc desain Erron.
Tiga cara dasar menangani masalah kebuntuan
yang pencegahan, penghindaran, dan kesalahan
rolerance. The approac prevcntion; menghapuskan;
semua kemungkinan dari kebuntuan yang terjadi. lrss
pendekatan yang ketat tidak D6 sepenuhnya
menghilangkan kemungkinan kebuntuan, tetapi upaya
untuk memastikan bahwa semua kebuntuan porcatial
situasi dihindari. Dcadlocks pendekatan thirci allo'ns io
mengambil placc, tapi menyediakan mekanisme untuk
mendeteksi mereka dan rccovcriag dari 6ffects mereka.
Di praktek, semua techniqucs ini digunakan dalam
berbagai bagian-dari operaring khas sistem, dengan
teknik deadiock prevdntion bermain tbe rob besar.

Reynaldi Rahmadhan

543
Untuk kemungkinan kebuntuan ada, sejumlah kondisi
yang harus dipenuhi oleh proses dan sumber daya yang
terlibat:
1. pengecualian Mutual. Setiap proses harus memiliki
akses eksklusif ke sumber daya yang mengontrol.
2. Sumber Daya menunggu. Sebuah proses dapat
memegang sumber daya sudah dialokasikan untuk itu
sambil menunggu akses ke yang lain.
3. nonpreemptive Sebuah proses tidak dapat
mendahului; tidak pernah melepaskan sumber dayanya
sampai telah benar-benar selesai dengan mereka.
4. bundar. Sebuah rantai melingkar proses harus ada;
setiap proses mengontrol sumber daya yang sedang
diminta oleh proses selanjutnya dalam rantai.
Deadlock dapat dicegah dengan merancang bagian
yang relevan dari sistem operasi sehingga satu atau
lebih di atas
kondisi tidak dapat terjadi. Kondisi Saya biasanya tidak
bisa dihilangkan tanpa dapat diterima berbagi sumber
daya membatasi:
Namun, masing-masing kondisi kebuntuan lainnya
dapat diangkat dalam berbagai cara. Misalnya, tidak
ada deadlock dapat terjadi jika proses P diblokir sampai
semua sumber daya yang perlu menjadi tersedia. Ini
circumvents kondisi 2 (sumber daya tunggu), tetapi

Reynaldi Rahmadhan

dapat menyebabkan penggunaan sangat tidak efisien


dari sumber daya yang tersedia. Set parsial sumber
diikat oleh P dapat dibebaskan dengan mengharuskan P
untuk membebaskan mereka dan meminta mereka
nanti bersama dengan sumber informasi lainnya belum
tersedia. Langkah terakhir ini. preempts sumber p, oleh
karena itu menyangkal kondisi 3 (nonpreemption).
Kondisi menghilangkan
2 atau 3 dalam mode ini dapat memiliki konsekuensi
yang tidak diinginkan dari para menyebabkan beberapa
permintaan proses akan diblokir tanpa batas. Kondisi
bundar dapat dihapus dengan menetapkan nomor unik
p (R) untuk setiap sumber daya R, dan menegakkan
aturan bahwa jika P memegang R. hanya dapat
meminta sumber daya tambahan dengan angka lebih
tinggi dari p (R). Ini bekerja dengan baik jika urutan
normal di mana proses meminta sumber daya sangat
cocok dengan urutan di mana mereka diberi nomor; jika
p mungkin perlu untuk memperoleh dan tahan sumber
rendah-nomor
lama
sebelum
benar-benar
menggunakan mereka.
Bahkan jika semua kondisi yang diperlukan untuk
kebuntuan yang hadir, deadlock dapat dihindari dengan
memutuskan apakah dinamis memuaskan permintaan
proses untuk sumber daya dapat menyebabkan
kebuntuan. Jika kebuntuan ditentukan untuk menjadi
tak terelakkan, maka proses tersebut harus jelas tidak
dimulai. Sebuah konservatif strategi inisiasi proses,
yang merupakan dasar dari beberapa algoritma
kebuntuan penghindaran. Apakah untuk memulai suatu
proses hanya jika dapat ditentukan bahwa kebutuhan
sumber daya yang dapat sepenuhnya dipenuhi bahkan
jika semua proses yang sedang aktif menuntut sumber

Reynaldi Rahmadhan

daya maksimum
mereka.
Strategi seperti ini
membutuhkan pengetahuan sebelum proses saat
terburuk kebutuhan sumber daya, pengetahuan yang
tidak selalu tersedia. Di
praktek, teknik heuristik yang tidak sepenuhnya
menghindari kebuntuan sering digunakan, terutama
dalam pars noncritical dari sebuah sistem operasi.
Contohnya adalah kebijakan untuk tidak mengirimkan
suatu proses. misalnya, untuk membuat file baru ketika
availabilty dari sumber daya yang dibutuhkan,
misalnya, jumlah sekunder-memori bebas (file) ruang,
turun di bawah beberapa tingkat eksperimen
ditentukan.

544
Deteksi deadlock. baik untuk menghindari mereka atau
untuk menghilangkan mereka setelah mereka terjadi,
berarti
kemampuan
untuk
memeriksa
kondisi
menunggu sirkular didefinisikan di atas. Untuk
melakukan
hal
ini,
sistem
operasi
harus
mempertahankan daftar semua sumber daya yang
dimiliki oleh setiap proses dan, untuk setiap sumber
daya, nama-nama proses yang sedang menunggu
untuk menggunakannya. Sumber daya ini tugas dan
permintaan dapat direpresentasikan secara grafis
dengan menggunakan grafik alokasi sumber daya,
contoh yang muncul pada Gambar. 6.59. Berikut
lingkaran menunjukkan proses [P1L dan kotak sumber
[R1] menunjukkan. Tepi atau panah diarahkan dari
sumber daya R, untuk memproses p, menyiratkan

Reynaldi Rahmadhan

bahwa R, telah dialokasikan untuk P ,, sementara


panah dari p1 ke R1, berarti
Pi yang meminta Rj. Keberadaan sebuah loop tertutup
di mana semua anak panah pergi ke arah yang sama,
dalam hal ini, P2 - R4. - R5 - r6 - p4 - Rt - p2,
menunjukkan bahwa memenuhi alokasi mengingat
kondisi bundar untuk kebuntuan. Perhatikan bahwa
kondisi mutual exclusion puas dengan persyaratan
bahwa hanya satu
Selengkapnya meninggalkan setiap sumber daya di
THC alokasi sumber daya grafik.
Gambar 6-60 menguraikan proedure TARIF rekursif (P,
R) untuk memeriksa kondisi bundar yang mengarah ke
jalan buntu; berlaku. ia menemukan loop tertutup
dalam grafik alokasi sumber daya. Prosedur ini
dimaksudkan untuk dieksekusi setiap kali proses P
membuat permintaan untuk sumber daya R; itu
melaporkan kebuntuan jika hasil alokasi yang diminta
dalam sebuah loop tertutup. Misalkan prosedur
diterapkan pada sistem Gambar. 6.59 ketika P2
membuat permintaan baru untuk mengendalikan R5.
Asumsikan bahwa proses dan sumber daya di-scan di
urutan menaik numerik ditentukan oleh P dan x
subscript. memasuki TARIF (pr, R5), sumber daya yang
dialokasikan untuk
P2, yaitu {R 1, R2, R3}, yang scannend. Maka proses
menunggu R1, yaitu [p4], diidentifikasi. Sejak p4 tidak
telah R5 dialokasikan untuk itu, TARIF (P4, R5) sekarang
dipanggil. Pada memasuki kembali prosedur TARIF
dengan p = p4 dan R = R5,

Reynaldi Rahmadhan

545
GAMBAR 6.60
Prosedur untuk deteksi kebuntuan
sumber {} R6 dipegang oleh P4 diidentifikasi.
Kemudian menunggu R6 proses {} p5 dianggap. Hal ini
segera menemukan bahwa p5 memegang R5
mengarah pada kesimpulan bahwa kebuntuan ada.

Reynaldi Rahmadhan

Kebuntuan ini sesuai dengan loop p2 - R5 - p5 _ R6 _


p4_
R1 - P2.
Manajemen 633 Sistem
Sumber utama bersama diawasi oleh sebuah sistem
operasi yang ruang memori dan waktu pemrosesan.
Fungsi manajemen memori diperiksa dalam detik.
5.2 Pada bagian ini kita mempertimbangkan bagaimana
sebuah sistem operasi mengelola cpu dan waktu proses
lop. Lingkungan multiprogramming diasumsikan yang
banyak pekerjaan yang tersedia dan masing-masing
bergantian pekerjaan antara pengolahan normal
dengan satu
CPU dan pengolahan Io oleh satu atau lebih IOPS atau
DMA controller. Sebagai contoh, pekerjaan dapat
dilaksanakan oleh cpu sampai instruksi lo ditemui, di
mana titik pekerjaan ditransfer ke TIO; lihat Gambar.
6.56b. Jika komputer menggunakan memori virtual
paged, eksekusi cpu juga dihentikan saat kesalahan
halaman terjadi; lagi operasi Io diperlukan, kali ini
untuk melakukan halaman swap.
Prosesor
penjadwalan.
Suatu
program
dapat
mengakses ke perangkat dan memulai proses IO jika
perangkat tidak sibuk, yaitu, jika tidak sedang
digunakan
oleh
program
lain,
dan
jika
TIO
mengendalikan perangkat dapat memberikan saluran
akses yang diperlukan
antara perangkat Io dan memori utama. Demikian pula,
cpu harus tersedia sebelum program dapat mulai

Reynaldi Rahmadhan

pengolahan cpu. Dengan demikian setiap program di


multiprogramming sebuah
(atau multiprocessing) lingkungan cann dilihat sebagai
salah satu dari empat negara:
Jadi: Terlibat dalam pengolahan CPU
S1: Menunggu pengolahan CPU
S2: Terlibat dalam proses IO
S3: Menunggu pengolahan IO
ketika CPU atau perangkat Io menjadi tersedia,
program tunggu dipilih pada beberapa dasar prioritas
dan ditugaskan untuk sumber daya tersebut.

546

Reynaldi Rahmadhan

Kami sekarang menggambarkan teknik penjadwalan


sederhana yang dirancang untuk memberikan respon
cepat terhadap permintaan untuk pengolahan IO.
Diasumsikan bahwa CPU tunggal dan
satu set perangkat IO {} Di tersedia. Setiap saat setiap
perangkat IO dapat digunakan oleh hanya satu
program. Sebuah batch program m {Q,} yang tersedia
untuk eksekusi. Setiap program Qi ditugaskan prioritas
p (Q) e {p0, p1, p2 - - - |, di mana pi> pj jika i <i.
Setelah mendapatkan akses program untuk CPU, itu
tidak diganti sampai salah satu peristiwa berikut
terjadi.
l. Instruksi IO ditemui oleh CPU.
2. (kedoknya) I0 interupsi diterima oleh CPU- yang
3. CPU berakhir pelaksanaan program saat ini karena
menghadapi instruksi trap atau interupsi.
Gambar 6.6I menunjukkan keadaan transisi mungkin
untuk program dalam sistem ini. CPU dapat melacak
negara dari semua program dengan mempertahankan
empat meja dari jenis yang ditunjukkan pada Gambar.
6.62. Tabel Untuk, T1, T2, dan T3 daftar program di
negara-negara Jadi, S1, s2, dan S3, masing-masing.
Juga tercantum untuk setiap program Qi adalah p nya
prioritas (Q1) (di T1, T2, dan T3 hanya) dan IO
perangkat D (Q1) memerlukan (di T2, dan T3 saja).
Anggaplah, misalnya, bahwa operasi IO melibatkan
Program Q2 berakhir dan l0 interrupt dihasilkan. Dari
T2 pada Gambar. 6.62 kita melihat bahwa ini
membebaskan IO perangkat D1. CPU merespon
interupsi dengan mentransfer kontrol ke sistem operasi,

Reynaldi Rahmadhan

yang kemudian mencari t3 untuk menemukan program


prioritas tertinggi, jika ada, menunggu akses ke D1.
Dalam hal ini kedua Q0 dan Q8 menunggu. Q8 memiliki
prioritas yang lebih tinggi: operasi IO membutuhkan
karena itu dimulai. Masuknya Q8 dihapus dari T3 dan
dimasukkan di T2. Masuknya Q2 dihapus dari T2. Jika
Q2
membutuhkan pengolahan rurther oleh CPU, itu masuk
ke T1. Gambar 6.63 adalah diagram alir yang
menunjukkan operasi rinci skema penjadwalan lurus ke
depan ini. Hal ini dapat disebut IO didorong, karena
dapat diharapkan bahwa dalam kebanyakan kasus
perubahan dalam keadaan disebabkan oleh inisiasi
atau penghentian operasi IO.
Evaluasi kinerja. menghitung kinerja Sistem dengan
CPU tumpang tindih dan untuk pengolahan cukup sulit.
Simulasi sering paling praktis

Reynaldi Rahmadhan

547
GAMBAR 6.62
Tabel yang digunakan oleh sistem operasi untuk
merekam negara Program.
pendekatan. Evaluasi kinerja analitik adalah mungkin
jika model yang cukup sederhana sistem dapat
dibangun. kita sekarang menggambarkan model sistem
antrian karena John w. Boyse dan David R
memperingatkan [1] yang dapat diselesaikan secara
analitis. Struktur sistem ditunjukkan pada gambar.
6.64. The si Komputer dirancang untuk dukungan
interaktif dari satu set pengguna n di terminal inputoutput. Sistem operasi mendukung multiprogramming
dan sistem memori virtual dengan permintaan paging.
Sistem IO memiliki perangkat memori logis m
independen digunakan untuk paging. Jumlah program
yang dapat menempati memori utama pada satu waktu
tidak dapat melebihi nilai m tertentu, yang disebut.
tingkat multiprogramming.
Sistem ini beroperasi sebagai berikut. Seorang
pengguna memasukkan permintaan melalui terminal
untuk pelaksanaan pekerjaan yang melibatkan
beberapa program yang P. Jika ruang dimuat ke memori
utama M, jika permintaan tersebut dimasukkan ke
dalam antrian untuk memori utama. sekali dimuat, p
bersaing untuk akses ke cpu dengan program lain yang
saat ini tersedia untuk eksekusi di M. Ketika

Reynaldi Rahmadhan

mendapatkan akses ke CPU tersebut, p dijalankan


sampai operasi IO ditemui, misalnya, karena kesalahan
halaman. Ketika ini terjadi, P relinquishes cpu, yang
kemudian dapat mulai melaksanakan program lain.
(Dalam model ini, p tidak dapat melakukan keduanya
CPU dan operasi IO secara bersamaan). Setelah operasi
IO berakhir, p, lagi berusaha akses ke CPU. Siklus CPU
dan operasi IO terus sampai pekerjaan tersebut telah
selesai. Respon yang tepat maka bisa duduk untuk
pengguna. Sebuah delay, pengguna berpikir 'waktu,
dapat diharapkan sebelum pengguna memasukkan
permintaan baru. Untuk menyederhanakan masalah
lebih lanjut, diasumsikan bahwa satu-satunya operasi
IO menarik adalah paging, bahwa setiap program
terkait dengan saluran IO berbeda. dan bahwa jumlah
saluran IO sama dengan tingkat multiprogramming m.
Oleh karena itu tidak ada anggapan untuk saluran IO.
Dari uraian di atas, kita dapat menyimpulkan bahwa
pekerjaan dalam sistem ini mungkin dalam salah satu
dari empat negara: menunggu akses ke M, menunggu
akses ke CPU, sibuk dengan operasi CPU, dan sibuk
dengan operasi IO. Negara-negara ini menunjukkan
bahwa model antrian untuk sistem harus mencakup
sebagai berikut

Reynaldi Rahmadhan

548
GAMBAR 6.63
Flowchart untuk scheduler multiprogramming.
komponen: a qm antrian untuk akses ke M; sebuah
qcpu antrian untuk akses ke CPU; server cpu tunggal
yang mewakili CPU; dan satu set m paralel server s1,
s2,. . . , Sm mewakili saluran IO m digunakan untuk
paging. Gambar 6.65 menunjukkan
struktur model antrian yang akan digunakan; dari.
model server pusat agak lebih umum Fig.2.71.

Reynaldi Rahmadhan

549
GAMBAR 6.64
Struktur sistem multiprogramming interaktif.
Sekarang kita akan menggunakan model ini untuk
menghitung ukuran kinerja penting berikut:
1. Pemanfaatan CPU ucpu, didefinisikan sebagai fraksi
rata waktu CPU sibuk
2. v sistem throughput, didefinisikan sebagai jumlah
rata-rata pekerjaan selesai per satuan waktu
3. Waktu respon sistem tR, didefinisikan sebagai waktu
yang berarti antara masuknya permintaan pekerjaan
oleh pengguna dan penerimaan nya respon dari
komputer...

Reynaldi Rahmadhan

550
di mana f adalah jumlah rata-rata kesalahan halaman
per pekerjaan, kuantitas mudah diukur. Tarif jasa untuk
CPU dan IO server vCPU / cpu dan UIO = 1 / tio, masingmasing. Tingkat kedatangan pekerjaan memasuki CPU
antrian qcpu dapat diasumsikan sebanding dengan UIO,
karena interaksi CPU-IO cenderung mendominasi
kedatangan pekerjaan baru. Tingkat kedatangan
pekerjaan memasuki antrian memori tergantung pada
waktu respon sistem sehingga tidak dapat ditentukan
secara apriori.
Pertama, kita asumsikan bahwa semua CPU dan waktu
IO iris memiliki nilai konstan. Gambar 6.67
menunjukkan bagaimana eksekusi m pekerjaan yang
tumpang tindih dengan CPU dalam hal ini. Dari diagram
ini kita melihat langsung bahwa

Reynaldi Rahmadhan

551
Gambar 6.67
Pemanfaatan CPU dengan asumsi konstan CPU dan lO
pengolahan waktu distribusi.
Untuk menghitung tanggapan rx waktu, catatan bahwa
komputer harus proses rata-rata sebuah pekerjaan
selama periode rr -l-, 2.Waktu yang dibutuhkan untuk
menyelesaikan n pekerjaan merupakan z / v; oleh
karena itu
Agak lebih akurat model itu diperoleh jika pekerjaan
dan lihat irisan cpu waktu yang cepat didistribusikan
dengan nilai berarti tcpu dan tio masing masing
.Probabilitas bahwa suatu waktu cpu bagian kurang dari
atau sama dengan r kemudian didefinisikan oleh
ekspresi bentuk

Reynaldi Rahmadhan

Menggunakan ini eksponensial penyebaran, hal ini


dapat menunjukkan bahwa cpu 1 pemanfaatan
sekarang diberikan oleh
Menunjukkan grafik dari gambar 6.68 fungsi tcpu / tio
ucpu untuk dua model ketika m = 4 .Meskipun dan
sebaran yang sebenarnya dari cpu dan io waktu tidak
konstan

552
Dan eksponensial , ini berguna model memberikan hasil
dan telah divalidasi dalam eksperimen
Tc menggambarkan analisis sebelumnya , anggap
sebagai interaktif pembagian waktu sistem yang
mengikuti pengukuran yang diperoleh yang sibuk
selama 30 menit; periode pengukuran seperti ini
didasarkan pada data sebenarnya
Number of active terminals n
10
Multiprograrnming level m
4
Number of user jobs (interactions) processed 700
Toal CPU time used by applications
600 s
Total CPU time used by operating system
800 s

Reynaldi Rahmadhan

Total number of disk page read


Average user think time

80.000
4s

Dari karakteristik dari disk kenangan digunakan untuk


paging, dapat diketahui bahwa rata rata io waktu
terkait dengan halaman membaca adalah 40 ms, yang
oleh karena itu diambil 1o menjadi i1s.Rata rata waktu
cpu diperlukan oleh tugasnya adalah: rq ( 600 + 800 )
aku? 00 = 2 s, dan rata rata jumlah halaman / dari
kesalahan per 80,000 tugasnya adalah 1700: aku i43.
~Oleh karena itu dengan ( 6.I0 ), icpl = 2000i i14.3:
17.5 ms, dan rasio, c 'u / rro adalah 17-5 / 40 =
0.4375.Sience m = 4, yang sesuai nilai dari gambar
ucpu.6.68 adalah i-0 untuk yang konstan distribusi
kasus dan 0.80 untuk lebih acrurate eksponensial
distribution- yang sebenarnya cpu pemanfaatan dari
data yang diberikan ( 600 + 800 ) / 1800: 0.78,
menunjukkan kesepakatan yang baik antara yang
diukur dan memperkirakan angka. Sistem melalui
menempatkan = v; pt a ) l t: g 0.80 / 2.0: 0.40
pekerjaan / s. dari ( 6.1 ) , thc sistem respon waktu = lx
l0 ( 2 ) / uqeu - 4 , yang 16.0 s dan 21.6 s untuk
consistant dan eksponensial rnodels dari uspg , masing
masing .Frorn yang diukur cpu pemanfaatan , kita = tr _
21.0 s .
Sistem kerja yang itu barang siapa yang l960s 05 ibm
menggunakan 360 / ( multies dan multipiexet dengan
inforrnation ) layanan komputasi , sistem operasi yang
dikembangkan bersama oleh mit dan beberapa
organisasi industri , adalah bagian dari besar

Reynaldi Rahmadhan

553
Perangkat lunak memerlukan jutaan baris bahasa
perakitan mereka kode sumber di versi lebih
besar.Kompleksitas mereka mereka pada dasarnya
akibat dari umum, yang ditujukan di efisien pemenuhan
kebutuhan
untuk
semua
jenis
pengguna

Reynaldi Rahmadhan

komputer.System operasi ini dan penerus mereka saat


ini berjalan di relatif besar dan mahal komputer, dan
menguasai mereka membutuhkan banyak upaya pada
bagian dari sebuah sistem atau pemrogram aplikasi.
Unix nama ini sebuah bermain di posisi kata multic
adalah cara yang lebih sederhana sistem operasi
dirancang di di & amp; t laboratorium bell oleh dennis
m .Ritchie , ken thompson , yang nyaman dan lain-lain
untuk memberikan dan mudah belajar program
pengembangan
piranti
lunak
lingkungan
bagi
pengembang dan users- kita sekarang mengamati hal
ini sistem opecating tertentu secara rinci.
Exemple 6.e sistem operasi unix 26 2.Yang tujuan unix
desainer akan memberikan yang cukup interaktif dan
sederhana sistem operasi berorientasi ke arah tujuan
umum pembagian waktu lingkungan.Kesederhanaan
dicapai oleh menjaga sistem operasi yang tepat cukup
kecil sehingga mudah dilaksanakan mini dan
mikrokomputer. Kernel unix consiss hanya sekitar
10.000 baris kode sumber yang ditulis terutama di
tingginya tingkat bahasa pemrograman c , bahasa unix
dikembangkan secara khusus untuk mewujudkan
.Penggunaan c bahasa sebagai sumbernya , dan
jenderal ketersediaan kode sumber , memberikan
tingkat yang cukup dari unix portabilitas antara
berbagai tipe komputer .Fungsi unix untuk proses
mengelola disediakan oleh io , dll , umum tersebut
dirancang untuk menjadi cukup. Yang memiliki efek
menjaga kernel kecil dan , pada saat yang sama .
Memungkinkan unix: untuk mengatasi yang luar biasa
lebar jumlah sistem operasi tugas . Selain itu , unix
telah terkait dengan itu besar set tujuan umum aplikasi
program atau utilitas seperti compilers , debugges ,
dan teks editor .Ini utilitas , sebagian besar yang juga

Reynaldi Rahmadhan

ditulis dalam c , datang untuk dipertimbangkan bagian


integral unix dan telah melakukan banyak untuk
meningkatkan itu popularitas. Telah kuat unix perintah
penerjemah disebut shell, yang menyediakan perintah
bahasa penetapan fasilitas manajemen dari sistem
operasi serta akses ke jalan unix utilitas sistem operasi
dapat juga diakses melalui sistem ( menyeru dari c
aplikasi supervisor ).
Unix yang digunakan akan mengenali dua jenis utama
proccess , pengawas sistem ) ( dan mudah .Masing
masing aktif program atau tugas user-created
diperlakukan sebagai seorang pengguna proses .
Apabila orang orang proses membutuhkan sebuah
sistem operasi fungsi karena perangkap atau menyela
suatu sistem dengan tidak disebut proses yang
kemudian menjadi proses yang berlayar. Sistem
melaksanakan proses terhadap bala tentara prosesor
pengawas atau istimewa negara, sementara pengguna
proses melaksanakan di nonprivileged pengguna
negara.( catatan bahwa kedua prosesor serikat telah
dukungan perangkat keras komputer di banyak mulai
dari thc s / 360-370 ke 68000 seri. Informasi terkait
dengan proses disebut gambar dalam istilah unix terdiri
dari isi memori utama lokasi yang digunakan oleh
proses , bersama dengan prosesor status dan register
informasi merupakan proses kontrol blok .Proses
gambar yang dibangun dari beberapa dinamis segmen
untuk instruksi , data dan kontrol stack penyimpanan.
Proses gambar s berada dalam memori utama saat ini
sedang dilaksanakan tapi mungkin ( kecuali untuk yang
kontrol proses blok ) menjadi menukar kehabisan
memori ketika proses tersebut tidak aktif , atau ruang
diperlukan untuk proses lainnya .Unix mempekerjakan
standar FIFO algoritma untuk mengalokasikan kedua

Reynaldi Rahmadhan

memori ruang utama dan menengah. Unix membuat


ekstensif menggunakan proses konsep dan mempunyai
berbagai mekanisme untuk memanipulasi proses kernel
berhubungan dengan tugas baru oleh setiap.

554
Menciptakan suatu proses yang mampu mengatasinya ,
sehingga setiap saat berbagai macam proses proses
dapat berada dalam pelaksanaan penempatan
.Berbagai operasi unix dipanggil oleh perintah shell ada
untuk mengelola proses. GAMBAR 6.69 daftar beberapa
perwakilan perintah yang tersedia untuk pengguna
untuk proses kontrol .Beberapa bersamaan proses
dapat initiared dengan menulis sebuah sequencr
perintah dipisahkan oleh &. Proses berkomunikasi
dan sinkronisasi kegiatan mereka dengan cara yang
sama , yang biasanya adalah kontrol bendera yang
ditetapkan oleh terjadinya beberapa ditentukan
kondisi .Proses ditangguhkan oleh mengajar itu untuk
menunggu untuk acara terjadi ini kemudian dikirim oleh
sinyal terjadinya acara tersebut.
Dalam sebuah normal unprocessing unix lingkungan
hanya satu proses dapat dilaksanakan pada suatu
waktu .Proses dilakukan dalam waktu bersama mode
proses dengan satu sama menerima sepotong waktu
cpu tak lebih dari kedua atau maka sebelum main dan
proses dikirim yang baru .Unix memberikan menjadi
prioritas nomor bahkan: proses , yang menentukan
mana yang harus menjalankan depan. Sistem proses
eksekusi diberikan prioritas berdasarkan mereka
diharapkan respon kebutuhan.Misalnya, proses transfer

Reynaldi Rahmadhan

kontrol disk menerima prioritas utama, sementara


proses yang pengguna layanan terminal menerima
prioritas rendah.Pengguna proses telah prioritas lebih
rendah
dari
yang
terendah
sistem
prioritas
proses.Untuk memastikan cukup cepat pengguna
respon, pengguna proses yang menerima relatif sedikit
prosesor waktu yang diutamakan dari proses yang
telah menerima banyak prosesor waktu. Yang sama
prioritas antara lain berjalan di bulat robin mode. Jika
ditangguhkan proses prioritas lebih tinggi bangun, itu
preemps berjalan proses prioritas lebih rendah.Untuk
mencegah beberapa proses dari yang ditangguhkan
tanpa batas, unix meningkatkan thc prioritas proses
yang telah diabaikan untuk waktu yang lama.
Sebuah unix berkas adalah satu dimensi array karakter
( bytes ) dan unit dasar untuk informasi penyimpanan
di sekunder ( disk ) kenangan .Berkas memiliki struktur
internal tidak seperti catatan ditemukan di banyak
sistem berkas lain .Pada dasarnya tidak ada
pembatasan pada panjang atau isi dari sebuah file
seperti scen oleh pengguna .Berkas disimpan dalam
halaman secara fisik ( blok ) yang ditetapkan ukuran ,
awalnya 512 bytes , tetapi iarger blok ukuran
digunakan
di
kemudian
versi
unix
.Unix
mempertahankan satu set internal: tabel ( direktori )
untuk melacak disk berkas memakai jenis indeks
berurutan organisasi untuk mengakses data yang
tersimpan .
Logis organisasi . Unix berkas dengan dilihat oleh
pengguna yang terstruktur hirarki pohon .Yang hirarkis
berkas memfasilitasi berkas struktur manegement oleh
pengguna , dan perlindungan berkas individu dan
direktori dari akses yang tidak sah .Khusus berkas

Reynaldi Rahmadhan

disebut directoiles melayani untuk kelompok terkait


berkas , dan pengguna akses file oleh menyebutkan
direktori yang berisi itu .Direktori dapat memuat lain.
Perintah fungsi dilakukan
Fork
Menciptakan komplikasi sekarang ( anak )
proses
Kilt
proses merusak
Pause
Menangguhkan proses sampai terjadilah
yang ditentukan
Ps
Status informasi mengenai proses aktif cetak
Sleep
Menangguhkan proses eksekusi untuk
sebuah waktu spesifik
Wait
Menunggu untuk suatu proses anak untuk
mengakhir
Wake
Melanjutkan proses ditangguhkan

555
Direktori sehingga berkas oganization digambarkan pada gambar 6.70 .Direktori pada tingkat yang paling
tinggi pohon itu dikenal sebagai akar . Dilambangkan
oleh kata ared adalah nama khusus / .Yang non
direktori berkas berada di . Terendah tingkat pohon
.Tingkat di bawah ini akar biasanya berisi utama sistem
seperti bin direktori , yang berisi unix utilitas: dev yang
berisi khusus berkas induding yang digunakan untuk
mengakses io: perangkat dan usr , yang berisi
pengguna direktori dan berkas . Sebuah file atau
direktori ini ditengarai dengan menyebutkan yang
scquence direktori yang mengandung dengan nama
direktori dipisahkan oleh alat miring.Misalnya, berkas
surat dalam gambar 6-70 disebut oleh / usr / tom /
surat, yang disebut berkas nama jalan unix
memberikan
sejumlah
besar
operasi
untuk

Reynaldi Rahmadhan

memanipulasi berkas, e.g menciptakan, dekat,


menyalin, terbuka, membaca dan menulis.Yang tidak
biasa fitur unix di perpanjangan berkas berharap io
manajemen. Alat input output diperlakukan sebagai
khusus jenis berkas dengan perangkat input output
yang sifatnya khusus di suatu rutinitas pengemudi
melayani untuk membuat antar muka untuk berkas
unix .Dengan demikian semua sesungguhnya operasi
dapat ditangani oleh ahli manajemen berkas unix
pengusahaan sebagaimana terbuka , dekat ,
membaca , dan menulis yang akan yang dapat
menggantikan mulai input output , masukan
menghentikan io ' dan keluaran , secara berturut
turut .Hal ini membuat unix yang tidak seperti biasanya
kaya tidak memerlukan sesuatu dari karakteristik alat
input output menempel pada sistem akan menjadi tuan
rumah , yang meningkatkan sistem operasi ini
generality dan portabilitas. Catatan , namun , ini hasil
umum di bawah sesungguhnya kinerja dari dapat
dicapai dengan metode kontrol io lain .Berkas konsep
ini juga digunakan untuk lebih . Umum interprocess
komunikasi .Proses dapat mengirim ( menulis )
informarion untuk satu dan khusus antrian seperti file
bernama pipa , dan informasi yang dapat diterima
( membaca ) dari akhir lain oleh yang kedua proses .
GAMBAR 6.70
556
Komunikasi metode yang digunakan dalam sistem
komputer tergantung kepada jarak fisik terlibat .Sistem
intra
komunikasi
jarak
pendek
tipicaly
biner
menggunakan bus paralel yang mengirimkan sinyal
digital .Sistem komunikasi inter , di sisi lain , sering

Reynaldi Rahmadhan

dilaksanakan dengan serangkaian transmisi data dan ,


menempuh jarak jauh , sinyal digital analog daripada
.Interkoneksi topologics banyak juga mungkin .Yang
berbeda sejauh mana mereka fisik komunikasi link
ditularkan , dan mereka menawarkan berbagai antara
perdagangan offs komunikasi bandwidth dan biaya
yang tidak sedikit .Kasus ekstrim ini ditujukan unit
untuk unit tautan yang melibatkan tidak berbagi , dan
satu link bersama oleh semua berkomunikasi unit.
Sistem di dalam di sebagian besar komunikasi
komputer adalah ditangani oleh satu orang; bus terbagi
bus yang mereka itulah orang orang yang juga ada di
subsystems io .Transfer informasi di atas bus mungkin
atau
asynchronous
sinkron
,
dengan
teknik
membutuhkan latrer handshaking sinyal kendali
keperluan untuk jangka waktu .Setiap saat hanya dua
unit , sebuah bus itu thc seperti cpu atau pengendali
dma yang , dan sebuah bus hamba seperti unit memori
atau sebuah pelabuhan io , dapat informasi secara logis
berkaitan dengan bus .Arbitradon bus berbagai
berbagai teknik seperti chaining daisy , tempat
pemungutan suara , dan independen meminta
digunakan untuk menentukan yang beberapa meminta
unit akan memberikan akses ke bus. Bus yang ditandai
oleh nomor dan jenis data alamat, dan kontrol baris
mereka mengandung, dan konvensi ( protrcols )
digunakan untuk sinyal transmisi, sinkronisasi, dan
arbirration.Bus telah standar didefinisikan untuk
berbagai jenis komputer, misalnya, ieee 796 yang
multibus standar ( ) mikro bus sistem.
Sebuah komputer jaringan yang terhubung set
komputer , terminal pengguna , sistem dan beberapa
hal lain yang komponen yang dipisahkan oleh jarak

Reynaldi Rahmadhan

yang jauh fisik besar .Sejumlah media baik datatransmission kabel listrik , serat optik , dan radio
hubungan , dan berbagai protokol komunikasi , berada
di dalam jaringan computer yang .Komunikasi jarak
jauh jalan ditularkan circuit pesan , atau dia dengan
menggunakan paket .Terminal yang terdiri dari jaringan
yang berbasis di tingkat pusat sistem komputer telah
yang terkait dengan banyak pengguna yang jauh dari
terminal . Didasarkan jaringan komputer desentralisasi
mengandung beberapa komputer dengan kontrol , dan
sering dibagi menjadi daerah setempat dan luas
wilayah jaringan ( lans dan wans ). Banyak standar juga
ada jaringan komputer dengan ketujuh lapisan iso
referensi model memberikan buku pedoman umum
standarisasi.Perwakilan standar lan adalah arsitektur
ethernet, yang mempekerjakan berbagi kabel coaxial
iink dengan csma / cd arbitrase.Kinerja jaringan
komputer dapat diukur oleh berarti penundaan
melintasi pesan itu, dan oleh para reliabilitas dalam hal
link kegagalan.
Merupakan aspek penting dari setiap komputer adalah
sistem keluaran input .Io sistem ini ditandai dengan
tingkat cpu keterlibatan dalam operasi io .Penggunaan
program cpu untuk mengendalikan semua tahapan
sebuah io operasi disebut diprogram io , standar fitur
pada kebanyakan komputer .Ini adalah ineficient di hal
itu membutuhkan cpu untuk mengabdikan sejumlah
besar waktu untuk sangat tugas-tugas sederhana
seperti io transfer data .Io dengan memberikan yang
perangkat dengan langsung dma pengendali ) memori
akses ( , transfer dafa sederhana dapat dilakukan
secara independen dari cpu .

Reynaldi Rahmadhan

557
Perlunya tempat cpu untuk menguji sebuah io
perangkat terus-menerus untuk menentukan statusnya
dieliminasi adalah dengan io menyela.Sebuah io
mengganggu menyebabkan cpu untuk mentransfer
kontrol dari program yang ada sekarang melayani
untuk sebuah intetrupt program.Tiga jenis menyela
satu baris yang diidentifikasi: , multiple-line, dan
vectored menyela, yang berbeda dalam jumlah
informasi ditularkan kepada cpu oleh tombol interupsi
permintaan sinyal. Maksimum kemerdekaan antara cpu
dan
lihat
beroperasi
achived
adalah
dengan
memberikan io ( prosesor iops ) - sebuah iop maha
kuasa melaksanakan io pro gram yang melakukan
operasi kompleks io .Cpu dan icp berkomunikasi melalui
komunikasi daerah di memori utama , dan dengan
channer
perhatian
dan
mengganggu
contror
permintaan garis .Cpu memulai suatu io operasi
dengan menempatkan alamat dari suatu io program
dan terkait lainnya parameter iop komunikasi di wilayah
dan
melaksanakan
mulai
io
instruksi
yang
mengaktifkan sebuah garis perhatian . Yang kemudian
dana hasil iop untuk menjalankan program io tersebut
yang biasanya; melibatkan sebuah urutan transfer
dana data dma memori utama antara input output alat
alat dan .Telah yang icp jumlahnya sangat terbatas set
instruation ke yang berorientasi pemindahan data
kontrol dan dma.

Reynaldi Rahmadhan

Kebanyakan komputer dikendalikan oleh sebuah


program yang disebut sistem operasi pengawas , yang
bertanggung jawab untuk efisien central processing
pembagian sebuah komputer , memori utama , fasilitas
dan lihat .Sistem operasi mengelola sebuah set
bersamaan proses yang melaksanakan kedua kontrol
sendiri fungsi dan tugas didefinisikan oleh apprications
pengguna program .Setiap saat , satu proses sedang
berjalan pada tuan rumah cpu ) prosesor ( , sementara
yang lain proses eter siap yang akan dijalankan , atau
di blokir ( ditangguhkan ) karena tidak tersedianya
beberapa
sumber
daya
informasi
diperlukan
.Perubahan
proses
negara
dalam
menanggapi
mengganggu atau supervisor panggilan ( perangkap ) ,
yang ditangani oleh kernel bagian dari sistem operasi
tinggal secara permanen di memori utama .
Keberadaan banyak proses mengikuti kompetisi selama
sumber
daya
bersama
dapat
menyebabkan
interprocess masalah sinkronisasi.Salah satunya adalah
persyaratan proses kadang-kadang telah execusive
rongga pada ( sumber daya kritis ) dimiliki.Saling
pengecualian ini masalah bisa diselesaikan pada
tingkat rendah oleh kontrol bendera atau semaphores
dan pada tingkat yang lebih tinggi oleh program
memonitor.Adalah deadlock masalah yang berkaitan
yang terjadi ketika dua atau lebih proses tidak dapat
melanjutkan karena setiap memerlukan proses
diselenggarakan oleh orher sumber daya.Deadlock
dapat dicegah atau diminimalisir dengan sumber daya
mengalokasikan pelaksana sesuai aturan.Pengelolaan
sistem eflicient sebuah teknik, yang merupakan dasar
dari multiprogramming proses antara adalah untuk
timeshare pengolahan cpu dan io.Salah satu secara

Reynaldi Rahmadhan

lebih luas menggunakan waktu berbagi dirancang


untuk lebih kecil system operasi komputer adalah uni.
Masalah
6.1 menentukan transmisi data media, format data,
dan protokol sinyal digunakan untuk setiap berikut ini
tugas komunikasi: yang menghubungkan tulang cpu
dan memori yang menghubungkan mikro yang
dipisahkan keyboard kepada pengguna terminal; yang
menghubungkan sebuah terminal ke remote komputer
melalui telepon masyarakat network- memberikan
singkat pembenaran atas pilihan anda dalam setiap
kasus.

558
6,2 .Kontras sinkron dan asynchronous banding dan bus
dari sudut pandang data bandwidth , biaya sirkuit antar
muka , dan bisa diandalkan
6,3 .Mendefinisikan masing-masing istilah berikut
dalam konteks desain handshaking bus kunci sinyal
master unit skew; tristate; tunggu negara .
6.4.Menganalisis tiga bus arbitrase metode daisy
chaining, polting dan independen. Meminta, dengan hal
reliabilitas komunikasi dalam hal hardware kegagalan.
6.5.Mempertimbangkan
diagram
waktu
untuk
pemindahan data melalui pdp-ll unibus yang muncul
dalam gambar.6-16.Menjelaskan mengapa penundaan (
setidaknya 75 ns ) diperbolehkan oleh master unit

Reynaldi Rahmadhan

antara
menonaktifkan.Master
keseimbangan
membersihkan alamat bus dan kontrol baris.

dan

6.6 menarik diagram waktu untuk sinkron dan tidak


serempak menulis operasi sesuai dengan operasi
pembacaan ditunjukkan dalam gambar.6.12 dan 6.16;
secara berturut-turut.
6.7 menjelaskan fungsi berikut ini sinyal muncul di
musim multibus ( ieee.796 ), bus: bprn.Sibuk, kunci,
mrdc, iowc, xack.
6.8 .Para menghambat multibus dua baris inhi-2 , garis
dimaksudkan untuk menghentikan sementara beberapa
lokasi memori atau dari pelabuhan io menanggapi
membaca . Menulis atau perintah .Mereka membuat ini
mungkin memberikan alamat yang sama untuk memori
atau beberapa dan memberikan semua unit dan unit
salah satu yang menghambat alamat ini tidak
digunakan .Di salah satu aplikasi m1 seekor domba
jantan dan m2 rom , yang terhubung pada bus dan
memberikan satu set alamat .M1 tidak terhambat oleh
inhl , m2 sementara itu terhambat dengan inh2
.Menunjukkan spesific suatu aplikasi di komputer
desain ini adalah jenis kendali hambatan mungkin akan
berguna.
6,9 .Melaksanakan logika rancangan potongan paralel
arbitrase unit untuk sistem multibus gambar .6.23b
berasumsi bahwa n = 8 .Menggunakan jenis ssi / msi
standar logika komponen desain anda
6.10 mendefinisikan masing-masing kontras pasang hal
berikut dalam konteks jaringan komputer: ( a )
memutar pasangan vs kabel koaksial ( d ) simflex
dupleks ( c ) vs sirkuit beralih vs paket beralih ( d )

Reynaldi Rahmadhan

daerah setempat vs luas wilayah ( e ) baseband vs


broadband
6.11 .Tingkat sketsa sistem desain untuk terminat
multiplexer yang terhubung ke satu set terminal
interaktif lokal seperti terlihat dalam gambar- 626b
beranggapan
bahwa
al
multiplexer
adalah
microprocessor didasarkan , dan bahwa terminal adalah
terhubung dengan yang didedikasikan memutar pairsmenganggap juga yang hdlc atau data yang sama link
protokol tetap digunakan dan bahwa multiplexer
mempekerjakan program io .Memberikan blok diagram
menunjukkan multiplexers struktur internal .Juga
memberikan sebuah satu halaman operasi secara
menunjukkan multiplexer secara keseluruhan .
6.12 .Membandingkan dan sementara itu csma / cd dan
token lewat jaringan arbitrase teknik dari pandangan
poins dari respon waktu , keadilan , dan kesalahan
toleransi.
6.13 . sebuah cabang ( pertukaran pbx ) , yang kecil
mikroprosesor dikendalikan unit beralih dirancang
untuk menghubungkan telepon dengan dalam satu
bangunan
untuk
satu
sama
lain
dan
juga
menghubungkan mereka ke luar baris , dapat
membentuk dasar untuk low-cost komputer lan
.Pengguna terminal dan komputer yang terhubung ke
pbx melalui modem dan memutar pasangan
hubungan .Pengguna mengakses komputer melalui
telepon mengalahkan melalui pbx .Menulis sebuah esai
pendek membandingkan dan kontras sebuah pbxbased lan dengan sebuah ethernet lan.
559

Reynaldi Rahmadhan

6.14 .Satu baris komunikasi mengirimkan pesan dari a


ke b- garis telah kapasitas ( bandwidth ) yang bit per
detik .Pesan tiba di suatu dengan poisson distribusi dan
berarti yang mencapai kode per pesan per detik .Pesan
panjang diukur dalam bit adalah independen variabel
acak dengan nilai rata rata m dan saat kedua s. rata
rata waktu untuk scrvice pesan yang dianggap m / c.
memperoleh ekspresi untuk rata rata pesan penundaan
td dalam hal c , sebuah , m , dan s
6.15 .Biarkan g menjadi grafik dengan n node , m tepi ,
konektivitas ceg dan edge .Membuktikan bahwa ce ( g )
& lt; 2m / n.
6,16.Mempertimbangkan jaringan komputer yang
strukturnya diwakili oleh grafik di fig- 63 biarkan 0,01
menjadi kegagalan probabilitas setiap link dalam
jaringan.Menghitung
kemungkinan
keseluruhan
jaringan gagal, l.e, menjadi terputus.
6.17 .Definisi dari masing masing yang mengikuti
metode io diprogram kontrol io , pengendali dma ,
iops .Daftar kelebihan dan kekurangan masing masing
dengan cara hormat pada kompleksitas rancangan
kegiatan , io dan bandwidth antarmuka perangkat ini .
6.18 mempertimbangkan 32-bit risc mikroprosesor
dengan 32-bit data bus ad 32-bit sebuah alamat
bus.Cpu beroperasi pada io mhz, dan memori beban
atau instruksi store siklus memakan waktu dua jam
siklus cpu.Memori terpeta aku / o digunakan dan cpu
dukung kedua vectored mengganggu dan dma blok
transfer
arbitary
dengan
blok
lengthkhas
mengganggu respon waktu adalah sepuluh jam siklus
cpu.Itu diinginkan untuk tambahkan ke sistem disk
drive dengan data-transfer tingkat n / bit s.
memperkirakan maksimum nilai yang jika dapat

Reynaldi Rahmadhan

memiliki untuk setiap cara cara sebagai berikut


mengendalikan disk drive diprogram aku / o dan dma
tampilkan semua perhitungan anda, dan negara apa
yang kamu asumsi ( kedua hardware dan sofrware ).
6.19. ( a ) khas cpu memungkinkan kebanyakan
mengganggu permintaan akan memungkinkan dan
menonaktifkan perangkat lunak di bawah kontrol.
Dalam kontras, cpu tidak menyediakan fasilitas untuk
menonaktifkan dma permintaan sinyal.Menjelaskan
mengapa ini sangat
( b ) rasa untuk beberapa alasan itu diinginkan untuk
dapat kadang kadang untuk menunda sebuah cpu
kemampuan untuk dma permintaan untuk akhir
instruksi siklus saat ini.Desain yang diperlukan
menambah beban logika untuk melaksanakan jenis ini
tertunda dma permintaan, beranggapan bahwa
konvensional satu chip cpu sedang digunakan yang
internal perangkat keras atau set instruksi tidak dapat
diubah pasangan yang ada instruksi menyembah untuk
mengaktifkan ( memungkinkan ) dan mematikan
( menonaktifkan ) yang dma penundaan.Menyatakan
dengan jelas semua asumsi undertying desain anda.
6,21.Komputer terdiri dari sebuah cpu dan sebuah io
perangkat d terhubung ke memori utama m melalui
surat satu kata bus bersama.Cpu dapat menjalankan
maksimal 105 instruksi per detik.Rata-rata disyaratkan
perintah lima siklus mesin. Tiga dari bus yang
menggunakan memori.Daya ingat membaca atau
menulis operasi menggunakan satu mesin cyclemengira bahwa cpu terus mengeksekusi latar
belakang program lts yang membutuhkan 95 persen
pelaksanaan perintah rate tetapi tidak ada io
instruksi.Saat ini io perangkat adalah akan digunakan

Reynaldi Rahmadhan

untuk transfer data berukuran sangat besar ke dan dari


m:
( a ) jika diprogram io ini digunakan dan setiap satu
kata io transfer membutuhkan cpu untuk mengeksekusi
dua instruksi, memperkirakan maksimum io tingkat
pemindahan data rmax mungkin terjadi melalui d.
( b ) memperkirakan rmax jika transfer dma digunakan.
6.22.Menggunakan data yang tersedia dengan contoh
6.5, menjelaskan dalam istilah umum bagaimana setiap
berikut ini metode dapat digunakan untuk arbitrase di
antara sangat besar jumlah mengganggu.

Reynaldi Rahmadhan

560
Permintaan dalam konvensional komputer daisy
chaining tempat pemungutan suara, independen
meminta bayangkan sebuah ready-made mengganggu
prioritas pengendali tidak tersedia.Illustare salah satu
jawaban
anda
dengan
diagram
menunjukkan
bagaimana yang bersangkutan sinyal yang antar muka
ke cpu.
6.23. Di samping itu untuk mendukung dma memori io
komunikasi beberapa pengendali lops juga mendukung
blok transfer dari satu wilayah dari memori utama ke
yang lain yaitu, mereka melakukan memori untuk
memori komunikasi melalui blok dma transfer
( a ) menjelaskan bagaimana banyak blok memori
transfer dapat dilaksanakan sebuah iop 8089 seperti
lntel .Menggambarkan juga io instruksi yang diperlukan
untuk mengatur operasi jenis ini . ( b ) apa yang
kelebihan dan kekurangan blok jenis ini transfer
dibandingkan dengan memori utama pelaksana data
yang sama trarsfer dengan cara dari blok film instruksi
seperti ini ditemukan dalam banyak cpu lnstruction
set .
6,24 sebuah lop mengontrol transfer data antara
memori utama dan satu set dari io perangkat tingkat

Reynaldi Rahmadhan

pemindahan
data
dengan
luas
berbeda.Dapat
interleave ( yang iop menyatukan ) transfer melibatkan
beberapa io perangkat membuktikan bahwa efek tidak
gabungan mereka yang melebihi kapasitas sistem datatransfer.Transfer data diajukan oleh permintaan dari lo
perangkat.Permintaan adalah diterima oleh iop hanya
bila cadangan capacityto yang memadai layanan
meminta perangkat.Merancang en mudah dilaksanakan
algoritma untuk digunakan oleh iop untuk menentukan
apakah atau tidak itu dapat menerima layanan
permintaan dari sebuah io perangkat.Asumsi anda
membuat negara semua.
6.25 yang baru komputer dimaksudkan juga telah yang
sangat cepat dan efisien io .Pengolahan adalah
kemampuan yang dirancang .Daftar semua fitur dari
ibm / s 360-370 io sistem yang tidak termasuk anda
akan di komputer baru .Dalam setiap kasus
memberikan
alasan
penolakan
an
/
360-370
pendekatan dan mengarahkan alternatif pendekatan
anda
6.26 . Mendefinisikan masing-masing istilah berikut
dalam konteks sistem operasi desain kode kritis ,
deadlock , memonitor , proses , semafor , spooling .
6.27 . Apa manfaat mendefinisikan dua kelas yang
berbeda software proses untuk: sistem pengelolaan
sistem ( pengawas ) proses dan mudah proses ?
Menggambarkan perangkat keras fitur biasanya
diberikan dalam sebuah cpu untuk mendukung proses
ini dikotomi
6.28 . Berikut tiga program instruksi ditulis 8086 intel
dalam bahasa perakitan yang diusulkan untuk
melaksanakan atau yang menunggu uji emisi serta
berfungsi untuk mengatur sebuah semafor s ganda

Reynaldi Rahmadhan

.Semua tindakan utama dari instruksi yang ditentukan


oleh komentar .Orang dari cpu 8086 terhubung melalui
multibus global untuk penyimpanan memori s .Yang
mengunci sinyal multibus tidak diaktifkan intruction
yang atau yang berlaku sebelumnya untuk awalan oleh
kunci
WAIT :
Test S,0 : Mengambil variabel s dan membandingkan ke
nol .Set z bendera untuk 1 jika s = 0 ( tidak sibuk )
sebaliknya set z bendera untuk 0
JNE WAIT : Lompat ke tunggu jika Z = 1 , jika tidak
melanjutkan ke instruksi berikutnya
MOV S, 1 : Set S to 1 (busy)
( a ) menjelaskan menghapus mengapa kode ini gagal
memenuhi yang saling pengecualian syarat untuk
semafor akses .
( b ) desain penggantinya program yang memecahkan
masalah
ini
,
menggunakan
komentar
untuk
menjelaskan instruksi anda .Akses menunjukkan betapa
eksklusif ke s memastikan
6.29 . Orang yang menulis itu dengan gaya gambar .
6.58 yang menyediakan akses ke suatu sumber daya
bersama yang hanya dapat digunakan dengan satu
proses pada saat bersamaan .

Reynaldi Rahmadhan

561
6.30 .Suatu sistem multiprogramming spooling
mendukung untuk kecepatan yang rendah printer
line .Baris yang akan dicetak yang dikalahkan dalam
cara yang sedikit demi sedikit dari banyak job yang
aktif untuk daerah penyangga pada disk .Garis yang
terkait dengan pekerjaan yang menumpuk di disk
sampai pekerjaan telah selesai .Pada saat itu semua
jobt keluaran baris yang dicetak dan dihapus dari disk
.Jalan buntu menjelaskan mengapa kadang kadang
terjadi seperti ini untuk spooling dari sistem .Apa yang
harus tindakan yang membuat sistem operasi untuk
memulihkan dari sebuah jalan buntu ?Bagaimana

Reynaldi Rahmadhan

mungkin sistem operasi yang


mencegah spooling deadlocks ?

dirancang

untuk

631.Mempertimbangkan
sistem
operasi
negara
menggambarkan dengan alokasi sumber daya grafik g
dari angka 6.59.Mari kita r6 sumber daya dan tepi
terhubung dikeluarkan dari g to torm yang baru grafik
g( a ) apakah g ' mengandung jalan buntu?
( b ) mengira bahwa p3 dan p5 permintaan akses ke r3
dalam g.Ini dapat baru permintaan menyebabkan jalan
buntu? .
( c ) mengira bahwa p2 permintaan p1 dan akses yang
baru sumber daya r1 ditambahkan ke g ' - ini bisa
menyebabkan jalan buntu?
6.32 .Sebuah hipotetis pembagian waktu system
memiliki parameter berikut .Sistem menangani hingga
empat program bersamaan .Setiap membutuhkan ratarata 5 s dari waktu cpu .Yang dialokasikan untuk
pekerjaan itu dalam waktu irisan 0-02 s. cpu ratarata
lama sampai pada tiba-tiba pengolahan umumnya hasil
operasi diperlukan .Rata-rata io oyk adalah halaman
swap yang khas dan memerlukan 100 ms. waktu
pengguna pikir diperkirakan akan menyatakan asumsi
anda 8 s. , memperkirakan perhitungan kinerja berikut.
( a ) Sistem rata-rata respon waktu ketika ada empat
job yang aktif
( b ) rata-rata kecil dari waktu cpu menganggur .
633.
{
a
)
mengidentifikasi
dan
sebentar
membandingkan
mekanisme
tersedia
untuk
interprocess commuaication di sistem operasi unix.

Reynaldi Rahmadhan

( b ) apa yang kelebihan dan kekurangan


memperlakukan semua io perangkat sebagai berkas
dalam cara logis unix?

Anda mungkin juga menyukai