Welcome

This is my blog Jangan lupa subscribe dan jadikan saya femes dengan anda menjadi follower saya.

Link Kedua

ini post kedua

Saturday 27 October 2018

Critical Section , Semaphore , Hardware Support






Pengecualian Bersama - "Satu demi satu."
Sekiranya proses Pi dilaksanakan dalam bahagian kritikal, maka tidak ada proses lain yang boleh dilaksanakan di bahagian kritikal mereka.

"Tidak ada dua benang secara serentak boleh melaksanakan kod mereka dalam seksyen kritikal"

Kemajuan - "tidak ada yang tidak perlu menunggu." - liveness

Sekiranya tiada proses melaksanakan dalam seksyen kritikal dan terdapat beberapa proses yang ingin memasukkan seksyen kritikal, maka pemilihan proses yang akan memasuki bahagian kritis seterusnya tidak dapat ditangguhkan selama-lamanya

"Tiada benang yang berjalan di luar bahagian kritikalnya boleh menyekat benang lain."

Pembuktian: untuk dua proses P0 dan P1: Jika P1 tidak menunggu untuk memasuki CS, P0 boleh masuk sebanyak yang ia inginkan


Bounded Waiting - "tidak ada kelaparan." - keadilan

Terikat harus ada pada bilangan kali proses-proses lain dibenarkan memasukkan bahagian kritis mereka setelah suatu proses telah membuat permintaan untuk memasuki bahagian kritisnya dan sebelum permintaan itu diberikan

"Tiada benang mesti menunggu selama-lamanya untuk memasuki bahagian pentingnya."

Pengujian: untuk dua proses P0 dan P1: jika P1 tunggu untuk memasukkan CS, PO boleh masuk hanya sekali, sehingga P1 dapat masuk selanjutnya

Anggapkan bahawa setiap proses dijalankan pada kelajuan nonzero
Tiada anggapan mengenai kelajuan relatif proses N

(Kita mesti mengandaikan bahawa setiap proses dijalankan pada kelajuan tidak sifar, tetapi tidak membuat andaian tentang kelajuan relatif proses)













polling VS intterupt

CPU laksana polling (busy waitng) @ speedlock
Algorym
analogi


Innterupt lagi efisyen sebab CPU boleh mempelbagaikan tugas.




 selagi bukan giliran saya : tunggu
bila sampai giliran saya : say amasuk








 atomic operation : komputer x akan benarkan apa sahaja gangguan sehingga tugasan selesai.

P, proberen
V, verhogen

S-- : decrement
S++ : acrement







wait : decrement / flag angkat / keretapi x leh masuk

signal : icrement





binary semapphore ; 1 sahaja iaitu mutex
counting semaphore ada 2 iaitu 0 dan 1


berapa jenis semaphore ?
jawapan : 3






Dalam sistem uniprocessor, sebab utama kesukaran ialah pemproses boleh menghantar proses yang berlainan untuk berjalan dari semasa ke semasa.

Dan penukaran kawalan berlaku kerana beberapa jenis gangguan, seperti gangguan waktu dalam persekitaran masa perkongsian, gangguan operasi I / O mengganggu, dll.

Berdasarkan pemerhatian ini, jika kita dapat mengelakkan konkurensi sementara pelaksanaan seksyen kritikal sedang berjalan, masalah pengecualian bersama akan diselesaikan secara semula jadi.

Mujurlah, keupayaan melumpuhkan dan membolehkan gangguan biasanya disediakan dalam semua jenis sistem komputer dalam bentuk primitif.

Kelemahan:
Menghapuskan persaingan antara proses yang tidak relevan dan dengan itu kecekapan boleh terasa terdegradasi
Pendekatan ini tidak berfungsi dalam seni bina pelbagai guna






satu proses boleh didahului dalam satu baris satu bahasa peringkat tinggi
kerana setiap baris bahasa tingkat tinggi sebenarnya lebih daripada 1 baris kod mesin
kita tidak boleh mendahului di tengah-tengah arahan mesin.
Oleh itu, Jika kita mempunyai arahan mesin tunggal yang memeriksa nilai pembolehubah dan menetapkan secara atom, kita boleh menggunakannya untuk kelebihan kita.
atom = tidak terganggu

Banyak sistem menyediakan sokongan perkakasan untuk kod seksyen kritikal
Mesin moden menyediakan arahan perkakasan atom khas

Uji perkataan memori dan Tetapkan nilai - ts atau tas
Kandungan swap dua kata ingatan - swap








No comments:

Post a Comment