You are on page 1of 124

T.C.

FIRAT NVERSTES TEKNK ETM FAKLTES ELEKTRONK VE BLGSAYAR BLM

BL391 LETM SSTEMLER


(Ders Notlar)

brahim TRKOLU

ELAZI- 2006

NDEKLER
1. Bilgisayar Sistemlerinin Yaps 2. letim Sistemlerine Bak 3. letim Sistemlerinin Bileenleri 4. letim Sistemlerinin Yaps ve Sunduu Hizmetler 5. Grev Ynetimi 6. Bellek Ynetimi 7. Ktk Sistemleri 8. Giri/k lemleri 9. Datlm letim Sistemleri 10. Gvenlik ve Koruma

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

1. BLGSAYAR SSTEMLERNN YAPISI


letim sistemleri, bir veya daha fazla srecin (proses) donanm kaynaklarn kullanmasn salayarak, bilgisayar sistemi kullanclarna eitli hizmetler sunar. 1.1. Bilgisayar Sisteminin Temel Elemanlar lemci (Ana ilem birimi AB) Ana Hafza Gerek hafza veya birincil hafza olarak da bilinir. Elektrik kesildiinde bilgileri kaybolduundan, uucu bir hafzadr. kincil hafza srcleri Haberleme birimleri Terminaller (u birimler) Sreler, hafza ve G/ modlleri arasnda haberlemeyi salar.

G/ modlleri

Sistem BUS (Adres yolu, Veri Yolu, Denetim yolu)

ekil. Bilgisayar Sistemi

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

1.2. Bilgisayar Sisteminin st Seviye Bileenleri A. lemci (CPU) kaytlar Kullancya grnen kaytlar: Bunlar ile programc, kayt kullanmn en iyi ekilde organize ederek ana hafza kullanm minimize eder. Makine dili (asembly) tarafndan kullanlabilir. Tm programlar (uygulama programlar, sistem programlar) ile kullanlabilirler. Kayt trleri : Veri ve adres kaytlar Veri Kayts : Verileri zerinde tutar. Adres Kaytlar: Adresleri zerinde tutar. ndisli :Bir adrese ulamak iin taban bir deere bir indis eklemede kullanlr. Segment pointer (Segment gstericisi): Hafza segmentlere blnd zaman, hafzaya bir segment ve ofset deeri ile ulalabilmesini salar. Stack pointer (Yn gstericisi) : Ynn en stne iaret eder.

Kontrol ve durum kaytlar : letim sistemi aracl ile ilemci tarafndan kullanlarak, programlarn dzenli olarak almasn salamak iin ilemciyi kontroll bir ekilde altrr. Bunlar: Program Sayac (Pogram Counter, PC): altrlacak olan bir komutun adresini ierir. Komut Kayts (Instruction Register, IR) : altrlacak komutu ierir. Program durum szc (status word, PSW): artl ilemleri, kesme kullanm ve ynetim/kullanc modunu kontrol eder. yleki; yaplan ilemlerin sonucunda ilemci donanm tarafndan PSW bitler kurulur. Bu bitlere, bir program tarafndan eriilebilir fakat deitirilemezler. rnek: pozitif, negatif, sfr ve tama sonular gibi

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

ekil. st seviye bileenler B. Komut alma ve yrtme stratejisi 1.lemci, PC nin gsterdii hafza adresinden altrlacak olan komutu alr. 2.Sonrasnda PC bir sonraki alnacak olan komutun adresini tutmak zere ieriini artrr.

ekil. Bir komut saykl

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

C. Komut kayts Hafzadan alnan komutlar, komut kaytsna (IR) yerletirilir. Komut trleri: lemci Hafza : lemci ve hafza arasnda veri transferini salarlar. lemci - G/ : Bir evresel birim ile veri transferi yaplamasn salarlar. Veri leme : Veri zerinde aritmetik ve lojik ilemler yaplmasdr. Kontrol : Yrtm srasn deitirirler.

D. Program yrtm rnekleri

E. Dorudan hafza eriimi (Direct Memory Access, DMA) Hafza ile G/ birimleri arasnda dorudan veri deiimlerinin yaplmasdr. leyi tarz:
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

F. Kesmeler

lemci G/ modln hafzaya yazma veya hafzadan okuma ile yetkilendirir. Deiim esnasnda ilemci sorumluluu devreder. Bu deiim esnasnda, ilemci dier ileri yapabilir.

lemcinin, normal yrtm srasn deitirmek ve gereksinim duyulan baka bir ii varsa onu yerine getirmek iin kesme programlar kullanlr. Kesme srecinde kontrol kesme program devralr. Kesmeler iletim sistemlerinin genel bir parasdrlar. Kesmeler: lemcinin etkinliini artrr. Bir G/ ilemi yaplrken, ilemcinin dier komutlar yrtmesine olanak verir. Bir srecin geici olarak durdurulmasna (sonradan altrlmak zere) sebep olurlar.

Kesme trleri: Program G/ Donanm hatas Aritmetik tama Sfra blme llegal komut yrtme Kullancnn hafza alannn dna kmas

Zamanlayc (Timer)

Kesme sayklnn yrtm: lemci, kesmeleri kontrol eder. Eer kesme yoksa, mevcut program iinde ilemci bir sonraki komut alr. Eer kesme varsa, mevcut alan program olduu yerde braklr (almasn bitirmeyi beklemeksizin) ve kesme program idareyi ele alr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

ekil. Kesmeli bir komut saykl Kesme ve kesmesiz programlarn yrtm aklar:

G. oklu Kesmeler Bir kesme sreci balamken, gelebilecek dier kesmeler kabul edilmez. lemci yeni gelebilecek herhangi bir kesme isteini dikkate almaz. Kesme devre d kaldnda, ilemci kald yerden grevini tamamlayabilir. lemci kesmelere izin verinceye kadar kesmeler devreye girmezler. Kesme kullancsnn program rutini tamamlandktan sonra, ilemci ilave kesmeleri kontrol eder.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

En yksek ncelikli (imtiyazl) kesme, dk imtiyazl kesmenin beklemesine neden olur. Yada dk ncelikli kesme devrede ise kesilmesine neden olur.

H. oklu programlama lemci yrtmek iin birden ok programa sahiptir. Ardl programlar onlarn ncelik durumuna ve G/ iin bekleyip beklemeyecei durumuna bal olarak yrtlr. Bir kesme program tamamlandktan sonra, kontrol kesme annda alan programa devredilmeyebilir (kesme program ncelikleri deitirebilir). I. Hafza hiyerarisi Hafza hiyerarisinin getirdii avantajlar:

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

Bit bana maliyet der. Kapasite artar. Zaman eriimi artar. Mikroilemci tarafndan hafzaya eriim skl der. Yerellikten sz edilebilir.

J. n-bellek (Cache) Geici olarak bilgilerin tutulmasna ynelik kullanlan ana hafzann bir ksmdr. Diskteki sk kullanlan kmelerin tutar. Veriye disk ten yava ulamak yerine yazlm n belleinden daha hzl ulalabilir. zellikleri: letim sistemine grnmez lemci hz hafza hzndan ok daha fazladr. nbellek kullanm ile hafza kullanm hz artar. lemci ilk nce n bellei kontrol eder; gerek duyulan bilginin hafza blou nbellekte yoksa, n-bellee tanr. nbellek kapasite bykl, performans zerinde nemli bir etkiye sahiptirler. Daha geni blok bykl, aranlan yeni bilginin n-bellekte bulunma ihtimalini artrr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

10

(a)

(b) ekil. n bellek kullanm 1.3. Bilgisayar Sistemlerinde A Yaps Yerel alan alar (LAN) Geni alan alar (WAN)

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

11

ekil. Yerel alan a yaps

ekil. Geni alan a yaps


brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

12

2. LETM SSTEMLERNE BAKI


letim sistemi kullancyla bilgisayar donanm arasnda iletiim salayan programdr. Programn amac kullanc programlarn altrmak iin kullancya ortam oluturmaktr. letim sistemi bilgisayar, yazlm ve donanmlarn kullanmak iin elverili duruma getirir ve donanm etkili kullanr. Buna gre iletim sistemlerinin balca amalar: 1. Kullanc programlarn altrlmas 2. Kullanc problemlerinin zmnn kolaylatrlmas 3. Bilgisayar sisteminin kullanmn daha elverili hale getirilmesi 4. Bilgisayar kaynaklarnn verimli bir ekilde kullanlmas (ok kullancl sistemlerde nem kazanr) letim sistemi, donanmla yazlm arasnda bir ynetici arayz olarak grev yapar. Her bir donanm birimi, tm kaynaklar eriip ynetebilmektedir. alma srasnda oluan hatalarn ve akmalarn nlenmesi iletim sisteminin grevidir. letim sistemleri bilgisayar kullancs ile donanm arasnda alan bir yazlmdr. Amac kullancnn programlarn altrabilmesi iin ortam salamaktr.

ekil: letim sisteminin konumu


brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

13

letim sistemi fakl kullanclarn uygulama programlarnn donanm kaynaklarn kullanmn kontrol eder ve koordine eder. Bilgisayar kaynaklarnn datm iin u problemlerin zm gerektirir: - Ana ilem biriminin zamana gre paylam - Disk alannn ynetilmesi - Giri/k aygtlarnn ynetimi letim Sistemi Tarafndan Salanan Hizmetler: - Program gelitirme - Editrler ve Debuggerlar - Program yrtme - G/ srclerine eriim - Dosyalara eriimi kontrol etme - Hata denetimi ve cevaplama o Dahili ve harici donanm hatalar Hafza hatalar Src arzalar Aritmetik tama Yasaklanm hafza blgelerine eriim

o Yazlm hatalar

o letim sisteminin, uygulama isteklerini yerine getirememesi - Muhasebe (hesaplama) o statistik toplama o Kullanc hesaplarn salama letim sistemleri, sradan bilgisayar yazlmlar gibi ayn tarz fonksiyonlara sahiptirler. rn: Programlar yrtr. 2.1. letim Sistemlerinin Snflandrlmas Byk Bilgisayarlar iin Sistemler Basit toplu ilem sistemleri Benzer ilerin toplu ilenmesi sonucu ilem zamannn ksalmas Otomatik i ardkl: bir iten dierine otomatik gemek (lk basit iletim sistemidir). Kalc monitr
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

14

o Monitrde balang denetimi yaplr. o Denetim, yaplacak ie devredilir o bittikte denetim monitre tekrar devredilir. Masast Sistemler Kiisel bilgisayarlar tek kullancya ayrlm bilgisayar sistemi. G/ aygtlar klavye, fare, monitr, yazc. Kullanma rahatl salar. Birka farkl iletim sistemleri alabilir (Windows, MacOS, UNIX, Linux) ok lemcili Sistemler

ekil: ok ilemcili mimari ok ilemcili sistemler birden fazla ABnin yakn iletiimde bulunduu sistemlerdir. Skca birletirilmi sistem ilemciler bellei ve saati paylayorlar; genelde ortak bellek araclyla gerekletiriliyor. Paralel sistemlerin stnlkleri: o Yksek ilem yetenei o Yksek gvenilirlik Simetrik oklu ilem (Symmetric multiprocessing -SMP) o Her ilemci iletim sisteminin ayn kopyasn altrr. o Baarm dmeden, oklu ilemci yaps alabilir. o Pek ok iletim sistemi SMPyi destekliyor Simetrik olmayan oklu ilem (Asymmetric multiprocessing) o Her ilemci zel bir probleme tahsis edilir; ana ilemci ileri planlatrr ve dier ilemciler arasnda datr o Genelde, ok byk sistemler iin kullanlmaktadr. Datk Sistemler lem, birka fiziki ilemci arasnda datlr.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

letiim,

15

Zayf birletirilmi sistem her ilemcinin kendi yerel bellei bulunur; ilemciler birbirleriyle yksek hzl ana iletiim yollar zerinden veya telefon hatlar gibi eitli iletiim hatlaryla iletiim kurarlar. Datk sistemlerin stnlkleri: o Kaynaklarn ortaklaa kullanm o lem hznn ykselmesi - ykn paylam o Gvenilirlik o letiim A yaps gerektirmektedir: Yerel alan alar veya Geni alan alar A iin, ya istemci-sunucu, yada eit balant (peer-to-peer) modeli kullanlabilir.

ekil: stemci-Sunucu Modelinin Genel Yaps Kmelemi Sistemler Kmeleme, bellek alann ortak kullanmaya izin veriyor. Yksek gvenilirlii salyor. Asimetrik kmeleme: bir sunucu uygulamay altrd zaman, dier sunucular yedek kalyor. Simetrik kmeleme: tm ana makineler uygulamay altryor. Gerek Zaman Sistemler Bilimsel denemelerde, fabrikalarda retimin otomatik denetiminde, tbbi grnt sitemleri gibi uygulamalarda kontrol amac ile ska kullanlmaktadr. nemli zellii, iyi tanmlanm belirli zaman kstlamalarnn bulunmasdr. Gerek zaman sistemleri ya sert (hard), yada hafif (soft) gerek zamanl olabilir: Sert gerek zaman sistemleri: o kinci bellek snrldr veya yoktur, veriler ksa sreli bellekte, veya sabit bellekte saklanr. o Zaman paylaml almalar genel amal iletim sistemleri tarafndan desteklenmiyor.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

16

Hafif gerek zaman sistemleri: o Sanayi robotlarnn denetiminde snrl kullanlmaktadr. o Gelimi iletim sistemlerinin yararldr. El Sistemleri Kiisel rakaml yardmclar (Personal Digital Assistant (PDA)) Hcresel telefonlar (Cellular telephones) zellikleri: o Snrl bellek o Dk hzl ilemciler o Kk ekran. lem Ortamlar Web tabanl ilemler Gmlm ilemler 2.2. letim Sisteminin Geliimi letim sistemlerinin geliim sreci aadaki aamalardan gemitir: Basit toplu iletim sistemleri Zaman paylam tabanl oklu programlama Kiisel bilgisayarlarn iletim sistemleri Paralel sistemler Datk sistemler (Paylalm sistemler) Gerek zaman sistemleri zelliklerini gerektiren uygulamalarda

2.2.1. Basit toplu iletim sistemleri (Batch Systems) lk bilgisayarlarn genelde iletim sistemleri yoktu. letim sistemleri bilgisayarlarn donanmlar gelitikten sonra ortaya kmaya balamtr. Bu tr sistemlerde ilemcinin zamannn byk ksm giri k ilemlerini beklemekle geer. nk, G/ aygtlarnn hz ilemcinin hzndan dk olduu iin ilemci bu aygtlar beklemek zorundadr. Bunu nlemek iin Spooling teknii (Ana ilem birimini giri k biriminden ayrma ilemi) kullanlr. Bylece CPU gelen girii ya dorudan, yada ileyip ka aktarr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

17

Spooling

AIB

2.2.2.Zaman Paylam Tabanl oklu Programlama Ayn zaman diliminde bellekte birka i bulunur. lerin hangisinin ve hangi ardklkla altrlacann belirlenmesi iin i planlanmas (job schduling) yaplr. Kaynaklar paylatrlarak kullanlr. Bu sistemlerde AB (CPU)nun alma zaman kk zaman aralklarna blnr, ve bu zaman aralklar ardk olarak programlar tarafndan kullanlr. Onun iin ayrlan zaman aral bittiinde bu i kuyrua geer ve yeniden ilenmek iin bekler.

ekil: Tek program; lemci G/ biriminden gelebilecek olan bekler

ekil: oklu programlama; Bir i G/ birimini bekledii zaman, ilemci baka bir ie ynelebilir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

18

ekil: Yaplacak iler (operation system = monitor)

ekil: Bellein iler arasnda paylam; iletim sistemi bellei birka i arasnda paylatrabilmektedir. 2.2.3.Kiisel bilgisayarlarn iletim sistemleri En nemli zellii kullanc kolayln salamasdr. oklu ortamda almas ve gvenilir olmas nemlidir. Tek kullancl sistem olduu iin kaynaklarn paylam mekanizmasna gerek yoktur.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

19

2.2.4.Paralel iletim sistemleri Paralel sistemlerde birden fazla ilemci olur. Bu ilemciler baz kaynaklar (ana veri yolu, saat (cp), bazen de ana bellei, G/ kaynaklar) ortak kullanrlar. Byle sistemlere gl bal sistem denir. CPU1 CPU2

Disk

I/O

Mem

ok ilemcili sistemlerin oluturulma nedeni ilem hznn ve gvenirliinin arttrlmasdr. lemci says arttka ilem hz artar ancak bir noktada sabitlenir.

. hz doyma noktas . . . . . . says 2.2.5.Datk sistemler Bu sistemlere a sistemler de denir. Burada herbir bilgisayar sisteminin kendi kaynaklar, ilemcisi, I/O aygtlar ve fonksiyonlar bulunur. Bunlara zayf bal sistemler denir. A ortamnda alan bilgisayarlardan oluur. Bilgisayarlar arasnda iletiim, a ortam ile gerekleir. Bu sistemlerin oluturulma nedenleri; Kaynaklarn paylam Ilem hznn ykseltilmesi Gvenilirlik Yeni iletiim olanaklarnn salanmas

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

20

2.2.6.Gerek zaman sistemleri Bu sistemlerde ilemlere uygulama alanlarna bal olarak zaman snrlamalar getirilir. Byle sistemler sanayi kontrol sistemlerinde, bilimsel aratrmalarda kullanlr. Bu tr sistemlerde ok gerekli olmamakla beraber disk bellei kullanlr. Daha fazla ROM (sabit bellek) kullanlr.

letim sistemi

Giri parametresi

Kontrol Nesnesi

Kontrol parametreleri

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

21

3. LETM SSTEMLERNN BLEENLER


Birbirinden farkl eitli iletim sistemleri bulunmasna ramen, bunlar arasnda ortak yap zellikleri ve bileenleri vardr. Fonksiyonel bakmdan iletim sistemlerinin bileenleri: Grev ynetimi (Process manager) Ana bellek ynetimi (Memory manager) Ktk ynetimi (File manager) Disk (2. bellek) ynetimi (Second Storage) A zerinde alma (A fonksiyonlar ynetimi: Networking) Sistem korumas Komut derleyici sistemler Bu bileenler aada ksaca aklanmaktadr. Daha ileri ki blmlerde, her biri ayrntl bir ekilde verilecektir. 3.1.Grev Ynetimi Genel halde grev alr durumda olan programdr. Bu program pasif bir varlktr. Grev ise aktiftir. Grevler, AB zaman, bellek, ktkler, G/ aygt kaynaklar gerektirir. Bu kaynaklar ilgili greve onun olutuu anda aktarlr. Grev sonlandktan veya kesildikten sonra, iletim sistemi bu kaynaklar grevden alr ve bir dier grevle arasnda paylatrr. Grevin almas ardk ilemlerdir. Her bir zaman diliminde ana ilem birimi tarafndan grevi bir komut altrr. ki grev ayn programa ait olsa da ayr grevler gibi baklr ve altrlr. Grev iletim sisteminde bir i birimidir. letim sistemi, farkl grevlerin ayn zamanda almasn ve kaynaklarn ortak kullanmn kontrol eder. letim sistemi, grev ynetiminde aadaki ileri icra eder: Kullanc ve sistem birimlerinin oluturulmas, silinmesi Grevlerin oluturulmas, durdurulmas ve yeniden altrlmas Grevlerin zamana uyum salama mekanizmasnn gerekletirilmesi Grevler arasnda iletiim salanmas Kilitlenmelerin ynetimi ki grev ayn zamanda altrldnda ayn kaynaklar kullanmak isteyebilirler. Bu durumda, zamana uyum salama mekanizmas kullanlr. (rnein, aralarn trafikte yeil yanncaya kadar bekleyip sonra gemesi gibi)
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

22

Ortak kaynaklarn kullanmnda her iki grev de bekleme durumuna geerse (bu sonsuz dng oluturur) kilitlenme olur. Yani, biri dierinin sonucunu beklerken, dieri de tekinin sonucunu bekler. 3.2.Ana Bellein Ynetimi Bellek her birisinin kendi adresi olan baytlar veya kelimelerden oluan byk dizidir. Bellek AB ve G/ aygtlarnn paylat ve hzl eriilebilen bir veri ambardr. Ana Bellek geici bellektir. Ana ilem biriminin (AB) verimliliini ve kullanc sorgularna yant verme hzn ykseltmek iin, bellekte ayn zamanda birden fazla program saklanmas gereklidir. Bu halde bellein ynetimi iin farkl yaklamlar ve algoritmalar kullanlmaktadr. Bu yaklamlarn seimi, birok farkl zellikte sistemin donanm tasarmna baldr. Bellek ynetimiyle ilgili her bir algoritma zel donanm destei gerektirir. Bellek ynetimi ile ilgili, iletim sistem aadakilerden sorumludur: Bellein imdiki durumda, hangi ksmnn ve kim tarafndan kullanld hakknda bilginin elde edilmesi Bellek alan bo olduunda bu alana hangi grevlerin yklenmesi hakknda, karar oluturulmas 3.3.Ktk Ynetimi Ktk, oluturucusu tarafndan belirlenmi ilikili bilgiler topluluudur. ounlukla, ktkler kaynak ve nesne trnde programlar ve verileri ifade ederler. Grev ve bellek ynetimi kullanc iin sanaldr. Ktk ynetimi ise kullancy grsel olarak ilgilendirir. rnein; diske yazlan ktkle, CDye yazlan ktk birbirinden farkldr. Ancak letim Sistem bu ayrntlar saklar ve aynym gibi grntlenmesini salar. Yani, bilgi istenilen ktkte amacna uygun bir ekilde depolanr. Bilgisayar sisteminin kullanm kolaylatrmak iin letim Sistemi veri depolarn ayn biimli mantksal grnmde olmasn salar. Mantksal depolama (kaydetme, saklama) birimini tanmlamak iin uygun aygtlarn fiziki nitelikleri boyutlanr (sektr, track,.vs.). Bu mantksal depolama (kayt) birimine ktk denir. Ktn oluturulmas, silinmesi ve adnn deitirilmesi ktk ynetimine aittir. Genel halde ktkler programlar ve verileri ifade eder. Ktklerin ynetimini kolaylatrmak iin dizinler oluturulur.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

23

letim Sistem ktk ynetiminde aadakilerden sorumludur. Ktklerin oluturulmas ve silinmesi Dizinlerin oluturulmas ve silinmesi Ktk ve dizinlerin ynetimi Ktklerin disk belleine (2.bellee) haritalanmas (kaydedilmesi) Ktklerin 2. bellekte yedeklenmesi (back up) 3.4.Giri / k (I/O) Sistemlerinin Ynetimi Giri/k gerekletirir: Bileenleri oluturur. (Tampon nbellekleme sistemi) n bellee yazp-okuma Spooling ilemlerinin gerekletirilmesi Aygt-src (device driver) arayzlerinin ynetimi Belirli donanm aygtlar iin srclerin ynetimi 3.5.Disk (2. Bellek) Ynetimi Ana bellein, geici ve tm veri-programlarn srekli saklanlmas iin ok kk olmas nedeniyle bilgisayar sistemleri ikincil bellee ihtiya duymaktadrlar. letim Sistem ikincil bellee bal aadaki giriimlerden sorumludur: Bo disk alan ynetimi Diskin paylam Diskin planlanmas 3.6.A Fonksiyonlar Ynetimi A ortam veya datk sistem, ortak giri-k aygtlar, saati ve ana bellei olmayan ilemciler (bilgisayarlar) topluluundan oluur. Her ilemcinin kendine ait bellei bulunur. Birbirlerine iletiim hatlar araclyla balanrlar ve iletiimi protokollerle gerekletirirler. A kullanclar ayn ortak kaynaklara eriebildii gibi, kullanc baznda eriimde mmkndr.Bu durum: Hesaplama (bilgi-ileme) hzn ykseltir. Verilerin kullanlabilirlik alann geniletir Gvenilirlii ykseltir Burada, letim Sisteminin en nemli grevi ortak kaynaklara eriimi salamaktr.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

sisteminin

ynetimi,

ierdii

birimlerle

aadaki

fonksiyonlar

24

3.7.Koruma Sistemi letim Sistemlerinde koruma; koruma ve gvenlik olarak iki eittir. Eer bilgisayarn birden fazla kullancs varsa ve oklu grevin birden fazla almasna izin verilirse bu grevler birbirlerin giriimlerinden korunmaldr. Bu amala letim Sistemi; ktklere, bellek kesimlerine (segment), ilemciye ve dier kaynaklara grevlerin kontroll eriimini salar. rnein; grev yalnz kendisi iin ayrlm adres alannda alabilir yada zamanlama grevin belirlenmi zaman ierisinde ana ilemcinin de almasn salamaldr. Koruma mekanizmas letim Sistemi bileenleri arasndaki arayzlerinde oluabilecek hatalar nlemekle gvenlii ykseltir. letim Sisteminin koruma sistemi aadaki ilemlerden sorumludur: Eriim Kontrol o Sisteme kullanc eriimini dzenler; zinli ve izinsiz kullanmlar ayrt edebilme. Bilgi Eriim Kontrol o Sistem iindeki veri akn ve verinin kullanclara datmn dzenler; Denetimleri belirleme. Sertifikasyon o Sertifikasyonlara gre eriim ve ak kontrol performans salanr; zinsiz eriimleri engelleyebilme. 3.8.Komut Derleyicisi Sistemin kullanc ve letim Sistemi arasnda arayz oluturan yorumlayc sistem programdr. Gelimi sistemlerde kullanc arkadal bulunan, komut derleyicilerin tasarmna nem verilir. Byle arkada arayzler, pencerelerin ve men sistemlerinin olumasn destekler, grevlerin oluturulmas ve ynetimi, giri-k ynetimi, ktk sistemlerine eriim, koruma ve a zerinde alma, bu komutlarla gerekletirilir. letim Sisteminin Komut Derleyicisi aadaki ilemlerden sorumludur: Pek ok komut, iletim sistemine denetim fonksiyonlar amac ile ynlendirilir. Bu komutlar aadaki ilemleri gerekletirir: Grev oluumu ve ynetimi G/ ynetimi Bellek ynetimi Ana bellein ynetimi
25

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

Ktk sistemlerine eriim Koruma A ortamnda alma

Denetim fonksiyonlarn okuyan ve derleyen programa Komut satrnn derleyicisi veya ekirdek (Kernel) (UNIX sisteminde) denir.

Komut derleyicisinin ilevi, komut fonksiyonunu okumak ve yrtmektir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

26

4. LETM SSTEMLERNN YAPISI VE SUNDUU HZMETLER

4.1. letim Sistemi Tasarm Hiyerarisi Sistemin Tasarm Hedefleri: - Kullancya ynelik hedefler; iletim sisteminin kullanm ve renilmesi kolay olmal, sistem gvenilir ve hzl almaldr. - Sisteme ynelik hedefler; iletim sistemi kolay tasarlanan, altrlabilen, bakm kolay, esnek, gvenilir olmal, hatasz ve etkili almaldr. Geleneksel olarak assembly dilinde yazlm olan iletim sistemleri yksek seviyeli dillerde de yazlabilir. Yksek dillerde: - Daha abuk yazlabilir. - Daha az yer kaplar. - Anlalmas ve zm kolaydr. letim sistemi yksek seviyeli dilde yazldnda kolaylkla farkl bilgisayarlarda kullanlabilir. letim sistemleri her snf bilgisayarda altrlabilecek ekilde tasarlanr. SYS - donanm sisteminin belirli biimi ile ilgili bilgiyi ieren programdr. Booting ekirdein yklenmesi ile bilgisayarn almaya balamasdr. Bootstrap program ekirdei belirlemek, bellee yklemek ve altrmaya balamak iin ROM belleinde saklanan koddur.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

27

S.No 13 12 11 10 9 8 7 6 5 4 3 2

Katman Ad Kabuk Kullanc Sreleri Dizinler Srcler Ktk sistemi Haberlemeler Sanal Hafza ortam

Nesneler Kullanc programlama Kullanc Sreleri Dizinler D srcler; yazc, monitrler ve klavyeler Ktkler (dosyalar) Balantlar Segmentler, sayfalar kanallar

rnek lemler Kabuk dilindeki ifadeler k, reddetmek, duraklatmak, Kald yerden devam etmek Oluturma, Yok etme, balamak, ayrmak, aratrmak, listelemek Ama,Kapama,Okuma,Yazma Yok etme, ama, kapama okuma, yazma Ama, kapama, okuma, yazma Okuma, yazma, bilgi ekme Okuma, yazma, yerletirme, Serbest Erteleme, kald yerden devam, bekleme, iaret etme stek, maskeli, maskesiz, Hedef yn, arma, geri dnme Ykleme, depolama, ekleme, karma, dallanma

Yerel ikincil bellek Veri bloklar, Src Basit sreler Basit sreler, hazr listeler

Kesme programlar Kesme programlayc Prosedrler Komut seti Prosedrler, yn, grntleme Yn deerlendirme, Mikro-program yorumlayc, Tek ve dizisel veri

Elektronik devreler Kaytlar, kaplar, BUSlar Silme, transfer, aktive etmek, tersleme

4.2. letim Sistemlerinin Mimarileri : Katmanl Sistem eitli seviyelerden oluur Her bir seviye ilikisel alt fonksiyonlar icra eder. Daha ok basit fonksiyon yrtmek iin her bir seviye sonraki daha dk seviyeye baldr. Bu durum, bir problemin bir ok alt-problem olarak ayrtrlmasn salar.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

28

ekil: Katman tabanl iletim sistemlerinin yaps 4.2.1. MS-DOS Sisteminin Yaps MS-DOS kk bellek alannda pek ok ilevin salanabilmesi iin yazlmtr: Modllere blnmez; Arayzler ve ilev seviyeleri kesin ayrlmamtr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

29

ekil: MS-DOS Sisteminin yaps

ekil: MS-DOS Sisteminde; a) Sistemin balang durumu, b) Programn almas durumu

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

30

4.2.2. OS/2 Sistemini Yaps

ekil: OS/2 Sisteminin Yaps. 4.3. Modern letim Sistemlerinin Mimarileri : Mikro-kernel Mikro-kernel mimari: Kernele temel fonksiyonlarn grevlerini atar. Adres uzay Sreler aras iletiimi (IPC) Temel programlama

ekirdekten kullanc alanna doru kayma salanr. letiim kullanc modlleri arasnda haber gndermekle gerekletirilir. Yarar: - Mikrokerneli geniletmek kolaydr - letim sistemini yeni mimarilere tamak kolaydr - Daha gvenilirdir (daha az kod ekirdek modunda almaktadr)

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

31

Modern letim Sistemlerinin Karakteristikleri: oklu i paracklar (Multi-threading) Sreler, ezamanl alabilen i paracklarna blnr.

parac (Thread) Yrtlecek iin kernele gnderilmesi Ardl yrtmeler kesilebilir.

Bir sre, bir veya daha fazla i paracnn toplamdr. parac; bir sre iinde bulunan bir yrtme ilemi iin kerneli programlayan bir program paracdr.

Simetrik oklu ileme ok ilemcili yap kullanlr. Bu ilemciler ayn ana hafzay ve G/ birimlerini paylarlar Tm ilemciler ayn fonksiyonlar yrtebilirler.

Datk iletim sistemleri Bir ana hafzann yansmas (hayali) ile ikincil hafza uzayn elde eder. Datk dosya sistemlerinde kullanlr (A sistemi)

Nesne tabanl tasarm Kk bir kernele yardmc modller ilave edilerek kullanlr Programclarn sistem btnln bozmakszn bir iletim sistemi

uyarlamasn mmkn klar.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

32

ekil : Mikrokernel tabanl iletim sistemlerinin yaps 4.3.1. Windows 2000 (W2K) Gnmzn gl 32 bitlik (i yaps) mikroilemcileri kullanr Tek bir kullanc ortamnda ok grevlilii salar stemci/Sunucu (Client/Server) kullanm zelliine sahiptir. Modlar yaps sayesinde, esneklik salar. Farkl donanm platformlar zerinde alr Dier iletim sistemleri iin yazlan uygulamalar destekler

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

33

ekil: Windows 2000 mimarisi Mikro-kernel mimarisindeki deiiklikler: Tam anlamyla mikrokernel deildir Mikro kernel dndaki bir ok sistem fonksiyonu kernel modunda altrlabilir. Her hangi bir birim karlabilir, gncellenebilir veya yenilebilir. Katman yaps: Donanm soyutlama katman Farkl donanm platformlarndan iletim sistemini yaltr. Mikrokernel (mikro ekirdek) letim sisteminin en ok kullanlan ve en temel bileenidir. Aygt srcleri Kullancnn G/ fonksiyonlarn, bir aygt G/ isteine evirir

W2K Yrtm: - G/ yneticisi - Nesne ynetici

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

34

- Ekran tabanl gvenlik - Sre/ parac yneticisi - Yerel yordam arma olana - Sanal hafza yneticisi - n bellek yneticisi - Windows/grafik birimleri Kullanc Sreleri: - Srelere belirli sistem destei rn: Oturum ama sreci ve oturum yneticisi - Sunucu sreleri - evresel alt birimler - Kullanc uygulamalar stemci/Sunucu Modeli: Yrtm basitletirmek eitli API leri yrtmek Gvenlik iyiletirmeleri Her bir hizmet, hafzann kendine ait olan ksmnda ayr bir sre olarak alr stemciler donanma dorudan eriemezler Yerel yordam arm yolu ile iletiim kurmak iin uygulamalara bir balant salar. Datk hesaplama iin taban oluturur. Farkl yordamlar farkl ilemciler zerinde ezamanl yrtlebilir. Bir sre iindeki bir ok i paracnn yrtm farkl ilemciler zerinde ezamanl yrtlebilir. Sunucu sreleri bir ok i paracn kullanabilir. Sreler arasnda veri ve kaynak paylama mmkn. paracklar:

4.3.2. UNIX Sisteminin Yaps Donanm iletim sistemi tarafndan evrelenmitir. letim sistemi Kernel olarak isimlendirilir. Ardndan arayzler ve kullanc hizmetleri gelir. kabuk C derleyicisi
35

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

ekil: UNIX Mimarisi. UNIX sistemi iki ayr ksmdan olumaktadr: Sistem programlar ekirdek Sistem arlar, arayzden fiziki donanma kadar her eyi ieriyor. Ktk sistemlerini, AB planlamasn, bellek ynetimini, dier iletim sistemi ilevlerini salar.

ekil: UNIX sisteminde oklu program almas


brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

36

ekil: UNIX Sisteminin yaps 4.4. Sunulan Hizmetler letim sistemlerinin eitli trleri bulunmakla birlikte, bunlar arasnda ortak zellikler vardr. letim sistemlerini bu zellikleri zerine snflandrmak mmkndr. Bu snflardan birisi de kullancya sunulan hizmetlerdir. letim Sisteminin kullancya salad hizmetler, bilgisayarla almay kolaylatrd gibi, iletim sisteminin paralarn kullancdan saklar. Program altrma : letim Sistemi herhangi bir program bellee ykleyebilir ve altrabilir. Programn almas, ancak normal sonlanma veya hata olumas durumunda kesilebilir. Giri/k lemleri : evresel donanmlarn kullanlmas Ktklerin lemleri : Ktk oluturma, yazma, silme letiim : Bir grevin dier bir grev ile bilgi alveriinde bulunmas Grevler aras iletiim genelde iki yolla gerekleir; Ayn yntemle allmas A zerindeki farkl bilgisayarlar arasnda iletiim, ortak bellek alan kullanmakla ve haber mesaj gndermekle salanr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

37

Hata Bulma : letim Sistemi bilgisayar kaynaklarnda (bellek, ana ilem birimi, disk, programlar, ktk, G/ aygtlar ) oluan hatalar bulur, analiz eder ve mmknse bu hatalar nler. Kaynaklarn Paylam: letim Sisteminin baz fonksiyonlar kullancya yardm iin deil sistemin verimli kullanlmas iin kullanlr. rnei; kaynaklarn paylam: ayn zamanda birden fazla program altrlrsa sistemin kaynaklar bu programlar arasnda paylatrlr. Her bir kaynan ynetimi ii eitli yntemler ve algoritmalar vardr. rnein; ana ilem biriminin daha iyi kullanm iin AIB planlama algoritmas kullanlr. Bu algoritma iin giri parametreleri; ilemcinin hz, yazmalarn says, ayn zamanda alabilecek grevler says vb. statistiksel Verinin Hesaplanmas : Bu tr bilgiler, hangi kullanclarn hangi kaynaklar, ne kadar kullanacan, sistemde oluan hata trlerini, kaynaklarn kullanm oranlarn ierir. Koruma : Tm sistem kaynaklarna eriimin denetimini salar.

4.4.1. Sistem arlar Sistem arlar alan program ile iletim sistemi arasndaki ara yz salar. Genellikle assembly dili komutlaryla eriilebilir. Baz yksek seviyeli dillerde sistem arlarna dorudan eriimi salar (rn;C++)

alan program ile iletim sistemi arasnda parametrelerin gnderilmesinin temel yntemi vardr: Parametrelerin yazmalarda gnderilmesi Parametrelerin bellekte, tabloda saklanmas ve tablonun adresinin parametre gibi yazmaca gnderilmesi Parametrelerin programla yna yazlmas ve iletim sistemi tarafndan yndan alnmas.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

38

ekil: Parametrelerin tablo ile gnderilmesi 4.4.2. Sistem arlarnn Trleri Grev denetimi Ktk denetimi Aygt ynetimi Bilgi saklama letiim 4.4.3. letiim Modelleri letiim haber gndermekle, yada ortak belek araclyla gerekletirilir:

ekil: letiim trleri; a) Haber gnderme,

b) Ortak bellek alan


39

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

4.4.4. Sistem Programlar Sistem programlar program gelitirme ve yrtmek iin elverili ortam salar. letim sisteminin pek ok kullanc grnmlerini, sistem arlar deil, sistem programlar belirler. Sistem programlar unlardr: Ktk ilemleri Durum bilgileri Ktk gncelleme Programlama dili destei Program ykleme ve yrtme letiim Uygulama programlar

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

40

5. GREV YNETM
Grev (process), iletim sistemi tarafndan yrtlen ardk ilemler srecini ieren bir programdr. Ayn zamanda sre olarak da adlandrlr. Grev iin gereken kaynaklar, grev ortamn oluturur. Grev ynetiminin amalar: Makul cevaplama sresi ierisinde, birka grevi ayn anda yrterek ilemciden maksimum faydalanmay salamak Grevleri kaynaklara datmak Grevler aras haberlemeyi salamak Kullanclarn grev oluturabilmesine ortam oluturmak. Grevin almas, ardk ilemler sreci eklinde olup, her bir zaman diliminde grevin yalnz bir komutu alabilir. Grev yalnz program kodunu deil, ayn zamanda program sayacnn (PC) deeri ile ifade edilen giriimleri, ilemci kaytlarnn ieriklerini, kesme verilerini (alt program parametreleri, geri dn adresleri, geici deikenleri) ieren yn, genel deikenleri ieren veri blmnden oluur dahil edilir.

ekil: Bir komut sayklnn Yrtm ki grev ayn programda birleebilir, ancak farkl alma srelerini ierirler.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

41

Grev Durumu : Grev, yrtlmekte olduundan durumu deiken yap sergiler. Grev genel olarak, yapt ie giriimlere gre iki durumda birinde olabilir: alma veya almama durumu.

ekil: Grev durum gei diyagram

ekil: alma ve almama durumu. Grev her bir zaman diliminde aadaki durumlardan birinde olabilir.

ekil: Be durumlu grev modeli. Sunu (new): Grev olumaktadr. alma Durumu (running): Grevin bir komutu ilemcide gerekletirilmektedir. Bekleme Durumu (waiting) : Grev herhangi bir olayn olumasn beklemektedir. (rnein; G/ ileminin bitmesi, herhangi bir sinyalin gelmesi).

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

42

Hazr Olma Durumu (ready) : Grev ilemciye aktarlmak iin beklemektedir. Bu duruma almama durumu veya yrtme hazr durumda denilmektedir. Biti veya Kesilme Durumu (terminated) : Grev almasn bitirdikten sonra bu duruma geer. Grev sonlandrma sebepleri: Uygulamadan kma Normal tamamlanm Hafza kullanma uygun olmamas Koruma hatas, rn: Sadece okunabilen bir dosyaya yazma Aritmetik hata alma zaman am: Bir grevin veya bir i paracnn belirlenen maksimum sreden daha uzun sre beklemesi I/O baarszl Geersiz komut: Bir verinin yrtm iin ele alnmas mtiyazl komut st grevlerin alt grevleri sonlandrmas Herhangi bir anda sadece bir grev alma durumundadr, ama birden fazla grev hazr ve bekleme durumunda olabilir.

ekil: Grevlerin durumlar

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

43

ekil: Grev durumlarnn deerlendirilmesi Grevin Askya Alnmas: Grevin askya alnma nedenleri; Mikroilemci G/ birimlerinden ok daha hzl olmasna ramen, tm grevler G/ ilemini beklerler. Swapping (Dei toku): Bir iletim sistemi, bir grevi yrtebilmesi iin yeterince ana hafzay serbest braklmasna ihtiyac duyarlar. Kullanc isteklerinin etkileimi Zamanlama st grev istekleri.

ekil: Grev askya alnmas durumu

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

44

ekil: Kaynaklarn (ilemci, I/O, hafza) grevlere (P1,P2, Pn) dalm 5.1.GREV DENETM Her bir grevin almas iin gereken bilgiler grev denetim blounda (PCB=Process Control Blok) blounda gsterilir. Grev denetim bloundaki bilgiler, program sayac, ana ilem birimi yazmalar v.s bulunur. Her bir grevle ilgili bilgiler: Grev durumu Grev sayac AB yazmalar AB planlanmas bilgileri Bellek ynetimi bilgileri statistiksel bilgiler G/ durumu bilgileri ekil: PCB Program sayac: Grev iin sonraki altrlacak program kodunun adresi yazlr. AB yazmalar: Bilgisayarlarn mimarilerine gre farkllk gsterir. Bu yazmalarda grevin durumuna ait bilgiler saklanr. Bu bilgilerin saklanmasnn nemi, grev kesildikten sonra yeniden almaya balamas iin grev adresinin belli olmasdr. rnek; Program sayac, Yn. AIBnin planlanmas bilgileri: Grev nceliklerini, zamanlama parametrelerini ierir. Bellek ynetimi bilgileri: Taban adreslerini, sayfa ve kesilme adreslerini ierir. statistiksel bilgiler: Ana ilem biriminin kullanm sresi grevlerin almas iin zaman snrlamalar, grev numaralar gibi bilgiler ierir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

45

G/ durumu bilgileri: Greve ayrlan G/ aygtlarnn listesi, grev iin alm ktklerin listesi gibi G/ durumu bilgilerine ierir.

ekil: ABnin grevler arasnda paylam Grev sisteme sunulduktan sonra grev kuyruuna yerleir. almak iin hazr olan ve almay bekleyen hazr grevler kuyrukta bulunurlar. Kuyruk genelde balantl liste biiminde oluturulur. Grevlerin PCB gstergelerini ierir. Grev CPUda belli bir sure iersinde altrlr. Bu sure bitiminden sonra grev, kesme veya herhangi zel bir durumun olumasn bekler. I/O aygtlarn bekleyen grevler, aygtlar kuyruunda oluur. Her aygtn kendi zel kuyruu vardr (rn: Yazc). Grevlerin kuyrukta seilmesi grev planlaycsnn iidir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

46

ekil: Grev planlamasnn ak Planlayclar : Uzun vadeli planlayclar (veya i planlaycs) hazr grevler kuyruuna girecek grevleri seer. Uzun vadeli planlayclara daha az sklkla gereksinim duyulmaktadr. Bu nedenle yava olabilir. Ksa vadeli planlayc (veya AB planlaycs) bir sonraki hangi grevin yrtleceini belirler ve ABye yerletirir. Ksa vadeli planlayclarna ska grev dmektedir. Bu nedenle hzl olmaldr. Uzun vade planlaycs ok programlama seviyesini denetler. Grevler: o G/ ynl grev zaman hesaplamalardan ziyade G/ ilemlerine zaman harlar, AB kullanm ok ksadr. o AB ynl grev hesaplamalara daha ok zaman harlar; AB kullanm uzundur. letim Sisteminin Kontrol Tablolar : Herhangi bir grevin ve kaynan mevcut durumu hakknda bilgi edinmek iin kullanlr. Tablolar, iletim sistemi ynetiminin her bir bileeni iin oluturulur.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

47

ekil: letim sisteminin kontrol tablolar. Hafza Tablolar Grevlerin ana hafzaya yerletirilmesi Grevlerin ikincil hafzaya yerletirilmesi Paylatrlan hafza blgelerine eriim niteliini koruma

G/ Tablolar G/ aygtnn kullanm veya belirli bir grev iin ayrlmas G/ ileminin durumu G/ transferinin, tanmlaycs veya kayna olarak kullanlan ana hafzadaki yeri tutar. Ktk Tablolar Varolan dosyalar kincil hafzadaki yer Mevcut durum Nitelikler
48

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

Grev Tablolar Grevin konumun bulunduu yer Grevin ynetimi iin gerekli nitelikler

ekil: Kullanc uzay iinde iletim sisteminin grev yrtm yaps Grev Tanmlaycs Nmerik tanmlayclar, grev kontrol bloklarnn ierisine depolanabilir. Grev tanmlaycs Grevin oluturduu grevin tanmlaycs Kullanc tanmlaycs

Grev Durumu Bilgileri lemci durum bilgisi Kullancya grnen kaytlar Kontrol ve Durum (PSW) kaytlar (rn: Pentiumlarda EFLAGS) Yn aretileri (Stack Pointers)

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

49

ekil: EFLAGS Kayts Grev Kontrol Bilgileri Programlama (Scheduling) ve durum bilgisi: Performans artrmak iin iletim sistemi tarafndan zaman programlama fonksiyonlarna gereksinim duyulur. Bunun iin tipik bilgi paralar: Grev durumu: Grevin yrtm iin gerekli olan zamanlamasn tanmlar (rn: alma, hazr, bekleme, durdurulma). ncelik: Bir veya daha fazla grevin zaman nceliklerini tanmlamak iin kullanlr. Baz sistemlerde, birka deer (rn: varsaylan, yrrlkteki, en yksek imtiyaz) gereklidir. Bilgi Tabanl Zamanlama: alt en son zaman. Olay : Grev, almay devam ettirebilmek iin olayn tanmlayc kimliini bekler. Veri Yaps: Bir grev, kuyrukta, halkada, veya dier yaplarda bulunan dier bir grev balanabilir. rnein; 1. Bir kuyruktaki, belirli bir ncelik seviyesi nedeniyle bekleme konumunda bulunan tm grevler birbirine baldrlar. 2. Grev, baka grevler ile st-alt (imtiyazllk asndan) ilikisine sahiptir. Grev kontrol blou, bu yaplar desteklemek iin dier grevlere iaret edicileri ierebilir. Bu kullanlan zamanlaman algoritmasna baldr. Grevin bekleme zamannn sresi, yrtm zamannn sresi,

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

50

Grevler aras iletiim: Bamsz iki grev arasndaki iletiim birliktelii eitli bayraklar, iaretler, ve mesajlar ile salanabilir. Bu bilgilerin tamam veya bir ksm, grev kontrol blounda bulunabilir. Grev ayrcalklar: Grevler hafza asndan kabul edilen ayrcalklara sahiptirler. Bunlar, eriim ve yrtm iin gerekli olan komut trleridir. Ayrca, ayrcalklar sistem hizmetleri ve programlarnn kullanm iinde uygulanabilir. Hafza Ynetimi:Bu blm, bir grev iin tahsis edilen sanal hafzaya iaret eden segment gstericisi veya sayfa tablolarn ierir. Kaynak sahiplilii ve kullanm: Grev tarafndan kontrol edilebilir kaynaklar gsterilebilir. rnein; ak dosyalar, ilemcinin veya dier kaynaklarn kullanm gemii verilebilir. Bu bilgi programlayc iin gereklidir.

5.1.1. Ana lem Biriminin Planlanmas oklu programlamann hedefi; ayn zamanda birka grevi birlikte altrmakla, ana ilem biriminin verimliliini ykseltmektir. Grevlerin almasn ilikisel koordine etmek iin planlama fonksiyonu (scheduling) kullanlr. Bu fonksiyon iletim sisteminin temel fonksiyonlarndandr. Tm bilgisayar kaynaklarnn grevi, alma ncesi planlanr. Esas kaynak olan AIBnin planlanmas iletim sisteminin tasarmnda balca yeri tutmaktadr. Her bir grevin almas, AIB ve G/ ilemlerinden oluur. AIBnin alma sresi greve ve bilgisayarlara gre farkllk sergiler. Genelde ksa sreli ana ilem birimi almalarnn says uzun sreli almalardan daha youndur.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

51

Grevlerin planlanmas iin eitli algoritmalar kullanlmaktadr. Bu algoritmalar kyaslamak iin kriterler: 1. Ana ilem biriminin kullanm durumu: Gerek sistemlerde AIBnin kullanm oran %40 ile %90 arasndadr. 2. Belirlenmi zaman diliminde almasn tamamlayan grev says. 3. Grevi altrmak iin harcanan zaman: Grevin sisteme sunulmasndan bitiine kadar geen zamandr ve grevin bellekten okunmas, kuyrukta beklemesi, ilemcide almas ve G/ ilemlerini yapmas srelerinin toplamndan oluur. 4. Grevin hazr grevler kuyruunda bekleme zaman 5. Cevaplama sresi: Deiken zaman paylaml ortamlar iin kullanlr ve istek sunulduktan sonra onun cevabnn alnmasna kadar geen zamandr. 5.1.2. Planlama Algoritmalar

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

52

5.1.2.1. FCFS (First Come First Served lk Gelen nce) Algoritmas Bu algoritmaya gre; AIB yi ilk talep eden grev, ilk olarak ilemciyi kullanr. FIFO kuyruu ile altrlabilir. Grev hazr grevler kuyruuna sunulduktan sonra, onun grev denetim blou (PCB) kuyruun sonuna ilave edilir. AIB bo olduu zaman kuyruun bandaki grev almas iin AIB ye sunulur ve kuyruktan silinir. Bu algoritmada grevlerin bekleme sresi yksek olur. rnek: P1, P2, P3 grevlerinin srasyla kuyrukta yerletiklerini kabul edelim: Grev P1 P2 P3 alma Zaman (sn) 24 3 3

1.Grevler P1, P2, P3 ardkl ile sunulmu olduunu varsayalm. Buna gre planlama: P1
0 24

P2
27

P3
30

Burada; P1 in bekleme sresi P2 nin bekleme sresi P3n bekleme sresi 0 msn. 24 msn. 27 msn 'dir.

Ortalama bekleme sresi : (24+27+0) / 3 = 17 msn 'dir. 2.Eer grevlerin gelme P2, P3, P1 eklinde sralanrsa, planlama: P2
0 3

P3
6

P1
30

Burada ise; P2 nin bekleme sresi P3 n bekleme sresi P1in bekleme sresi 0 msn. 3 msn. 6 msn 'dir.

Ortalama bekleme sresi : (3+6+0) / 3 = 3 msndir. Grlecei zere, FCFS algoritmasnda ortalama bekleme sresi daima minimum olmayabilir. nk grevlerin geli srasna bamldr.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

53

5.1.2.2.SJF (Shortest Job First En Ksa letim Sresi Olan nce) Algoritmas Bu algoritmada CPU bo olduunda, kalan grevler iinde alma sresi en kk olan grev, almas iin ilemciye sunulur. Eer iki grevin kalan sreleri ayn ise o zaman FCFS algoritmas uygulanr. Bu algoritmada: Her grev, o grevin bir sonraki AB ilem zaman ile deerlendirilir. Bu, en ksa zamanl iin bulunmas iin kullanlr. SJF Trleri: 1. Kesilmesiz SJF : Eer AB bir greve tahsis edilmise, AB ilem zaman bitmeyince grev kesilemez. 2. Kesilmeli SJF : Eer AB ilem zaman, u anda alan grevin kalan ilem zamanndan kk olan yeni bir grev sisteme sunulmusa, eski grev kesilecek. Bu ynteme, SRTF( Shortest Remaining Time First En ksa ilem zaman kalan, birinci) yntem denir. SJF verilmi grevler kmesi iin en kk ortalama bekleme zaman olumas iin optimizasyon yapar. rnek: : P1, P2, P3, P4 grevleri aadaki ardklk ile sunulmu olduunu varsayalm. Buna gre kesilmesiz SJF yntemine gre ortalama bekleme sresini bulalm: Grev P1 P2 P3 P4 P4 0 3 P1 9 P2 16 alma Sresi 6 7 8 3 P3 24

SJF

: tob = tP1 + tP2 + tP3 + tP4 = (3+9+16+0) / 4 = 7 msn

FCFS : tob = tP1 + tP2 + tP3 + tP4 = (0+6+13+21) / 4 =10.75 msn olarak ortalama bekleme sresi (tob) bulunur.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

54

rnek: P1, P2, P3, P4 grevleri aadaki ardklk ile sunulmu olduunu varsayalm. Buna gre kesilmeli SJF yntemine gre ortalama bekleme sresini bulalm: Grev P1 P2 P3 P4 P4 0 1 P2 4 P4 8 P1 16 Sunu Zaman (sn) 3 1 2 0 alma Sresi (sn) 8 3 9 5

P3 25

P4 P2 P1 P3 tob = ((0+3) + 0 + (8-3) + (16-2))/4 = 5.5 msn

5.1.2.3.SRTF (Shortest Remaining Time First - En Ksa letim Sresi Kalan nce) lk ilem yaplrken bu esnada sunulan grevin alma sresi daha ksa ise o yaplan grev kesilir, alma zaman ksa olan grev ilenir. 5.1.2.4.ok Kuyruklu Planlama Algoritmas Bu algoritmaya gre grevler belli snflara ayrlr ve her snf grev kendi kuyruunu oluturur. Baka deyile hazr grevler ok seviyeli kuyrua dntrlr. Grevin trne nceliine, bellek durumuna veya baka zelliklerine gre grevler belli kuyrua yerletirilirler. Her kuyruk iin planlama algoritmas farkl olabilir. Bununla birlikte grevlerin bir kuyruktan dierine aktarlmasn salayan algoritmada oluturulur.

yksek ncelik Sistem grevleri Etkileim grevleri Toplu ilem grevleri dk ncelik Bu algoritmaya gre yksek ncelikli kuyruktaki grevler nce ilenir. Eer bu kaynak bo ise ondan aa seviyedeki grevler altrlabilir. AIB

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

55

5.1.2.5.ncelikli Planlama Algoritmas Bu algoritmaya gre her bir greve ncelik deeri atanr ve grevler ncelik srasna gre ilemciyi kullanrlar. Ayn ncelikli grevler FCFS algoritmas ile altrlrlar. Grev P1 P2 P3 P4 P5 ncelik 3 1 3 4 2 alma Sresi (msn) 10 1 2 1 5

P2 0 1

P5 6

P1 16

P3

P4 18 19

tob = (0 + 1 + 6 + 16 + 18) / 5 = 8.2 msn 5.1.2.6.Dngl Planlama (Round Robin - RR) Algoritmas Her grev kk bir AB zaman dilimini alr. Bu zaman bittiinde, grev kesilir ve hazr grevler kuyruunun sonuna eklenir. rnek: P1, P2, P3, P4 grevleri aadaki ardklk ile sunulmu olduunu varsayalm. Zaman dilimi 20 msn ise buna gre: Grev P1 P2 P3 P4 P1
0 20

lem Zaman (msn) 53 17 68 24 P1 P3


97 117

P2
37

P3
57

P4
77

P4
121

P1
134

P3
154

P3
162

5.1.3. Birlikte alan Grevler letim sisteminde ayn zamanda alan grevler ya bamsz ya da birlikte alan grevlerdir. Grevin almas dier alr durumdaki grevleri etkilemezse, bu grev bamsz grev dir. Bu tr grevlerin, herhangi bir deeri, geici veya kalc olarak dier grevlerle ortaklaa kullanlmazlar. Buna karn, birbirini alma sresince etkileyen grevler birlikte alan grevlerdir. Ortak verileri kullanrlar.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

56

Ana bellek Dkm Alan retici Grev

Ana bellek Yazc Yastk Alan (Buffer)

Tketici Grev

ekil : Birlikte alan iki grevin gsterimi Birlikte almann sebepleri Bilgi paylam: Farkl kullanclar iin ayn bilgiler gerekebilir, bu nedenle bu kaynaklara paralel eriim salanmaldr. Bilgi-lem hznn ykseltilmesi: Problemin zmn gerekletirmek iin problem alt problemlere blnebilir ve bu problemler paralel alabilirler. Modllere paralanma: Sistemin modllere paralanmas ilemi ve kontrol kolaylatrr. Kullanc rahatl : Her bir kullanc ayn zamanda birden fazla problemi altrma isteinde bulunabilir. Grevlerin ortak almas : Grevlerin, iletiim ve eriim ilemlerinde zaman uyumunu (senkronizasyon) salayan bir mekanizmann olmas gerekir. Birlikte alan grevler problemine, retici-tketici problemi gibi baklabilir. retici rnleri tampona gnderir, tketici ise alr, tampon dolu olduunda retici beklemeli, bo olduunda ise tketici beklemelidir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

57

saat() { vuru++; if (vuru == 100) { vuru = 0; saniye++; if(saniye == 60) { saniye = 0; dakika++; if (dakika == 60) { dakika = 0; saat++; if(saat == 24) saat = 0 ; } } } }

ekil: Saat rnei zerinde birlikte alan grevler ve iletim btnl

rnek: Snrl tampon iin ortak bellek kullanm : #define BUFFER_SIZE 10 Typedef struct { ... } item; item buffer[BUFFER_SIZE]; int in = 0; int out = 0; Ortak veri alannn kapasitesi BUFFER_SIZE-1 kadar elemandr. Burada, in deikeni tablodaki ilk yahut da sonraki bo yeri, out ise son dolu yeri gsterir. Bu bir kuyruk oluturur. in=out ise tampon bo, in+1=out ise bellek tamponu doludur. 5.2.GREVLER ARASI LETM (IPC Inter Proccess Communication) Birlikte alan grevler ortak bellek alan kullanarak iletiim salayabilirler. Ayrca, grevler arasnda iletiim salanmasnn dier bir yolu ise, grevler aras iletiim IPC aracnn kullanlmasdr. IPC aralar, en az iki ilem yapmaktadrlar: (1) Send (P message), (2) Receive (Q message) ilemleri. IPC nin haberleme sistemi, grevlerin birbirleriyle ortak deikenler kullanmadan iletiim oluturabilmesidir. Grevlerin gnderdii haberler, sabit veya deiken olabilir. Yalnz sabit boyutlu haberler gnderilirse gereken fiziki yap basitleir, programlama daha zorlar. Deiken boyutlu haber gnderilirse, tam tersi fiziki yap karmak olur.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

58

Grevler aras iletiimi dorudan yada dolayl olarak gerekletirmek mmkndr: 1. Dorudan iletiim : Haberi gnderenin ve alann adlar kesin gsterilmelidir. Dorudan eriimde grevler aras iletiim yapsnn zellikleri : 1. letiimde bulunan iki grev arasnda otomatik gerekletirilir. 2. Grevler yalnz iletiim oluturduklar grevi tanyabilir. 3. Her ift grev arasnda yalnz bir balant oluturulmaldr. 4. Balantlar genelde iki ynl bazen ise tek ynl olabilir. Bu algoritmada kullanlan yntem simetrik yntemdir. Simetrik yntemde haberi gnderen ve alan birbirlerinin adlarn bilmelidir. Eer haber gnderen birim alcnn adn belirtirse ve haber alan ise haberin kimler tarafndan gnderildiini bilmezse bu yntem asimetrik yntemdir. 2. Dolayl letiim : Haberler posta kutusu ile alnp verilir. ki grev yalnz ortak haberleme kutular bulunursa iletiim kurabilirler. Dolayl iletiimin zellikleri : Balant ikiden fazla grev arasnda oluturulabilir. Balant yalnz ortak kutular alan grevler arasnda oluturulabilir. letiimi oluturan her iki grev arasnda birden fazla balant olabilir. Bu balantlarn her biri iin bir balant kutusu bulunur. Balant bir ynl yada iki ynl olabilir. Haberleme kutularn iletim sistemi kendisi oluturduu gibi, bir baka grevinde yeni haberleme kutular oluturmasna, onlarla haber alp gndermesine veya bunlar silmene izin verir. letim Sisteminin oluturduu haberleme kutular bamszdr. 5.3. ZAMAN UYUMLAMA Ayn zamanda birka grevin ayn kaynaa erimesi durumunda, iletim btnlnn salanmas zaman uyumuna (Senkronizasyon) gereksinim vardr. Grevlerin ortak kayna (bellek yada ktk) farkl zamanlarda kullandklar zaman grevler aras iletiimi salamak kolaylar. Ama grevler ayn zamanda ortak kaynaa erimek isterlerse, eitli problemler kabilir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

59

rnek: A ve B grevleri ktn yazcdan ktsn almak istiyorlar. in ve out ortak deikenleri olsun. out; kts alnacak ktn adresi, in ise ktk iin ayrlan sonraki bo adres gsterilir.

4 A grevi 5 6 B grevi next_free 7 7

abc proje proje in = 7

A grevi inin deerini okur ve bu deerin yerel deikenine yazar. O zaman ana ilem birimi Ann alma sresinin bittiini karar alr ve B grevi de kendi ktnn adn 7. adrese yazar. A grevi yeniden almaya balad zaman next_free deikenine bakar, kendi ktn adresini 7 yazar. Bnin yazm olduu deeri silmi olur. Bylelikle iki grevin ayn zamanda almas hataya yol aabilir ve bu ilemlerin sonucu hangi grevin daha nce almasna baldr. Byle duruma yarma koulu denir. Grevlerin birlikte almasnda hedef yarma koulunu kartmaktr. Bunun en basit yolu birden fazla grevin ortak verilere eriimine izin verilmemesidir. Belli bir zaman diliminde grevin yarma kouluyla ilgisi bulunmayan ilemlerle megul olur. Baz blmlerinde ise yarma kouluna bal ilemleri gerekletirir. Grevin bu blmne kritik blm denir. ki grevin ayn zamanda kendi kritik blmlerinde almasn engelleyebilecek durum oluturulursa yarma koulu ertelenmi olur. Grevlerin kullandklar sistem kaynaklar, kullanm asndan iki gurupta toplanr: 1.Paylalabilen kaynaklar : Bir grev tarafndan tmyle kullanlmadan dier grevler tarafndan kullanlabilen kaynaklardr (CPU, RAM, HDD). 2.Paylalmayan kaynaklar : Bir grev tarafndan tmyle kullanm bitince dier grevler tarafndan kullanlabilen kaynaklardr (YAZICI, CD-R). Bu kaynaklara kritik kaynaklar ad da verilmektedir.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

60

Kritik kaynaklarn grevler tarafndan paylalmas nlem alnmadan yaplamaz. Kaynaa erimeden nce kaynan kullanm durumunun snanmas gereklidir ve dier grevlerin o anda kaynak zerinde ilem yapmadklarn emin olunmas gerekir. Bir grevin kritik kaynak zerinde ilem yapt anda dier grevlerinde byle bir istei olursa, bu ilemin kaynak serbest olana dek ertelenmesi gerekir. Kritik kaynaa erimeden nce kaynan uyumunun snanmas ve eriimin ertelenmesi grevler aras zamana uyumlama olarak ifade edilir. Zaman uyumlamann ayn kritik kaynaa eriim yapmak isteyen grevlerden en ok birini kendi kritik blmne girmesiyle gerekletirmek mmkndr. O zaman bu grev dier grevlerin kendi kritik blmlerine girmelerini engellemelidir. Bu ileme karlkl dlama denir. Birlikte alan grevlerin ilem btnlnn korunmas iin karlkl dlanmann yan sra, karlkl tkanmannda engellenmesi gerekir. Grevlerin birbirlerinin ilerini karlkl olarak srekli engellemelerine karlkl tkanma denir. Grevler aras zaman uyumlamada uyulmas gereken nlemler: 1. Karlkl dlanmann salanmas: Birlikte alan grevlerden en ok biri ayn anda kritik blme girmelidir. 2. Karlkl tkanmann engellenmesi: Ayn anda ortak kaynaa erimek isteyen en az bir grev sonlu bir sre iinde kritik blme girmelidir. 3. Kritik blmn dndaki grevler ortak kaynaa erimek isteyen grevleri engellemelidir. 5.3.1. Zaman Uyumlama Yntemleri Grevler Aras Zaman uyumlama yntemleri unlardr: 1. zel donanm destei gerektirmeyen yntemler 2. Donanm destei gerektiren alt-dzey aralar 3. st-dzey zaman uyumlama aralar 5.3.1.1. zel Donanm Destei Gerektirmeyen Yntemler Kesme Yapsnn Kullanm: Karlkl dlamay salamak amacyla bir grev kritik kaynak blmne girerken, sistemi kesmelere kapatabilir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

61

di; saniye1 = saniye; dakika1 = dakika; saat1 = saat; ei;

di; saat = 0; dakika = 0; saniye = 0; ei;

Burada; di

kesme devre d, ei

kesme kullanlabilir.

Algoritmik Yaklam A) Sra deikeni ile zaman uyumlama: Ayn kritik kaynaa erien grevler programlamada kullanlr. Bunun iin kaynan kullanm srasn belirleyen bir gsterge (sra gstergesi) ngrlr. Ortak kaynaa erimek isteyen bir grev kritik blme girite bu sra gstergesini snar. Eer gsterge, srann snayan grevde olduunu gsteriyorsa kritik blme girilip ortak kaynaa eriilir. Bunun tersi olduunda srann kendisine gelmesini bekler. Dezavantaj grevleri, ortak kaynaa deimez srayla erimeye zorlar.

GREV 1 : while (sira!=1); /*bekle*/ kritik-blm(); sira=2;

GREV 2 : while (sira!=2); /*bekle*/ kritik-blm(); sira=1;

B) Dekker Algoritmas : Dekker algoritmasna gre birlikte alan iki grev aada verilmitir. Bu algoritmaya gre birlikte alan iki grevin, kritik blmlere ezamanl olarak girmeleri, koul1 veya koul2 nin ilgili grevin kritik blmne girmesinden nce mutlaka false olmasndan dolay olanakszdr. Karlkl tkanma, sra nn kritik blme girmeden nceki karar ksmnda ierik deitirmemesi sayesinde nlenmektedir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

62

5.3.1.2.Donanm Destei Gerektiren Alt Dzey Algoritmalar A) Test-and-set tr komutlarn kullanm : ilemler tek bir komutla yaplmaktadr. kili deikenleri snama ve gerektiinde kaynan kullanmda olduunu belirten deikenin gncellenmesi gibi

B) lkel Semafor lelerinin Kullanm: Grevler arasnda karlkl dlamay salamak iin semafor denen deikenler kullanlr. Semafor 0 megul, 1 serbest (bo) deerlerini alrsa, buna ikili semafor denir. P komutuyla kaynak dier grevlerin kullanmna kapanr, V komutuyla alr. P(S) ve V(S) ilelerinin grevler aras zaman uyumlama kullanm, kritik kesimlerin bu ilelerle ayra arasna alnmas yoluyla olur:
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

63

: P(S); (Kritik kesim) V(S); :

Bir grev kritik kesime gitmeden nce P(S) ilecini altrr. Snin ierdii deere gre ya kritik kesime girer yada bu ile zerinde bekler. Kritik kesim knda mutlaka V(S) ilecinin altrlmas gerekir. Bu tanma gre S nin salt 0 ve 1 deerlerini alabildii grlr. 0 megul ve 1 serbest anlamlarn tamaktadr. 5.3.1.3.st Dzey Zaman Uyumlama Aralar Programlama dillerinin, ezamanl uygulamalar hazrlamak iin ek komutlar vardr. Bu ekilde hazrlanan e zamanl uygulamalar, alt dzey zaman uyumlama algoritmalar (dekker gibi.) ile hazrlanan uygulamalara nazaran daha kolay tanmlanr. Fakat, alma hzlar dktr. A) leti Aktarm, send/receive Komutlar: Grevler arasnda aktarlan verilere ileti denir. send komutu ileti gndermek, receive komutu ise dier bir grevden ileti beklemek ve almak iin kullanlr. Hedef ve Kaynak adl parametreler alan ve gnderen grevlerin kimlikleridir. leti ise aktarlan veri beini belirler. send (hedef, ileti) receive(kaynak,ileti) letilerin kaynak kimlikli grevden hedef kimlikli greve aktarm, deiik yollarla gerekletirilebilir : 1. Kaynak grevin bellek alanndan, dorudan hedef grevin bellek alanna aktarlmas 2. letim sistemine ilikin tampon (buffer) alanlarnn kullanlmas 3. Posta kutularnn (pipe ler) kullanlmas. B) Monitor Kullanm: Monitor, birlikte alan grevlerin , ortak kaynaa eriim yapan yordamlarnn (kritik kesimlerinin) topland kmeye verilen addr. Grevlerin ortak kaynaa eriimlerini denetim altnda tutmann bir yolu da bunlarn, kritik kaynaklara merkezi bir denetim altnda erimelerini salamaktan geer.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

64

5.3.2. Kilitlenme Kilitlenme, bekleme durumundaki grevlerin, hazr grev durumuna geebilmek iin bir dierinin salayaca koulu karlkl beklemelerine verilen addr. Grevlerin her birinin bekler olmas ve alabilmek iin bir dierinin iletilmesinin gerekmesi durumu, grevlerin hibir zaman gereklemeyecek bir koulu beklemeleri sonucunu dourur.

G1() : : P(DS); P(YS); : V(YS); V(DS); :

G2() : : P(YS); P(DS); : V(DS); V(YS); :

ekil: Kilitlenen grevler Grevler arasnda tkanma (kilitlenme) aadaki koullarda ortaya kabilir: 1. Karlkl Dlama : Bir kaynan ayn anda yalnz bir grev tarafndan kullanlabilmesi. 2. stem zerine kaynak atama : Grevin gereksedii kaynaklar, teker teker iletim aamasnda elde edilmesi. 3. Atanan kaynaklarn, grevler serbest brakmadka geri alnamamas 4. Dngsel Bekleme : Bir grevin elinde tuttuu kaynaklardan bir yada daha ounun, bu grevle ayn dngsel iletim zinciri iinde yer alan dier grevlerce istenmesi. Bu koullarn tamam ayn anda bulunmas tkanmay oluturur. Tkanmay nlemek iin bu durumlardan en az birini ortadan kaldrmak gerekir. Ortadan kaldrma yntemlerinden birisi tkanmaya neden olan grevlerin yok edilmesi veya sistemin yeniden balatlmasdr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

65

6. BELLEK YNETM
Bilgisayar sistemini oluturan temel birimlerden biride bellektir. Programlarn ve ilenen verilerin bellekte yer alacaklar konumlarn belirlenmesi, dzenlenmesi, izlenmesi gereken alanlarn salanmas, bu alanlarn dna tamalarn denetlenmesi gibi ilevler bellek ynetimi kapsamndadr. Bellek, Ana ve kincil bellek olmak zere ikiye ayrlr. Ana bellek; ayn zamanda aktif bellek, yar iletken bellek, RAM bellek adlaryla da anlr. Programlarn ve verilerin ilem aamasnda yer ald, ana ilem biriminin de dorudan eriebildii bellektir. Ana bellek bir szck dizisi eklindedir. Her szcn bir adresi ve bir de ierii vardr. Ana bellekte bir szcn adresi, bu szce eriimde, adres yoluna yklenen konum deeridir. Bu deer, ilgili szck ieriinin ana bellekte bulunduu fiziksel konumu gsterdiinden fiziksel adres olarak nitelenir. Ana bellek szckleri, komut kodlar ile bu komutlarn ilenenlerini tutan elerdir. Yazlan kaynak programlar ierisinde ilenenler, kullanclarn zgrce belirledikleri simgesel adlarla anlrlar.

ekil: Fiziksel ve Mantksal adres uzaylar 6.1. Tek Programl ve ok Programl Sistemlerde Bellek Ynetimi En basit bellek ynetim sistemi, her bir zaman dilimi iinde bellekte bir grev bulunmas ve tm bellek alann bu grevin kullanmasdr. Bu sistemlerde bellek, iletim sistemi ve tek grev arasnda paylalr. Kullancnn terminalden ald komut ile, iletim
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

66

sistemi gereken program bellee ykler. Grev almasn bitirdikten sonra, sistemin gnderdii mesajla kullanc yeni grevi bellee ykler.

Srcler (RAM) Kullanc Program


.Sis.(RAM)

Fakat, bilgisayarn verimli almas iin bellekte ayn zaman diliminde birden fazla grevin almas gerekir. Bunun en basit yolu bellein n sayda blmlere ayrlmasdr. Sistem altrlmadan nce blmler (blmn snrlar) kaydedilir. Grevler geldii zaman blmn boyutuna uygun kuyrua yerletirilir.

blm 4 blm 3 blm 2 blm 1


letim Sis.

Bu sistemler OS 360 iletim sisteminde uygulanmtr ve bu mimariye MFT (Multi programming Disk Fixed Number of Task) denir. 6.2. Bo Bellek Alanlarnn Aranmas Bo bellek alanlarnn aranmas iin genelde 3 yntem kullanlr: 1.kili haritalama (Bit-map) 2.Balal Liste 3.Komu Sistemler (Buddy System) 1. kili Haritalama Yntemi :Bu yntemde bellek mantksal olarak sabit boyutlu kk birimlere blnr. Blmn boyutu birka szck uzunluundan, birka KBa kadar olabilir.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

67

Bu blmlerin bo yada dolu olmas hakknda bilgiler ikili haritada gsterilir. Haritann her biti bir bellek blmnn durumunu gsterir. Blm bosa bit = 0, doluysa bit = 1 deerini alr. kili haritalarda, gelen grev k boyutlu ise, ardk k saysda 0 (bo) bellek yerinin aranmas gerekir. Bu ise, ikili haritalamann yava olmasna yol kullanlmasna neden olur. A B C D E atndan pratikte az

11111000 11111111 10011111 11110001

Bellek

blmlerinin

byk

boyutlandrlmas,

haritann

klmesine, bununla birlikte bellek alannn verimsiz kullanmna neden olur.Blmler kk boyutlu alnrsa, harita byr ve arama ilemlerinin sresi uzar.

.......................

2. Balal Liste Yntemi : Bo ve dolu bellek alanlar iin yerletikleri adreslerle birlikte balal liste oluturulur. P 0 5 H 5 3 P 8 6 P 14 4

H 14 4

P 13 2

P 19 3

P 25 3

NOT : P =Dolu, H = Bo bellek alann gstermektedir.

Bellek yneticisi grev iin gereken bellek alannn boyutunu bildii takdirde, bu yntemde sadece bu boyuta uygun bellek yeri bulmak amalanr. Uygun bellek yeri bulmak iin birka algoritma vardr: 1. lk uygun yer bulma (first fit) : Bellek yneticisi listeyi tarar ve yeterli boyutta bo yer bulunan ilk yere grevi yerletirir. Bu algoritma ok hzldr. nk, arama en ksa yolla gerekletirilir. Ancak en uygun olan bellee deil, ilk rast gelinen uygun bellek alanna yerleim yaplr. 2. En uygun yer bulma (best fit) : Grevin boyutuna en yakn olan bo yer aranr. En verimli algoritmadr. Ancak yavatr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

68

3. Hzl uygun yer bulma (quick fit) : Bu algoritmada, ok sk kullanlan bellek alan boyutlar, ayrca listelenir. Bellee yerletirilecek grev iin uygun yer bu yeni listede aranr. 3. Komu Sistemlerde Bellek Ynetimi: Komu sistem ynetiminde bellek yneticisi 1,2,4,.......,2k boyutlu boluklar listesi oluturur. rnein 1 MBlk bellek alan iin 21 liste oluturulacaktr. bellek boluk durumu A (70K) B (35K) C (80K) A B 64 C 128 512 128 A 128 256 384 256 512 640 768 512 896 1 MB/bo yer

Balang durumunda tm bellek botur ve yalnz 1MBlk listede 1MBlk bo yer bulunmaktadr. 70 Klk A grevi bellee aktarldnda bellek yneticisi bu grev iin 128Klk bo yer ayracaktr. yle bir liste henz oluturulmadndan ardk olarak 256K ve 512Klk listeler aranacak ancak onlarda yoktur. Bu sebeple 1MBlk alann 512, 256 ve 128lik alanlara blecek ve A grevi ilk bo 128 Klk alana yerleecek. B grevi iinde 64Klk yer gerekir. 64Klk listemiz olmadndan 128Klk blok ikiye blnr. lk 64K lk yere B grevi yerletirilir. Benzer ekilde C grevi yerletirilir.

A geri gnd. D (60) B geri gnd. D geri gnd. C geri gnd.

128 128 128 256

B B B

64 D D

C C C C 1 MB

128 128 128 128

512 512 512 512

4 3 4 3 1

Grev bellekten ktnda, kalan yerler birleip 2k alan oluturuyorsa, bellek alanlar birletirilir. Ynetim avantaj, sadece 2k lk listeler aranmasdr. Buda hzl almasna neden
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

69

olur. Ancak bellek verimsiz kullanlr. Her grev iin ayrlan alanlarda bo yerler oluabilir. Buna i paralanma (integral fragmentation) denir. 6.3. Bellein Paralanma Sorunu Ve Bititirme lemi Bellek paralanmas, bitiken alanlarn grevlere atanan blmlerle, zaman iinde ufalanmas olarak bilinir. Bu sorun, kullanlan blmler arasna skm, iletim iin bekleyen grevlerin gereksinimini karlayamayan bo alanlarn varlyla ortaya kar. Bunun sonucu, bellekteki bo alanlarn toplam, gereksenen salar karlyor olmasna karn yeni grevlere yer salayamaz. Grevlere gereksedikleri bellein tmyle ve bitiken bir btn olarak, iletime sunu aamasnda salanmas ve salanan bu alanlarn konumlarnn iletim srasnda deitirilmesi paralanma sorununun temel nedenleridir. Blm ii yararlanlamayan bo alanlar i paralanma, blmler arasnda kalan bo alanlar ise d paralanma kapsamnda dnlr.

ekil: Ana Bellein Paralanmas Bititirme; tm bellek alanna dalm durumdaki blmleri, yerlerini deitirerek yan yana yerletirme ve bu yolla blmler arasnda kalan bo alanlar da yan yana getirerek tek bir bitiken bo alan oluturma ilemine denir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

70

lgili olduu grevin iletimi srerken bir blmn yerinin deitirilmesi kolayca ve hibir nlem alnmakszn yaplabilen bir ilem deildir.

ekil: Bititirme lemi 6.4. Diske Tama (Swapping - Takas) Zaman paylaml sistemlerde diskte yerleen grevler dizisi gerektiin ana bellee arlr. Grevlerin disk ile ana bellek arasnda dei-tokuuna takas (swap) denir. Kimi durumlarda bititirme ilemleri de bellekte gerekli byklkte bo bitiken alan oluturmak iin yeterli olamaz. Sisteme sunulan i, o an sistemde iletimde olan ilemden daha ncelikli ise, grev tanmlarnn yaplarak hemen iletime alnmas gerektirir. Kimi zaman ncelik grevlerin, iletimleri sonradan tamamlamak zere geici olarak diske tanmas bo bellek alan yaratmak iin bavurulan bir yol olabilir. Bu yolla alan bo bellek alanlar yeni grevlerin tanmlanabilmesine ve zellikli ilerin iletimlerinin bir an nce balatlabilmesine olanak salar. letimi tamamlanmam bir grevin, daha ncelikli grevlere ana bellekte yer amak zere, geici olarak diskte, bu amala ngrlen alanlara tanmasna diske tama olay olarak nitelendirilir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

71

ekil: Diske tama ve bellekte yer bekler kuyruu Takas MFT sisteminde de uygulanabilir, ama onun deiken blml ok programlama da (MVT) kullanm daha verimlidir.

C B A .S. A A .S. B B A .S. C

C B

C B D

C E

D .S. B

D .S. E

.S. A

.S. D

Deiken programlama (MVT) sisteminde, bellee yazlan grevler arasnda bo alanlar olabilir ve bellek sklatrlmas yntemiyle bu bo alanlar birletirilir. MVT sisteminde greve yer ayrlrken bu grevin yeni verilerle genileyebilecei ve byyebilecei gz nne alnr. 6.5. Sayfal Bellek Ynetimi Sayfal bellek ynetiminde grevlerin mantksal adres evrenleri, birbirini izleyen, eit uzunlukta paralardan oluur. Bu paralar program sayfas olarak adlandrlr. Ana bellei oluturduu varsaylan sayfalar ise bellek sayfalar olarak adlandrlr

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

72

Sayfal bellek ynetiminde, grevlerin her program sayfasna bir bellek sayfas atanr. Mantksal adres evreni ierisinde bitiken olarak yer alan program sayfalarnn ana bellekteki karlklarnn bitiken olma koulu aranmaz. Hangi program sayfasnn, hangi sayfasnda bulunduunu belirleyebilmek amacyla, her grev iin sayfa tanm izelgesi tutulur. Sayfa tanm izelgeleri, ilgili grevin program sayfalarnn yer ald bellek sayfas giri adreslerini tutarlar. Her grev iin ayr ayr tutulan bu sayfa tanm izelgelerinin yan sra, bir de, tm ana bellek iin bellek tanm izelgesi tutulur. Bu izelge iinde hangi bellek sayfasnn dolu, hangisinin bo olduu bilgisi bulunur. Grevler iletime alnaca zaman nce bu izelge taranr. Grevin gereksedii sayda bo bellek sayfas belirlenir. Grevin sayfa tanm izelgesi oluturularak ierii, belirlenen bu bo sayfa giri adresleriyle gncellenir. Bellek tanm izelgesinde, kullanlan fiziksel sayfalar dolu olarak iaretlenir.

ekil: Grev sayfa ve bellek tanm izelgeleri

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

73

ekil: Sayfal bellek ynetimi adresleme mant

ekil: Sayfa tanm izelge yazmacnn kullanm ok hzl eriime olanak veren bellek birimleri n bellek (cache) olarak adlandrlr. Sayfa tanm izelgesinin tm, yine sradan bellek kesiminde tutulurken n bellein, son kullanlan birka sayfa balang adresini iermesiyle yetinilir. Ancak bu durumda adresleme srecinin banda eriilen sayfa balang adresinin n bellekte bulunulup bulunmadnn snanmas; sayfa balang adresi n bellekte deilse, n bellee tanmasnn salanmas gereklidir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

74

ekil: Sayfal bellek ynetimi ve n bellek kullanm Bu hareketle, sayfal bellek ynetiminin uyguland sistemlerde, bellee eriimi bu snamayla ayn anda gerekletirebilen associative (ilikisel) tr bellekler kullanlr. Bu tr belleklerde, szcklere adresleri ile erimek yerine dorudan ierik deerleri ile eriilir. 6.6. Kesimli Bellek Ynetimi Grevlere atanacak bitiken bellek paralarn kltmenin bir yolu da program adres evrelerini kesimlere ayrmaktr. Kesimler, program iinde, ierikleri ynnden mantksal btnl bulunan paralara verilen addr. Programlar oluturan bamsz kesimlerin birbirleriyle bitiken olarak dnlmeleri de gerekmez. Kesimlerden oluan program iindeki adresler, sayfalama yntemine benzer biimde kesim kimlii ve kesim ii adres olarak iki bileenden oluur.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

75

ekil: Kesimler ve ana bellekte yer aldklar konumlar Kesimleme (Segmentation-Blmleme): Sayfalama, bellein verimli kullanlmasn

salamakta idi. Bellein verimli kullanlmas bellek alanlarnn ok kullanlmas, bo alan braklmamasdr. Adresleme yaplarak bo alanlar bulunabilir. Bunlar programn yapsna (ieriine) bal olmayan (adreslemeler) ilemlerdir. Kesimleme ise, programn ieriine baldr. Ynlar, ktkler, global deikenler, yerel deikenler gibi programda mantksal blmler mevcuttur. Programla verinin ayn anlamda kullanlmas burada mantksal adan iyi deildir. Ortak kullanlan veriler iin ktkler oluturulur. B program A programnn iine eriebilir (ayn kt kullanmak iin). Bu fazla hacim gerektirir, program byr, verim der. Sayfalama, bellein mantksal yapsna bal olmadan paralamadr. Kesimleme ise programn mantna uygun bellein paralanmasdr. Bellek bir boyutlu bir dizidir. Kesimleme ileminde bellek iki boyutlu bir matris gibi kullanlr. rnein assemblerda kod, segment ve data segment vardr. Tm segmentler iin balang adresleri 0 (sfr) nc adrestir. Bu mantksaldr. Fiziksel adreste her bir kesimin taban adresi vardr.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

76

Kesimlerde sayfalara blnr. Kesimin adresi + Sayfann adresi + Sayfa iinde kaymalar ou programlar veya problemler bellekte birka ayr ayr alanlarn olmasn gerektirir. rnein derleme sresince aadaki tablolar oluturulabilir: Deikenlerin adlar ve zellikleri tablosu Sabitler tablosu Problem analizi iin gereken zmler arac yordamlarn (prosedrlerin) arlmas iin yn

Deikenler tablosu Sabitler tablosu zm aac yn zm aac : if a3 > 5 (Burada kurallar vardr. if den sonra bo braklamaz, then , if den nce gelmez gibi)

BELLEK ALANI

Derleyici nce i harfini okur. Daha sonra f yi okur. if adl bir kelimenin bulunup bulunmadna bakar. Sonra boluk konulur. Bu ekilde cmleler zmlenerek aalar oluturulur. if i f a
anahtar kelime

> a3 3 5

a3 gibi deikenler bulunduka deikenler tablosuna eklenir. 5 gibi sabitler bulunduka sabitler tablosuna eklenir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

77

Derleme sresince bu tablolar geniler, aa da byr. Yn, dierlerinden farkl olarak dolar ve boalr. Her blm iin ayr bir yer ayrlr. Bu yer dolarsa tablolar birbiri iersine yerletirilebilir (tablolar pointerlarla gsterilir). Buda karmakla neden olur. Bir boyutlu adres kullanmann byle bir dezavantaj vardr. bunu zmek iin bellek iki boyutlu adreslenmelidir. Burada bellekte her bir tablo iin farkl alanlar tahsis edilir. Her birinin balang adresi vardr. Bylece gerektiinde yalnz uygun kesimler kullanlr. Dier kesimlerle birbirine karma olmaz. nk hepsinin balangc 0 (sfr) dr. Baktmz tablolar iin bellek alan yeterli olmazsa bu durumda bir tablo dierinin zerini rtm olacaktr. Problemin kesin zm yolu bellein bamsz adres alanlar kesimlerine blnmesidir. Her kesim 0. adresten balayarak belli birimlere kadar ardk ve dorusal alanlar ierir. Kesimin boyutu programn almas sresince deiebilir. Kesimler ok byk olduu iin onlarn dolma veya tama olasl ok dktr. Kesimlemeyi gerekletirmek iin program iki boyutlu adresleme kullanr. Mantksal adres = kesim no + kesim ierisinde kayma NOT : Mantksal adresler ayn olabilir, 0 dan balar. Bunlar fiziki olarak farkl adreslere karlk gelir. rnek : Plaka no verilirken ADANA 1 2 100 ADIYAMAN

100 Arabadan fazla olduunda dierlerini kaydrmak gerekir.

0 dan balayp ardk verilse binlerce oluur. Bunlar iinden aramak zordur. Fakat iki yarar vardr: a. Daha kolay bulma b. Birbirine tamay nleme Her kesim mantksal bir varlktr. Kesim dahilinde prosedrler, diziler, ynlar, deikenler bulunabilir ama genelde kesim eitli verilerden oluamaz.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

78

Kesimlerin kullanmnda bir stnlk kesim dahilinde yordamlarn altrlmas kolaylar. rnein n kesimindeki yordam genellenirse bu deime dierlerini etkilemeyecek. Kesimleme ortak yordamlar kullanmn da kolaylatrr. Buna rnek olarak ktphaneleri gstermek mmkndr. rnein ortak bir grafik kullanlr. Her bir kesim bu adresi bilir ve gerektiinde oraya eriebilirler. Kesimlemedeki veri trleri farkl olduundan onlar iin farkl olma mekanizmalar kullanlr. rnein yordam ieren kesim yalnz altrlabilir, say deerleri ieren kesim okunup gncellenebilir ama altrlamaz. Byle mekanizmann mevcutluu program hatalarnn bulunmasn (analizini) kolaylatrr. Sayfalamann amac, yeterli bellek alan bulunmadnda byk boyutlu program adresleri elde etmek iindir. Sayfalarn boyutlar eittir. Kesimlemenin amac program ve verilerin mantksal bamsz adresler alanlarna paralanmas ve onlarn ortaklaa kullanmn salamaktr. Modern iletim sistemlerin de sayfal kesimleme yntemi kullanlr. Yani her bir adres; kesim adresi, kesim dahilinde sayfa adresi ve sayfa iinde kaymann toplamndan oluur (Sayfann adresi; kesimin adresi, kesim no ve kaymadan adres oluur). (Kesimleme 16 * K = 16*210 , 16*210 kesim bulunur.) Her kesim 232 (1 milyar) bitlik szck ierebilir. (Bu 386 lardayd. Pentiumlar da artk szck uzunluu 264 kullanlr).

Kesim tablosu ; sayfalama taban ad tab. adresi zellikleri ............ 1000 R ............ 500 RW 2000 fiziki adres

Kesimlemede ; her kesim fiziki adrese dntrlr. Sayfal kesimlemede ; her kesim iinde sayfalama yaplabilir. Buradan fiziki adrese eriim yaplr. Sayfal ve Kesimli bellek ynetimleri arasndaki farklar:

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

79

o Programlarn mantksal adres evrenleri; sayfal bellek ynetiminde eit uzunlukta sayfalara, kesimli bellek ynetiminde ise deiik uzunlukta, mantksal btnl taban alan kesimlere ayrlr. o Kesimli bellek ynetiminde, mantksal adreslerden fiziksel adreslere gei, kullanlan adres dntrme yntemi ne olursa olsun, kesim bellek konumu ilikisini tutan kesim tanm izelgeleri araclyla gerekletirilir. o Kesim tanm izelgesinde, kesim balang adreslerinin yan sra kesim boyu bilgisine de yer verilir. Bu bilgi, ilgili kesim iletilirken, hatal alma sonucu oluabilecek kesimden tamalar denetlemek zere kullanlr.

ekil: Kesimli bellek ynetiminde bellek koruma yaps 6.7. Sanal Bellek (Virtual Memory : Grntl Bellek) Yaps Sanal bellek, programlarn ve verilerin toplam boyutunun onlarn eriebilecei ve kullanabilecei fiziksel bellek alanndan byk olabilmesi dncesine dayanr. Sanal bellek ok programl sistemlerde, verimli kullanlabilir. Ana bellek ile disk arasnda yer deiim ilemi yapldnda iletim sistemi baka grevleri altrabilir. Bir ok sanal bellek sistemleri sayfalama yntemi kullanr. Programlarn eriebildii veya rettii adresler kmesi

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

80

sanal adresler uzayn oluturur. Bellek yneticisinin grevi bu sanal adresleri fiziki adreslere evirmektir.

AIB BYB

bellek

Disk denetleyici

Not: BYB: Bellek Ynetim Birimi

Yukardaki blmlerde incelenen bellek yntemlerinin uyguland sistemlerde, grevlerin mantksal adres evrenlerinin boyu ana bellein fiziksel sas ile snrl kalr. Sanal bellek ynetiminin uyguland sistemlerde, iletime alnan grevlere, tm adres evrenlerini karlayacak sada ana bellek alan yerine disk alan atanr. Grev iletimi balatlrken ilk kesimin yada ilk sayfalarn ana bellekte bulunmasyla yetinilir. Sayfal Sanal Bellek Ynetimi : Sayfal bellek ynetiminde programlar, derleyiciler tarafndan eit uzunlukta sayfalar biiminde hazrlanrlar. Sanal bellek dzeni erevesinde hazrlanan bu programlarn ana bellee yklenmeye hazr kopyalar, tmyle diskte oluturulur. Diskte yer alan sayfalardan bir kesimi ana bellee yklenerek iletim balatlr. Sanal bellek dzeninde program sayfalar diskte de saklandndan iletime alnan her grev iin, sayfa tanm izelgesi gibi, bir de ktk tanm izelgesi tutulur. Ktk tanm izelgeleri program sayfalarnn diskte sakland tutanak adreslerini ierir.

ekil: Sayfal sanal bellek yaps ve ktk tanm izelgesi


brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

81

ekil: Sayfal sanal bellek ynetimi Adres dntrme srecinin ortasnda, denetimin donanmdan yazlma (bellek yneticisine) aktarlmasndan sonra gereklemesi gereken ilemler unlardr: Bellekte greve atanacak bo bir sayfa aramak Bellekte kullanlabilir bo bir sayfa yoksa, yer amak zere ana bellekten karlacak sayfann seimini yapmak Ana bellekten karlacak sayfada gnleme yaplmsa(diskteki kopyasndan farkl ise) sayfay diskteki yerine yazmak. Eriilmek istenen sayfay ana bellee yklemek. Yarda kesilen komutun iletimini yeniden balatmak. Bellekte bulunmayan bir sayfaya eriim sz konusu olduunda, eksik sayfa uyars ile bellek yneticisi ana ilem birimine anahtarlanr. lgili greve atanacak bo bir sayfa bulunup bulunmad snanr. Bo bir sayfa bulunabilirse bu sayfann balang adresi, grevin sayfa tanm izelgesinde, eriilen mantksal sayfa satrna ilenir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

82

ekil: Sayfal sanal bellek ynetiminde adres dntrme sreci Sayfa karma Algoritmalar: Eksik sayfa uyars sonrasnda, eriilmek istenen sayfann tanaca bo bir sayfa bulunamamas durumunda bellekten karlacak sayfann seimi gndeme gelir. Bu seim deiik algoritmalara dayal olarak yrtlr. Bunlar; lk giren sayfay karma (FIFO: First Input Fisrt Output) Yakn gemite kullanlmam sayfay karma (NRU:Not Recently Used) kinci admda sayfa karma Saat yntemiyle sayfa yerletirme En erken eriilmi sayfay karma (Least Recently Used LRU) En ge eriilecek sayfay karma (Optimal)

1.lk Giren Sayfay karma Algoritmas : Bu algoritmann temelinde bellee birinci sunulmu sayfann gelecekte eriim olaslnn dk olmas varsaymna dayanr. Sayfalar FIFO kuyruunu oluturur. Yeni bir sayfann bellee sunulmas gerektiinde kuyruun bandaki sayfa seilir. Kuyruk her eriilen sayfa deitiinde gncellenir. Algoritmas basit
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

83

ve hzldr. Ancak bellee ilk girmi sayfann gelecekte kullanm olaslnn dk olaca varsaym doru deildir. yle ki, grevin en sk kullanlan sayfalar da bellee erken sunulmu olabilir. Bu bakmdan sk sk eriilen sayfalarn da bellekten karlma olasl ykselir ve yer deimelerin (takas:swapping) says artar.

ekil : lk giren sayfay karma algoritmasna gre sayfa karm 2. Yakn Gemite Kullanlmam Sayfay karma Algoritmas : Bu algoritmaya gre tm sayfalara belirteler (gstericiler) verilir ve bellek yneticisi belirli bir aralkla (rn 10 snde bir) belirteleri sfrlyor. Bellekten bir sayfa karmak gerektiinde ilk giren sayfa dorudan karlmyor. karmadan nce sayfann eriim belirteci kontrol edilir. Eriim belirteci 1 bulunan sayfa son sfrlamadan sonra kullanlm yada eriilmi sayfa saylr ve kullanlmakta olan bir sayfa gibi bellekte kalr. Algoritma listedeki bir sonraki sayfay kontrol eder ve bu sre belirteci 0 bulunan sayfa bulunana kadar devam ettirilir. 3. kinci Admda Sayfa karma Algoritmas : NRU veya FIFO algoritmasnn zel bir trdr. Bu algoritmaya gre her sayfa iin R ilave biti kullanlr. Eer R=0 ise sayfa hem eskidir, hem de kullanlmayan bir sayfadr. Bu bakmdan sz konusu sayfa karlabilir. R=1 ise uygun sayfa sayfalar listesinin sonuna gnderilir ve onun bellee yklenme zaman kuyruun sonuna gnderildii zaman hesaplanr. karlacak sayfann aranmas bu ekilde devam ettirilir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

84

en erken yklenene sayfa

en son yklenen sayfa

0 Bellekte 6 tane yer olsun R biti balangta 0dr.


A

5
B

7
C

8
D

9
E

13
F

Sayfalar FIFO ardkl ile sralanr. rnein, F sayfas kullanldktan sonra, 20.saniyede sayfa hatas olutuunu kabul edelim, bu durumda FIFO ynetimine gre ilk giren sayfa olan A sayfas karlmaldr. Eer A nn R biti 0 ise A sayfas dorudan bellekten karlr. Eer R=1 ise A sayfas listenin sonuna eklenir ve onun ykleme zaman 20 saniye olarak gsterilir ve R=0 yaplr. Arama B sayfas iin devam ettirilir. Eer tm sayfalar kontrol ettirilirse 2. admda FIFO sras uygulanr. Yani, tm sayfalar eriim biti R=1 olduunu kabul edelim. Bu halde sayfalar ardk olarak listenin sonuna eklenecek ve 2. admda en eski olan sayfa karlacaktr. 4. Saat Yntemiyle Sayfa Yerletirme Algoritmas : 2.adm algoritmasnn yetersizlii sayfalarn liste boyunca hareket etmesinden kaynaklanmaktadr. Bu ilave zaman kaybna neden olur. Daha iyi yaklam, dairesel dngl liste eklinde (saat biiminde) yaplanmadr.

A F F E D B C

Saatin oku en eski sayfay gsterir. Sayfa hatas olutuunda okun gsterdii sayfaya baklr. Eer R=0 ise sayfa karlr. Ok bir kademe ileri dner. R=1 ise okun gsterdii kademe 0lanr ve ok sonraki sayfay gsterir. Bu ilem R=0 olan sayfa bulunana kadar devam ettirilir. 5. En Erken Eriilmi Sayfay karma Algoritmas: Bu algoritmada temel olarak sayfalarn bellee yklenme zaman deil onlara eriilme zaman nemlidir. Algoritmann temelinde son zaman diliminde kullanlmam bir sayfann gelecekte de kullanlma olaslnn dk olaca varsaymna dayanr. Algoritmaya gre sayfa karma gerektiinde,
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

85

o ana kadar en erken eriilmi sayfa karlr. Algoritma ilk giren sayfay kartma algoritmasna gre daha iyi sonu verir ama daha karmaktr. En erken eriilmi sayfay belirlemek iin bir saya kullanlr. Bellee her eriimde saya bir arttrlr. Sayacn ierii sayfa tablosunda saklanr. Bellekten sayfa kartmak gerektiinde saya deeri en kk olan sayfa seilir. Her bellek eriiminde sayalarda gncelleme yapldndan algoritmann verimlilii hz asndan der. Algoritma zel donanmla gerekletirilir. Algoritmann alma prensibi yledir:

ekil: En erken eriilmi sayfay karma algoritmasna gre sayfa karma 6. En Ge Eriilecek Sayfay karma Algoritmas: Bu algoritmaya gre yakn gelecekte kullanlmayacak sayfalar sayfa tablosundan karlr. rn: Eer bir sayfa 800 komuttan, dieri ise 600 komuttan sonra eriilecekse sayfa karmak gerektiinde algoritmaya gre 1 sayfa (800 komuttan sonra alacak olan) karlacaktr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

86

ekil: En ge eriilecek sayfay karma algoritmasna gre bellekten sayfa karma

Sanal Bellek Kullanm: Fiziksel belleimizin yetersiz kald durumlarda sabit diskimizin belli bir parasn fiziksel belleimizin bir parasym gibi dnerek oraya adresleme yapabilmemize olanak salayan hafza birimidir. Fiziksel hafza kullanmnda program bellee smazsa bunu paralara ayrp diske tama (swap) ilemini yapmamz gerekir, fakat bu programn almasnda bir dezavantajdr, nk programn neresinin sk kullanlaca nceden bilinemez ve bu sk kullanmaktan kaynaklanan srekli swap ilemleri meydana gelebilir, bu da zaman kayb olur, bu zaman kaybn nlemek iin sanal hafza gelitirilmitir. Bellei paralara ayrmak, zldnden daha ok probleme sebep olmaktadr. Grevlerin ihtiyalarna gre bellei ayarlamak yerine srecin bo bellei nasl kullanaca sorusunu sorabiliriz. Herhangi bir konfigrasyon iin uyumlu bir grev oluturabilir miyiz? Mesela bo bellek alan bitiik olmayan blgelerde bulunsun, grevleri birbirinden ayr kodlar gibi grp bitiik olmayan yerlere yerletirebilir miyiz? Gerekte yapabiliriz ve ok kullancl sistemde yaygn olarak kullanlmaktadr, grev kodu page-sayfa ad verilen birbirinden ayr blmlere ayrlr, ayn ekilde bellei de frame-ereve ad verilen birimlere bleriz. Bir ereve,sayfa ile ayn byklkte bellein blmleridir. Grevi bellee yerletirmek iin sayfa leri uygun ereve lere yerletiririz.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

87

rnek: letim sistemi bellei 20 ereve ye blm olsun ve aadaki sreler sisteme gelsin:

a) Bellek grnts nasl olur? Eer sistem grevleri ID lerine gre bellee yerletirirse aadaki bellek grnts ortaya kar:

ekil 1. Grev A-F iin bellek grn ekil 2. A,B,D ve F iin bellek grnm (C ve E bitmi) b) Grevlerin ileyii nasl? imdi unlarn sra ile olduunu kabul edelim: C biter, E biter, G adnda 3 sayfa lk yeni bir sre sisteme girer.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

88

Eer iletim sistemi bellek idaresi iin deiken blmeler kullanyorsa G iini bellee yerletiremez. Kullanlmayan 3 ereve olduu iin G kodunu 3 sayfa ya blmek suretiyle bellekteki bo alanlara yerletirebilir. Yukardaki ekilde sonular grlmektedir. c) Grevleri sayfa lara blersek bellei nasl koruyacaz? Blmelerde, CPU blmeyi snrlayan bellek referanslarn registera yazyor idi, bu grevler birbirini takip eden ereveler de iseler alrlar. d) Blnm sre nasl alr? Bilindii gibi, CPU komutlar birbirini takip eden konumlardan alr, eer byle deilse CPU bu komutlar nasl bulur? Mesela G alyor ve ereve-13 deki son komuttan sonra CPU 14 deki ilk komuta m devam eder? Dinamik zaman paylaml ortamda verilen zaman diliminde hangi bellek erevenin kullanlabilir olduunun belirlenmesine imkn yoktur. Grev bellee girdii zaman almaya hazrlanr. Bu hazrlklardan bir tanesi de grevin sonuta bulunaca yer ile bellek referansnn uyumlu hale gelmesidir. Ksaca, grev uygun bellek buluncaya kadar almaya hazrlanamaz ayn zamanda sistemde grev almaya hazr olmadan bellek ayrmaz. Grevlerin bitiik olmayan bellek blgelerinde yerletirilmi olmasna ramen kullanc bu ayarlardan habersizdir. Donanm ve yazlm kullancy kandrr ve sanal hafzann gerekte var olduuna inandrr. Bu durum aadaki ekilde gsterilmitir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

89

e) ereve ve Sayfa ne kadar byklkte olmaldr? ereve kk olursa say artar takip zorlar ve tablodaki eleman says ok olur, byk olursa tablo klr ama israf artar. Pratikte ereve bykl 512 ile 4096 Byte arasndadr. f) Adres Dnm (Sanaldan Geree) Nasl? Gerek ve sanal bellek dankln zmenin bir yolu sayfa tablo dr. Bu tablo sanal adresi gerek adrese evirmek iin kullanlr. Dinamik adres dnm program alrken komut adresi alannn korunmasn tanmlar. Bunun komut evrimi zamannda yaplmas byk avantaj salar. Kodu bellein neresinde bulunursa bulunsun alacak ekilde oluturur. Bu yazlmclar iin gl bir avantajdr. Programn dzgn almas iin grevi zel bir yere ykleme endiesine gerek yoktur. Gerekte grev sonunda yerleecei bellek konumundan bamsz hale gelir. Hatrlanaca gibi grev almaya hazr hale gelince hangi konumun elverili olaca tahmine imkan yoktur. Dier bir avantaj ise sisteme kodu deitirmeden konumunu deitirme esneklii verir. imdi sayfa tablosunu ve dinamik adres dntrme mekanizmasn inceleyelim. Tipik makine dili komut formatn hatrlayarak aadaki ekilde direk adresleme rnei gsterilmitir. OP Code Register Bellek adresi

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

90

Bellek adresinin iki bileeni vardr: a sayfa numaras b sayfa zerindeki relatif konumu (offset) rnein bellek adresi 32 bit uzunluunda olsun ve ereve bykl de 512 byte uzunluunda olsun (bu grev sayfasnda 512 byte uzunluunda olduu anlamna gelir). Aadaki ekilde bellek adresi gsterilmitir.

ekil : 32 bit iin bellek adresi g) Sayfa Tablosu nasl iler? rnein; Kullanc sanal sayfalarda 80-84 e kadar yerde bir grev oluturdu. Diyelim ki grev CPU kontroln eline geirdi, grev 91,99,104,123,128 erevelerine oturur. Grev CPU kontroln eline geirmeden nce iletim sistemi sayfa tablosu iindeki 80 den 84 e kadar girileri ereve numaralarna ynlendirir. Greve gre komutlar ve veriler 80-84 sayfalar arasndadr. Diyelim ki ilk komut 80. sayfada ve 0 offset de olsun grev almaya balad zaman program sayc bu adresi ierir. Komutu alma ilemi srasnda 80 deeri high order adres bitinde olacaktr. Fakat 80 gerekte sayfa tablosunda bir girii referans gsterir. CPU bu sayfa tablosunda bulunan bu giriteki deeri ulalacak ereveye karar vermek iin kullanr bu durumda 91. sayfadaki 0 offsetteki komutu alr (bu 80. giriin ieriidir). Sonra komut zlr ve altrlr. Verilen adres sayfa 84. de offset 73 olsun, bu sanal adrestir CPU bunu 84. girile deitirir komut gerekte sayfa 128. de offset 73. dedir. Eer ilem dallanmazsa bir sonraki komut sayfa 80 de ve offsete 1. dedir. Dinamik adresleme yoluyla CPU gerek komutu sayfa 91. de offset 1. den alr. 80-81 de bulunan komutlar gerekte 91 ve 99. erevelerde bulunmaktadr. Bylelikle dinamik adres dnm takip eden referansta ne grnrse ora gre deimektedir. Tabi ki bu sayfa tablo elemesi btn sistemlerde ayn deildir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

91

ekil: Sanal, gerek bellekler ve sayfa tablosu

6.8.likisel Bellek (Associative Memory) Sayfa tablolarnn bellekte saklanmas ilemcinin verimliliinin aa dmesine neden olur. Bunu aradan kararak, ilemcinin hzn ykseltmek iin bellek ynetimine kk bir donanm eklenir ve bu donanm sayfa tablosu kullanarak sanal adresi fiziki adrese dntrr. Bu bellek ilikisel bellek tir. Bu bellein prensibi, programlarn byk ksm az saydaki sayfalara daha ok eriebilsin. likisel Bellek Yaps : Sanal Sayfa 140 20 . . . 129 Gncelleme Biti 1 0 . . . 1 Koruma RW RX . . . R Sayfa erevesi 31 38 . . . 62

Her satr bir sayfa hakkndaki bilgileri ierir. Sayfalarn ierisinde deime gncelleme olumusa bu bit 1dir olmamsa 0dr. Sanal adres bellek ynetim birimine sunulduunda ynetici nce bu adresin ilikisel bellekte olup olmadn kontrol eder ve byle bir adres varsa ve eriim korumas bozulmuyorsa o zaman fiziksel adres doruca ilikisel bellekten alnr. RW RX R X okuma-yazma okuma-altrma sadece okuma altrma
92

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

Sanal sayfa ilikisel bellekte yoksa, bellek ynetimi birimi ilikisel bellekteki satrlardan birini karr ve gereken adresi ana bellekteki sayfa tablosundan ilikisel bellee yerletirir. Bylelikle yeniden gerektiinde bu kez ilikisel bellee eriilerek sonu daha hzl elde edilir. Satr ilikisel bellekten silindikten sonra, gncelleme bitine uygun olarak satrn ierii ana bellee kopyalanr (gncelleme olumusa hibir ey yaplmaz). Bylece o satrn hakkndaki eski bilgiler ana bellekte bulunmaktadr. Bellee eriimin ilikisel bellek tarafndan salanmas oranna baar oran denir. Bu orann yksek olmas verimliliinde yksek olmasn demektir. Genelde ilemcinin verimlilii 3 kstasa baldr: 1. Sayfa tablosuna eriim sresi (hz) 2. likisel bellee eriim sresi 3. Baar oran : kk aralklarla eriilen sayfa saylarna ve ilikisel bellein boyutuna baldr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

93

7. KTK SSTEMLER
Ktk soyut bir kavramdr. Diske Lojik-0,1 ler eklinde yerleir. Kullanm kolaylatrmak iin ktk grnmleri kullanlr. Ktk kullanmnn amac : 1. Program ve veriler zerinde ilemleri kolaylatrmak. 2. Byk hacimde verilerin ana bellee smamas durumunda ktler kullanlr. Dizinler bir aa yaps oluturur. Dizinlerde ktn bir trdr. Tm bilgisayar okumalar iin bilginin kaydedilmesi ve okunmas gerekiyor. Ama bu bilgilerin tmyle ana bellekte tutulmas ve saklanmas ou zaman sebepten gerekletirilemez. 1. Bellek alannn yetersizlii 2. Grev kesildikten veya iini tamamladktan sonra onunla ilgili bilgilerin de ana bellekten silinmesi kayb. 3. Birden fazla grevin ayn zamanda ayn verilere eriiminin salanabilmesidir. Bu problemi zmek iin bilgiler disk ortamna kaydediliyor. Buna ikinci bellek denir. Diske kaydedilmi bu tr bilgi birimlerine ktk denir. Ktkteki bilgiler kalcdr ve grevin oluturulmas veya kesilmesine bal deildir. Ktkler letim Sistemi tarafndan ynetilir. Onlarn yaplandrlmas, adlandrlmas, kullanm, altrlmas letim Sisteminin baarmnn balca konulardr. letim Sisteminin ktklerle ilgili ksm ktk sistemini oluturur. Ktkler soyut mantksal varlk olduundan onlara eriim, ktk adlaryla gerekletirilir. eitli letim Sistemlerinde ktklerin adlandrlmas iin farkl kstlamalar vardr. ou ktkler iki ksml ad destekliyor. Birincisi ktn zel ad, ikinci ksm uzants. Linuxta uzantlarn saysnn snr yoktur. rn : prog_adi.tar.gz Windows da .exe uzantl olamayan dosya altrlamaz. rn : prog_adi.exe Ms-DOS da byk kk harf ayrm yoktur. rn : prog.exe ile PROG.exe ayn
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

94

Unix de byk kk harf ayrm vardr. rn : prog.exe PROG.exe Prog.exe 7.1. Ktk Yaplandrmalar Ktkler eitli ekillerde yaplandrlabilir : 1. Bitler ardkl eklinde yaplanma: Eriim bit ardkl ile yaplr. Bit says ok olduundan eriim kolay deildir. Eski sistemlerde kullanlr. Arama ilemleri zordur ve ok zaman gerektirir. 1.bit ktk Bitler Ardkl 2. Kaytlar ardkl eklinde yaplanma: Genelde kullanlan yapdr. Kayt ve alt seviyeleri bitlerden oluur. Verilere eriim kaytlar zere yaplr. Ktk ise sabit uzunluklu kaytlardan oluur (80-128-132 karakter uzunluk). kayt ktk Kaytlar Ardkl 3. Aa eklinde yaplanma: Bu sistemler, DataBase machine tr sadece verilerle uramak iin yaplr. Ktk, kaytlar aa biiminde yaplanr. Kaytlarn ayn olmayabilir, farkl olabilir. Her kaytta kendi ad veya anahtar ile eriim mmkndr. Bu tr yaplar zel iletim sistemlerinde (veri tabanna ynelik sistemlerde) kullanlr. Kaytlarn yaplanmasnda balca ama, verilmi anahtarla herhangi bir kayta dorudan eriimi salamaktr. A B C farkldrlar.

A1 A2 A3

Aa Yaplanmas

A11 A22 A33


brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

95

Kaytlarn Yaps : Sabit boyutlu ve deiken boyutlu kaytlar vardr. Mantksal kaytlar deiken boyutludur. Her bir kaydn anahtar vardr. Anahtar zerinde sralama yaplr. Eriim bu ekilde salanr. Kayt ad ile eriilemez. Ktk trleri : letim sistemleri, eitli ktk trlerini desteklemektedirler. Bunlar; Kullanc bilgilerini ieren ktkler Ktk sisteminin yapsn ieren ktkler Simge ktkleri (Ardk giri-k aygtlarnda ilem yapmak iin kullanlr. Yazc, alar, terminaller. Bunlar, geici olarak oluturulurlar ve ilem bitikten sonra silinirler). Blok ktkleri (Diskle ilem yapmak iin kullanlr). Ktklere ardk ve rast gele (dorudan) eriim mmkndr. Ardk eriimde gereken veriye ulamak iin 1.den balayarak tm veriler okunmaldr. imdiki sistemlerde her ikisi de kullanlr. Genelde dorudan eriim. Her bir ktn ad ve ierdii bilgilerin yan sra baka zellikleri de vardr. Sistemden sisteme bu zellikler deiebilir. Genel zellikler unlardr. Koruma Parola Kt oluturann ad, zellikleri, oluturulma tarihi Bayraklar (Geici yada kalc ktk, sistem veya kullanc kt olduu, eriim hakknda bilgiler bulunur). Kaytn uzunluu, boyutu Ktn son gncelleme tarihi Ktn imdiki ve maksimum boyutu Ktn okunmas srasnda tm ktk bellee aktarlr (ama ilemi). lem bittikten sonra kapanr ve diske gnderilir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

96

7.2.Ktkler zerinde lemler Ktk diske yerlemi veri topluluudur. Disk bloklarnda yerleir. Bloklara yerleme eitli ekillerde olur. Balal liste, vs. yntemle gerekletirilebilir. 1. Ardk yerleim yntemi : Bu yntemle her bir ktk diskteki ardk bloklarda saklanr. rnein 50K lk bir ktmz varsa ve disk bloklarnn boyutu 1K ise, 50 Blok gerekecektir. Ardk yerleimin iki stnl vardr: 1. altrlmas basittir ve sadedir; ktk bloklarnn yerini belirlemek iin yalnz 1. bloun adresini bilmek yeterlidir. 2. Verimlilik ykseltir; bir ilemde tm ktn okunmas mmkndr. Ktkler iin disk bloklarnn kullanm birka

Disk Kontrol

Hafza

Ardk yerleimin 2 yetersiz yn vardr: 1. Ktk oluturulduu zaman onun maksimum uzunluu (boyutu) ou zaman belli olmuyor. Bu bakmdan ktkler iin ne kadar yer ayrlaca problem oluturur. 2. Disk alannn verimsiz kullanm ile ilgilidir. Bir ktk iin ayrlm fakat u anda bo olan disk alanlar dier ktkler tarafndan kullanlamaz. 2. Balal Liste Yerleimi : Bu yntemde ktkler balal liste oluturan disk bloklarna yerletirilirler. Her bloun 1. kelimesi sonraki bloun gstergesidir. 7 1. blok 4 2 2. blok 7 10 3. blok 2 4. blok 12 4. blok 10 5. blok 12 mantksal bloklar fiziki bloklar

7. blok

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

97

Bu yntemde tm disk bloklar kullanlabilir. Ktklerde, diskin ktkler arasnda datlmasndan dolay disk alan kayb olmuyor. Dizinlerde, 1. disk blounun adresi gsterilir. Dorudan (rastgele) eriim, ardkla oranla yavatr. Burada, bir adresin bulunmas daha kolaydr. 3. ndeksleri kullanan balal liste yerleimi : Bu yntemde her bir disk bloundaki gstergeler bellekte bir indeksler tablosu oluturur. Bu yapy kullanmakla bloklarn ieriine daha kolay eriilir. Rast gele (dorudan) eriim hz yksektir. MS DOS da kullanlr. Balca yetersizlii indeksler tablosunun her zaman (ktn almas sresince) ana bellee yerlemesidir. 0 1 2 3 4 5
indeksin ierii

B 10 11 7
indeksin ieriinin ierii

A Kt 6 , 3 , 11

6 7

3 2 : : 0 0

B Kt
indeksteki yeri

11 12

4. ndeks dmleri (I_node) yntemi : Bu yntemde ktk ve fiziksel bloklar arasndaki balantlar indeks dm denilen tabloda saklanr. Bu tablo ktk bloklarnn zelliklerini ve disk adreslerini ierir. Ktk kk ise, ona ait (onunla balantl) bilgiler tek bir indeks dmnde yerleir. Ktk byk olduunda dmn ieriklerinden birisi dier bir dmn adresini gsterir ve bu yaplanma ktkler iin yeterli sayda adres bloklar oluturulana kadar devam ettirilir. Unix te bu yntem kullanlr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

98

I_node
Disk adresleri zellikler

3 2 : : :
Disk adresi

Disk adresleri

disk adres gstergeleri

Disk adresi

Disk adresleri gstergeleri

7.3.Dizinlerin altrlmas ve Yaps Ktn okunabilmesi iin almas gerekir. Ktk aldktan sonra, ktk yolu adn (eriene kadar gsterilen dizinler) kullanlmakla iletim sistemi dizin ieriklerine eriir. Dizin ieriinde kte uygun disk bloklarn bulmak iin gereken bilgiler var. letim sistemine bal olarak bu bilgi tm ktn disk adresi (ardk yerleimde), 1. bloun numaras (balal liste emasnda) veya indeks dmnn (I_node) numaras olabilir. Tm bu hallerde dizin sisteminin balca fonksiyonu ktn adn, verileri bulmak iin gereken bilgiye dntrmek veya haritalamaktr. Burada nemli problemlerden birisi ktn zelliklerinin saklanma yerinin belirlenmesidir. ou sistemler de bu zellikler dorudan dizin ieriine yazlyor. I_node u destekleyen sistemlerde ise bu zellikler dmlere kaydedilir. MS-DOS ta disk ieriinin yaps :
Ktk ad zellikleri Tarih zaman 1. blok nosu

Her bir dizin byle bir yap oluturur. UNIX te daha basit bir yap vardr :
I-node nosu Ktk ad

UNIX te dizin yaps ok daha basittir. Her dizin ieriinde yalnz ktk ad ve I-node numaras bulunur. Ktn tipi, boyutu, sahibi, tarihi ve disk bloklar hakkndaki bilgiler Inode da saklanr.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

99

7.4. Disk Alannn Ynetimi Ktklerin diske yazlmas iin balca iki yntem vardr. 1.Kt saklamak iin ardk disk alannn kullanm 2.Ktk birka bloa blnerek diske kaydedilmesi Tm ktk sistemleri ktkleri sabit boyutlu disk bloklarna kaydederler. Bloun boyutu genelde 512 bytedan az olamaz. Disk alannn ynetiminde karlalan problemler : 1. Ktklerin yerleimi 2. Bo disk bloklarnn belirlenmesidir. Bunun iin iki yntem kullanlr. a. Bo disk alanlarn iin balal listesi kullanlr ve her blok da bo disk bloklarnn adresleri (numaralar) gsterilir. b. kili haritalama yntemidir. Burada tm disk alan (bloklar) bitler zere haritalanr. Eer blok megulse veya doluysa harita biti 1, bosa 0, (veya tersi olabilir) gsterilir. Not : Disk dolduka bo alanlar azalacandan balal listenin kullanm daha iyidir. kili haritalama sabit boyutludur.

7.5.Ktk Sistemlerinin Gvenlii Disklerdeki kt bloklarn salam bloklarla deitirilmesi iin, donanm ve yazlm zm yollar bulunmaktadr. Donanm ynetiminde kt bloklar listesi oluturulur ve bu bloklar iin bir disk blm (sektr) ayrlr. Denetleyici ilk ie baladnda bu listeye bakar ve kt bloklar, salam bloklarn adresleri ile deitirir. Bylelikle kt bloklara yneltilmi her trl eriim salam bloklara yneltilmi olur. Yazlm ynteminde kullanc veya iletim sistemi kt bloklar ieren bir ktk oluturur. Bu kt bo bloklar listesinden karr veya siler. Kt blok ktne eriim olmad iin problem zlm olur. Gvenliin ykseltilmesinin bir yolu da yedeklemedir. Her bir ktn arivleme biti olur. Balangta bu bit 0 dr. Gncelleme veya eriim durumunda bu bit 1 olur. Bir yedeklemeden dierine kadar gncelleme biti 1 olmusa yedekleme de gncellenir ve bit 0 lanr.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

100

Gvenliin ykseltilmesine bal bir problem de ktklerin kararllnn veya btnlnn korunmasdr. Ktn gncellenmesi zaman hata olumusa, ktk karasz duruma geebilir. Mesela kopyalama srasnda elektrik kesilmesi durumu buna sebep olabilir. Kararsz duruma geme baz bloklarn gncellenmesi bazlarnn ise gncellenmemesi anlamna gelir. Kararll belirlemek iin yardmc programlar vardr. Bu programlarn i prensibi birbirine benzerdir. Kararl kontrol etmek iin ktn her bir blou kontrol edilir. Bu amala her bir blok iin iki tablo oluturulur. Tablolarn ierii saya fonksiyonunu yerine getirir. Balangta her iki sayacn deeri sfrlanr. 1. saya, bloun ka kez gncellendiini, 2. saya ise, bloun bo bloklar listesinde olmasn gsterir. Bloklara eriim zaman (bloklar okunduu zaman) 1. sayacn deeri arttrlr. 1 1. tablo 1 1 2. tablo 0 1 0 2 2 3 4 2 3 4 5 ........................... 5 ........................... 100 100

Bloun gncellenmesi 1 ise bo listede 0 olur. Blok gncellenmi ise bo listede olamaz. Bo listede varsa gncelleme 0 olmaldr. Her ikisi de 0 ise bu blok kaybolmutur. Hata olmutur. kinci tabloda 2 deerinin olmas bu bloklarn balal liste eklinde balandn gsterir. Bir blok birka ktkle kullanlm olur. 0 gncelleme tablosu bo bloklar tablosu 1 0 0 0 1 1 1 2 1 2 0 3 0 3 1 4 ........... 4 .......... 0 1 13 0 13 1 0 1 14 15 14 15

Bu durum kararl durumdur. Yani eer blok kullanmda ise, bo listede yer almamal, bo bloklar listesinde yer alyorsa kullanmda olmamaldr. Blok kullanmda olduunda denetleyici tarafndan bo listeden karlmaldr. Eer kullanma alnrken listeden karlmazsa, bir hata oluursa blok kayb olur. Varsayalm ki 2. blokta her iki tablo iin deer 0dr. Bu bloun kayb anlamna gelir. Sistemi kararl duruma geirmek iin blok bo bloklar listesine aktarlr.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

101

Baka bir halde ayn blok bo bloklar listesinde iki kez gsterilebilir. Diyelim ki 2. tabloda 3. blok iin deer 2 olsun. Bu 3. bloun bo bloklar listesinde iki kez gsterildii anlamna gelir. Bu hal bo bloklarn balal liste biiminde gsterildii zaman oluabilir. zm yolu bo bloklar tablosunun yeniden yaplandrlmasdr. Bir baka durumda, ayn veri blou birka ktk tarafndan kullanlabilir. Bunun bir zm yolu bloun ieriini ktklerden birine kopyalamak ve tabloyu yeniden oluturmaktr. Bu durumda, ktn ieriinin doru olmas garantilenemiyor. Fakat, sistem karasz durumdan kararl duruma gemi olur.

7.6.Diskin Planlanmas Disk balk konumunun ileri geri hareketini planlatrmak iin birka algoritma vardr. bu algoritmalarn amac diske eriim hzn ykseltmek ve arama ilemlerinin zamann kltmektir. Diske eriim sresi balca 2 bileenden oluur. 1.Arama sresi : Disk konumunun baln arama blm ieren silindirin zerine getirilme sresidir. 2.Dnme sresi : Aranan blmn disk balna doru dnme sresidir. Disk balnn ileri-geri hareketini salayan algoritmalar vardr. Bunlardan bazlar ;

1. FCFS (First Come First Served) Algoritmas : Varsayalm ki disk bloklar aadaki gibi kuyruk oluturur. 98, 183, 37, 122, 14, 124, 71, 60 Ktk iin bu bloklar okunacaktr. Sras nemli deil. nk bir yerde ylacaklar. Diskin 53. silindir zerinde olduu varsaylsn.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

102

20

40

60

80

100

120

140

160

180

200

53 37 14

98 122 124 71 60

183

Burada tm bloklara erimek iin 640 silindir okunacaktr. 2. SSTF (En ksa arama sresi olan nce) Algoritmas : Bu algoritmada baln imdiki durumuna gre en ksa arama sresi olan ilem seilir. Arama sresi baln izleyecei (tarayaca) silindirler says ile doru orantl olduundan SSTF algoritmas disk balnn ilk durumuna en yakn olan silindiri ilk ilem iin seecektir. FCFS algoritmasndaki rnei uygularsak: 0 20 40 60 80 100 120 140 160 180 200

53

60

71

98 124

122 183

37 14 Bu algoritmada toplam izlenen silindir says 299 dur. Algoritmann yetersiz ynlerinden birisi her zaman kuyrua disk balnn o anki durumuna daha yakn olan silindir sunulabilir. Bunun sonucunda disk balndan daha uzakta olan silindirlerin ilenmesi ertelenebilir.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

103

3. SCAN Algoritmas : Bu algoritmada disk balk kolu diskin bir ucundan balayarak dier ucuna (kenarna) gidene kadar hareket eder ve karlat silindirler zerinde ilem yapar. Sonra dier kenardan ters ynde hareket eder ve ayn ilemleri yapar. Bylelikle kuyruktaki tm silindirlerin taranmas iin diskin nce ileri sonra geri hareketi gerekiyor. Burada nemli olan, disk balnn hareket yn belirlenmelidir. Yani disk balk kolu 0 ynne (kenarna) doru hareket edecekse o zaman 53 den sonra 37 ilenecek, 200 kenarna doru hareket edecekse 53 den sonra 60 ilenecektir.

20

40

60

80

100

120

140

160

180

200

53 14 37

0 60 71 98 124 122 183 200 Baln hareketi ynnde yeni bir silindir sunulursa o derhal hizmete konulacaktr. Buna asansr algoritmas da denir. rnein silindir bal 98 deyken 100 gelirse, nce 100 ilenir ondan sonra 122 i ilenir. Bu algoritmann bir versiyonu da C-SCAN algoritmasdr.

4. C-SCAN (Dngl SCAN) Algoritmas : Bu algoritma prensip de SCAN algoritmas gibidir. Ancak disk sonuca ulat zaman derhal en baa dner ve taramay devam ettirir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

104

20

40

60

80

100

120

140

160

180

200

53 0

60

71

98 124

122 183 200

14

37

5. LOOK Algoritmas : SCAN algoritmasndan farkl olarak LOOK ve C-LOOK algoritmalarnda disk bal diskin sonuna kadar deil eriilmesi gereken son silindire kadar hareket eder. LOOK 0 20 40 60 80 100 120 140 160 180 200

53

60

71

98 124

122 183

37 14 C-LOOK 0 20 40 60 80 100 120 140 160 180 200

53 14

60

71

98 124

122 183 200

37
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

105

8. GR-IKI LEMLER
letim sisteminin nemli fonksiyonlarndan birisi G/ aygtlarnn ynetimidir. Bu ynetim aygtlara gnderilen komutlarla, kesilmelerle, hatalarn kontrol ve ynetimiyle ifade edilebilir. G/ ynetim sistemi ayn zamanda aygtlarla sistemin dier bileenleri arasnda ara yz oluturur ve bu ara yz kullanc iin basit bir biime dntrr. G/ aygtlarn genelde 2 kategoriye ayrmak mmkndr. Blok aygtlar Karakter aygtlar Blok aygtlarnn her biri sabit boyutta adreslerde saklanyor ve her bir bloun kendi adresi mevcuttur. Bu tr aygtlar da bloklar dier bloklardan bamsz olarak okuyup yazmak veya erimek mmkndr. Disk blok aygtdr. Karakter aygtlarnda ise, bilgilerin okunup yazlmas (bilgi alverii) karakter yardmyla gerekletirilir. Bunlar adreslenebilen deildir. Bu bakmdan bu tr aygtlar da arama yaplamaz. Terminaller, bilgisayar a arayzleri, yazclar bu tr aygtlardandr. Birok aygtlar bu 2 kategoriye ait deildir. rnein saat; saat ne adreslenebilendir ne de karakterlerle ilenir.

8.1. Aygt Denetleyiciler G/ aygtlar mekanik ve elektronik bileenlerden oluur. Elektronik bileene aygt denetleyicisi veya adaptr denir. Mekanik bileen ise aygtn kendisidir. Denetleyici ve aygt arasnda standart arayzleri (ANSI, IEEE, ISO) vardr. letim sistemi aygtlarla deil denetleyicilerle ilgilidir. Denetleyici genelde iki veya daha fazla ayn trl aygt denetleyebilirler. disk yazc

AIB

bellek

Disk denetleyici

Yazc denetleyici

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

106

lemci ile denetleyici arasnda kesin bir fark yoktur. rnein disk denetleyici disk ilemlerini yapan bir ilemci gibidir. Her denetleyicinin birka yazmac vardr. Bu yazmalar AB ile iliki oluturmak iindir. Bellekte her bir denetleyicinin kendi adresi bulunur. 8.2.Giri k Yazlmlarnn lkeleri Giri-k yazlm ok seviyelidir. Her seviye donanmn aygtlarn bir st seviyeden saklar. En st seviye kullancya anlalr bir arayz sunmu olur. Yazlmlarn oluturulmasnda balca 4 ilke vardr: Aygttan bamszlk Ayn biimli adlandrma Hatalarn ynetimi Aygtlarn ortak kullanlabilirlii 1. Aygttan bamszlk : G/ yazlmlarn tasarmnda balca hedef yazlmlarn aygttan bamszln salamaktr. rnein programn diskteki veya disketteki ktklere eriimi arasnda fark olmamaldr. 2. Ayn biimli adlandrma : Birinci ilkeyle sk baldr. Ktk adlaryla aygt adlarnn yapsnda hibir fark olmamaldr. Tm ktklere ayn yntemle yol adlaryla eriilir. 3. Hatalarn ynetimi : Genelde hatalar mmkn olduka ynetim seviyesinde ynetilir ve oradan gtrlr. Eer disk denetleyici okuma hatas bulmazsa ilk nce bu hatay kendisi dzeltmeye alr. Eer bunu baaramazsa aygt srcs bu ii yapmaldr. Byk olaslkla okuma hatas giderilmek iin uygun blok yeniden okunmaya allacaktr. Eer alt seviyeler hatay zemezse yukar seviyeler bu problemi zmelidir. 4. Aygt paylam : Baz giri k aygtlar (rnein disk) birok kullanc tarafndan ayn zamanda kullanlabilir. Bu zaman G/ alt sisteminin grevlerinden birisi aygtn kullanclar arsnda dzgn ve verimli paylamn salamaktr. Baz aygtlar ise paylalamaz aygtlardr. Ayn zamanda bu tr aygtlara istek veya sorgu gelirse G/ sistemi bu taleplerin hangi ardklkla ve yntemlerle gerekleeceini de belirlemelidir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

107

letim sistemi bu fonksiyonlarn gerekletirmek iin drt katmandan oluur. Kesilme yneticileri Aygt srcleri Aygttan bamsz iletim sistemi yazlm Kullanc seviyeli yazlm G/ ilemlerinin mmkn olduu kadar AB den uzaklatrlmas denetleyiciler tarafndan yaplmas nemlidir. AB yaplacak ilemleri disk denetleyicisine sinyalle gnderir, ayrca bellekte hangi adrese yerletireceini de belirler. Bundan sonra AB baka ilemleri gerekletirir. Denetleyici verilen ilemi gerekletirir ve iini bitirince AB ye sinyal gnderir. 1. Kesilme yneticileri : Kesilmeler genelde iletim sisteminin alt seviyesinde saklanr ve iletim sisteminin kk bir ksmnn bu kesilmeler hakknda ilgisi bulunur. G/ ilemleri baladktan bitene kadar grev kesilmeli, ve uygun sinyal geldikten sonra grev yeniden ie balayabilmelidir. Bu fonksiyonlar kesilme yneticisi gerekletirir. Kesilme yneticisinin bir fonksiyonu da G/ aygtlaryla ilgili hatalarn analizidir. 2. Aygt srcleri : Aygt srcleri ayn snfa ait aygtlar ynetmek iindir. Aygta baml kodlar aygt srclerinde bulunur. Denetleyicilerin kodlarnda bulunan yazmalar aygt srcleri tarafndan alnr ve srcler bu komutlarn doru almasn kontrol eder. Srclerde denetleyicilerin ka yazmac olduu ve bu yazmalarn hangi amalarla kullanld hakknda bilgiler bulunur. rnein yalnz disk srcsnn diskin blmleri, yol ve silindirleri, disk bal, motor srcleri hakknda bilgi bulunur. 3. Aygttan bamsz G/ yazlmlar : Srcler ve aygttan bamsz yazlmlar arasnda kesin snr iletim sistemine baldr. yle ki aygttan bamsz yazlmlarn gerekletirdii baz fonksiyonlar verimlilii ykseltmek amacyla aygt srcleri ile yapmak mmkndr. Aygttan bamsz yazlmlarn balca fonksiyonu tm aygtlar iin ortak olan G/ fonksiyonlarn gerekletirmek ve kullanc seviyesiyle tek biimli ara yz oluturmaktr. G/ aygtlar iin ortak fonksiyonlar okuma yazmadr. Kullancnn diske, diskete ve yazcya yazmak arasnda hibir fark olmamaldr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

108

4. Kullanc seviyesi G/ arayzleri : G/ yazlmlarnn byk bir ksm iletim sistemine aittir. Kk bir ksm ise kullanc programlaryla birlikte bir balant oluturan (link) ktphanelerdir. Bu programlar (ktphaneler) iletim sisteminin dnda alan programlardr. G/ ilemlerini ieren (gerekletiren) sistem arlar ktphane yordamlar tarafndan oluturulur. Btn aygtlara ayn biimli eriim salanmaldr.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

109

9. DAITILMI LETM SSTEMLER (D..S)


Datlm sistemlerin en byk zellii bu sistemlerde yazlm mimarisinin (yapsnn) merkezlemi sistemlerden tamamen farkl olmasdr. (Not: D..S. henz geliim aamasndadr. Bu sistemlerde henz kabul edilmi standartlar yoktur.) D..S nin merkezlemi .S.nden aadaki farklar vardr. Dk maliyet Yksek ilem hz ve verimlilik Datlm uygulamalara ynelik olmas Daha yksek gvenirlik Bilgisayarlarn a ortamnda kullanlmas verilerin ve aygtlarn ortak kullanm ve iletiim kolayln salar. (bu bamsz bilgisayarlardan farkldr.) D..Snin problemleri aadaki gibidir. A sistemlerinin yazlm yava yaplanmtr, geliim aamasndadr. Ada alma ile ilave problemler olumaktadr. Gvenlikle ilgili problemlerin zlmesi gerekir. Datk sistemlerin 4 genel mimarisi mevcuttur. 1. 2. 3. 4. SISD SIMD MISD MIMD

1. SISD (Single Instraction Single Data)(Tek Komut Tek Veri) : Her komut zerinde bir veri ilenir. lemciye bir komut gnderildiinde o komut o anda o veri zerinde ilenir. Tek ilemcili sistemler bu mimariye aittir. 2. SIMD (Single Instraction Multi Data) (Tek Komut ok Veri) : bir tek komut birok veri zerinde etkilidir. ok ilemcili bilgisayarlar (paralel bilgisayarlar) bu mimariye sahiptir. komut a1 a2 f(a1) f(a2)

an

f(an)

3. MISD (Multi Instraction Single Data)(ok Komut Tek Veri) : Bu mimari teori olarak var ancak gerekte yoktur. Ayn zamanda veri zerinde farl ilemler yaplmasn ifade
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

110

eder. rnein knn nl nsz olduu belirlenirken ayn zamanda alfabenin kanc harfi olduu belirlenmesin. 4. MIDM (Multi Instraction Multi Data)(ok Komut ok Veri) : zellikle a sistemlerinde bu mimari kullanlr. Sper bilgisayarlarda SIMD mimarisi kullanlr. Her biri ayr bilgisayar. Her birinin kendi diski, bellei,...vs. var. Bu a sistemi deil ok ilemcili sistemdir. Ynetimi kolaylatrmak iin yapsallk oluturulur.

ki kp var. Bunlar birbirine baldr. Kp says arttrlabilir. Paralel olarak alan bir sistem

1. ok ilemcili (bilgisayarl) sistemler 2. A sistemleri A sistemleri zayf bal sistemlerdir. Bilgisayarlar arasnda veri alverii yaplabilir. Kabuklarn ortak kullanm yerel sistemlerde Ayn yazlmlara eriim tek kanall ok ilemcili sistemler sk bal sistemlerdir. Bir ana bellekten ilemler gerekleir. lemcilerin kendi yerel bellekleri olabilir.

P M

P M

P M

C
111

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

Tek kanaldan ayn anda birden fazla veri gnderilmesi bilgi kaybna yol aabilir. Bunun iin eitli zmler kullanlr. rnein her bilgisayara bir adaptr konulur. Adaptr a dinler. Bir bilgiyi gndermeden nce kanal hakknda bilgi edinir. Kanalda bir veri yoksa bilgiyi gnderir. Bir baka yol da jetonlu halka yntemidir. A

Gnderen ve gnderilenin adresi, paket no

bilgi

A dan C ye bir veri gnderilmek isteniyor. Veri vagondaki paketlere aktarlr. Paket ilerledike her bilgisayar kendine ait olup olmadna bakar. Eer kendine ait ise veriyi alr, deilse paket ilerlemeye devam eder. En ok kullanlan yntem budur. Veri belli byklkteki paketlere ayrlarak gnderilir. Veri uzunsa sabit paketlere ayrlr. rnein;

128 Klk bir paket

Alc bilgisayar tm gerekli paketleri aldktan sonra ilem yapar. Ayn anda birden fazla veri gnderilince hata oluabilir. Hatalara kar gvenlii salamak iin eitli yollar vardr. iki kanal kullanlabilir. Souk Yedekleme : Bir kanaln bozulmas durumunda dieri kullanlyorsa. Scak Yedekleme : ki kanal ayn anda kullanlyorsa. Adaptr kanal ile bilgisayar arasnda balanty salar.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

112

Gl Balant : Ortak bir ana bellek vardr. ortak bir disk kullanlabilir. Ortak bir CPU yu kullanlabilir.(Sk balantl sistemlerde)

P M

P M ...................................................

P M

P M

CPU

Her birinin yerel bellei olabilir. Bunlarda kullanlr. (Ortak disk kullanarak veri al veriinde bulunulabilir.) Bilgisayar bilgiyi cashede bulamazsa ana bellekte arar. Bilgisayarlarn hepsi daha hzl almak iin cashe bellek kullanlr. Sk kullanlan veriler cashe bellekte saklanr. 9.1. GREVLERN YERLEM

Tek ilemcili sistemlerde grevlerin yerleimiyle ilgili problem yok. Grev mutlaka bulunduu bilgisayarda alr. Datlm sistemlerin hangi mimari zerinde kurulduuna bakmakszn her bir sistemde hangi grevlerin hangi sistemde alacana karar verecek bir algoritma geerlidir. Grevlerin ilemciler zerinde yerlemesi algoritmalarn iki snf modele ayrmak mmkndr. 1. Snf model de Grev birinci kez oluturulduu zaman onun nereye yerleeceine karar verilir. Herhangi bir bilgisayara veya ilemciye aktarlm grev kesildii (silindii) ana kadar o bilgisayarda kalm olur. Bu model de sistemde olan bilgisayarlarn bo durmas veya fazla yklenmesi hibir nem tamaz. Bu model (nonmigratory) hareketsiz grev modeli olarak adlandrlr. 2. Snf model de (grevlerin hareketli olduu modelde) grevler bir sistemden dierine hareket edebilir. Hatta grevler bir ilemcide alr durumda ise o bilgisayarda kesilip dier bilgisayarda iine devam edebiliyor. Birinci modele oranla hareketli grev modelinde bilgisayarlar daha dengeli yklenmi olurlar ama sistemin karmakl artar. Bu ve dier modellerin seimi minimumlatrma kstaslarna baldr. minimumlatrma kstas ana ilem biriminin maksimum kullanm olarak alnabilir veya sorulara cevap sresi olarak alnabilir. Varsayalm ki iki ilemci ve iki grev bulunur.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

113

Pr 1

Pr 2 P1 = 10 MIPS P2 = 100 MIPS Tl = 5 sn (bekleme sresi)

A grevi komut says 100 milyon B grevi komut says 300 milyon 1. P1 de A ve P2 de B grevi varsa a. Acs = 100/10 =10 m/sn b. Bcs = 300/100 + 5 = 8 m/sn 2. P1 de A ve P2 de B grevi varsa a. Bcs = 300/10 = 30 m/sn b. Acs = 100/100 + 5 = 6 m/sn Ortalama alma sresi : lk durumda (10+8)/2 = 9 m/sn ikinci durumda (30+6)/2 = 18 m/sn Bu arada iki kstas nemlidir. 1. ilemcilerin dengeli kullanm 2. paralellik 2 grevde 2. ilemciye sunulursa B iin : 300/100 = 30 B
t = 5 sn

A iin : 30 + 100/10 = 40

9.2.DAITILMI SSTEMLERDE PLANLAMA (Scheduling) Normalde her bir ilemcinin kendi yerel planlaycs ve planlanma algoritmas mevcuttur ve bu planlama dier ilemcilerde yaplan ilemlerden bamszdr. Grevler birbiriyle iliki olduu durumlarda bamsz planlama baz problemler dourur. Bunu bir rnek zerinde gsterelim. Varsayl ki A ve B grevleri 1. ilemcide, C ve D 2. ilemcide alrlar. lemciler zaman paylam algoritmasyla grevlere hizmet ediyor. Bu zaman diliminin 100 m/sn olduunu
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

114

varsayalm. Kabul edelim ki A ve B ift sayl dilimlerde C ve D ise tek sayl dilimlerde alrlar.
ilemciler Zaman Dilimleri 0 1 2 3 4 5 6 7

I A B A B A B A B

II C D C D C D C D

Varsayalm ki A grevi D grevi ile sk ilikidedir, ondan bilgiler alr. 0. zaman diliminde A grevi ise baladnda D ye uzaktan eriim sreci altrr. Bu zaman D grevi bekleme durumunda olduu iin A nn mesajn alamyor. C bekler duruma getik ten sonra D grevi A nn mesajn kabul ediyor ve gereken bilgileri A ya gnderir. Ama bu zaman A grevi bekleme durumundadr ve cevap 2. zaman dilimine kadar bekletilir. (200. snye kadar.) Bylelikle D grevinin 0 annda arldn varsayarsak gereken cevap 200 m/sn den sonra alnm olacaktr. Birbiriyle sk ilikili olan grevler ayn zaman diliminde altrlrsa verimlilik salanr. Bu tr problemlerin nlenmesi iin birbiri ile ilikili grevlerin ayn zaman diliminde ama farkl ilemcilerde gerekletirilmesi gerekir. 9.3. DAITILMI KTK SSTEMLERNN TASARIMI Datlm ktk sistemlerinin genelde iki farkl bileeni vardr. Ktk hizmeti (File service) Dizin hizmeti (Directory service) KTK HZMETLER Ktkler zerinde ilemleri (okuma, yazma, gncelleme) gerekletirir. 2 modelde gerekletirmek mmkndr. 1. Ykleme modeli (Upload down modeli) 2. Uzaktan eriim modeli (Remote modeli) Ykleme Modeli : Bu modelde ktk ilemi iki farkl ilemi salyor. Ktn okunmas Ktn yazlmas Okuma ileminde ktk sunucusundan ilemciye gnderilir. Yazma ileminde ise ktk ilemciden sunucuya gnderilir.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

115

Bu model basittir. Uygulama programlar gerektiinde kt tmyle sunucudan alp yerel diskine veya belleine burada onlar zerinde ilemler yapabilirler. Gncellenmi veya yeni oluturulmu ktk geriye sunucuya gnderilir. Bu modelin yetersizlii tm ilemciler iin byk hacimde bellek alan gerekmektedir. Uzaktan Eriim Modeli : Bu modelde ktkler ve onlarn ayr ayr paralar zerinde ilemler yaplabilir. Ktk sistemleri yalnz sunucuda altrlr. Eer ilemci bilgilerin yalnz bir ksmn talep ediyorsa tm ktn gnderilmesine gerek kalmyor. istemci sunucu Ktk ilemciye eski ktk tmyle gnderilir yeni ktk istemci sunucu Ktn istenen bir ksm alndnda ilem kolayl salar. DZN LEMLER Dizinlerin oluturulmas ve silinmesi, ktk ve dizinlerin adlandrlmas veya yeniden adlandrlmas, ktklerin bir dizinden dierine tanmas ilemlerini ierir. Datlm sistemlerde dizinler genelde hiyerari yap oluturur. Bu yap genelde aa veya graf biiminde olabilir. Aa biiminde her bir alt dizin yalnz bir st dizinle balant oluturur. Graf veya a yapsnda ise bir alt dizine birden fazla st dizinden eriim salanabiliyor. Datlm dizin sistemlerinin nemli problemlerinden birisi effaflktr. effafln gerekletirilmesi ynlerinden birisi sunucunun deitirilmesine bakmakszn ktk yolu adnn sabit kalmasnn salanmasdr. /server1/dir1/dir2/x /server2/dir1/dir2/x Verinin hangi sistemde saklandnn nem tamamas, bir bilgisayardaysa baka trl, bakasndaysa baka trl eriim olamamal. Bu datk sistemlerde veri effafldr.

Soldakinde (Hiyerari sis.) sadece alt dizinlere eriilir. Sadakinde (Graf sis.) st dizinlere de eriilebilir.
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

116

10. GVENLK VE KORUMA


GVENLK Koruma- i sorundur; bilgisayar sistemindeki dosya ve programlara denetimli eriimin nasl salana bileceini ifade ediyor Gvenlik- i koruma ile yan sra, sistemin alt d ortam da dikkate alyor. Gvenliin bozulmas- kastl,tesadfi kastl: verileri yetkisiz okuma; yetkisiz deime, yetkisiz silme YETKLENDRME temel kavram: kullanc sahiplii (anahtar,kart) Kullanc bilgileri(kullanc kimlii,parola) Kullanc znitelii (parmak izi, imza, gz rnts) Parolann gizliliinin kayb: Sradan bilgilerin kullanm (doum tarihi, soyad) Tm mmkn kombinasyonlarn denenmesi (her kombinasyon iin 1 ms hesabyla 4 rakaml parola iin 5 sn) Parolann ifrelendirilmesi Geici parola TEHDTLER 1. Truva at-Trojan Horse: - alt ortamda ktye kullanlan kod kesimi - Birileri tarafndan yazlm programlarn dierleri tarafndan altrlmasna izin verilmesi. 2. Solucan-Worms: a balantlarn kullanarak mektuplar, uzak eriimler, v.s. yolu ile sistemden sisteme yaylma 3. Virsler : yasal programn iine sokulmu kod paras

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

117

Kt Amal Yazlmlar

Tehditlerin Belirlenmesi 1.Tehdit yapann davranlarnn yasal kullancnnkinden farkl olduunu varsayalm 2. statistiksel sapmalarn belirlenmesi a-Belirli bir zaman zarfnda yasal kullancnn davranlar ile bal verilerin toplanlmas b-statistiksel denemeler davrann yasal olmadn belirlemek iin kullanlyor 3.Kurala dayal belirleme a-nceki kullanm rnekleri esasnda sapmalar belirlemek iin kurallarn gelitirilmesi b-Yasal olmayan kullanclarn davranlarn belirlemek iin uzman sistemler 4.Kontrol kaytlar a-Tm iletim sistemleri,kullanc giriimleri hakknda bilgiler toplayan yazlmlar iermektedir Tehdit Trleri 1. Kesme-Interruption a- Sistemin nitelikleri datlr ve eriilemez veya kullanlamaz duruma getiriliyor. b- Edinebilirlie engel c- Donanmn tahribat d- letiim hattn krma e- Dosya ynetimi sistemini almaz duruma getirme

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

118

2. Engel olma-Interception a- Yetkisiz kiilerin sistemin niteliklerine erimesi b- Gizlilie mdahale c- A zerinde verileri zaptetme d- Dosya ve programlarn yasak olarak kopyalanmas

3. Deitirme - Modification a- Yetkisiz kiiler tarafndan sistemin nitelikleri edinilir ve deitirilir b- Btnl tahdit c- Veri Dosyalarnda deerlerin deitirilmesi d- Program, farkl alacak biimde deitirme e- A zerinde aktarlan haberlerin ieriinin deitirilmesi

4. Sahtecilik- Fabrication a- Yetkisiz kiiler tarafndan sisteme sahte nesneler sokulmas b- Yetkilendirmenin tahdidi c- Ada yanl haberler gnderilmesi d- Dosyaya kaytlar ilave edilmesi
brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

119

KORUMANIN AMALARI letim sistemi nesnelerden- donanm ve yazlmlardan oluuyor Her bir nesnenin dierlerinkinden farkl ad var ve her bir nesneye iyi tanmlanm ilemler kmesiyle eriile bilir. Koruma- her bir nesneye doru ve yalnz bu nesne iin izin verilen ilemlerle eriimin salanmasdr. Alan Yaps 1. Alan = eriim haklar kmesidir 2. Eriim hakk = <nesne-ad, haklar -kmesi> haklar-kmesi-nesne zerinde yapla bilecek tm geerli ilemlerin altkmesidir

Eriim Matrisi 1. Koruma mekanizmas matrisle (eriim matrisi) ifade ediliyor 2. Satrlar alanlara,stunlar nesnelere uygundur 3. Eriim(i, j) Alan (i) de alan grevin Nesne (i) zerinde yapabilecei ilemler kmesini ifade ediyor

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

120

Eriim matrisinin kullanm 1. Eer Di alanndaki grev Oj nesnesi zerinde bir ilem yapmaya alyorsa bu ilem eriim matrisinde bulunmaldr 2. Dinamik koruma oluturula bilir a- Ekleme,silme haklar. b- zel eriim haklar: - Oinin sahibi - Oi nesnesinden Oj nesnesine kopyalama - Kontrol (denetim) Di , Dj alannn eriim haklarn deitirebilir - Transfer (aktarm) Di alanndan Dj alanna gei 3. Eriim matrisi tasarm mekanizmay (yntemi) stratejiden ayryor a- Mekanizma - letim sistemi eriim matrisi +haklar salar - Mekanizma,matrisi yalnz yetkili kiilerin kullanmasn ve yalnz kesinlemi kurallarla eriimi salar b- Strateji - Stratejiyi kullanc belirler. - Kim hangi nesneye ve hangi kipte eriebilir Eriim matrisinin altrlmas 1. Her stun = bir nesne zerinde eriim denetimi listesi. Kim hangi ilemi yapabilir. Domain 1 = Read, Write Domain 2 = Read Domain 3 = Read M 2. Her satr = Yetenek listesi (anahtara benzer) Her bir alan iin hangi ilemlerin hangi nesneler zerinde yapla bileceini belirler. Object 1 Read Object 4 Read, Write, Execute Object 5 Read, Write, Delete, Copy

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

121

Eriim matrisi - Alanlar nesneler Switch(i,j) - i alannda alan grev j alanna aktarla bilir: rnek: D2 alannda alan grev D3 veD4 alanlarna, D1deki grev D2ye aktarlabilir.

Kopyalama hakk Kopyalama hakk ilemin zerinde * ile gsteriliyor. rnek: D2 alannda alan grevler uygun stundaki (F2 dosyas) nesnenin ieriini dier nesnelere de okuma hakkn verebilir. Alt tabloda D3 alanndaki grevlere de bu hak tannmtr.

Sahiplik hakk Sahiplik hakk yeni haklarn ilave edilmesi veya alnmasn kontrol eder. Eer tablonun (i,j) ieriinde sahiplik hakk bulunuyorsa, Di alannda alan grev j stunundaki her bir ierie istedii hakk ilave ede veya silebilir.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

122

rnek: D2 alanndaki grev F2nin sahibidir ve D3 alanndaki grevlere de F2ye yazma hakkn vermitir.

Deitirilmi eriim matrisi Access(i,j) = Kontrol ise, Di alannda alan her bir grev, j satrndaki her bir hakk silebilir (ilave edebilir). rnek: access(2,4)de Kontrol olmas, D2 alannda alan her bir grevin D4 alanndaki haklar deiebileceini ifade ediyor.

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

123

KAYNAKLAR 1. Ali Saati Bilgisayar letim Sistemleri, Baklar Yaynevi, Ankara-2003 2. M.Ali Salahl letim Sistemleri Ders Notlar, anakkale 18 Mart niversitesi, 2002. 3. Silberschatz Galvin, Peter Baer - Operating System Concepts, Addison Wesley, 1998. 4. Andrew S. Tanenbaum Modern Operating Systems, Prentice Hall, 1996

brahim Trkolu Frat niversitesi, Elektronik ve Bilgisayar Eitimi Blm 2006

124

You might also like