HAFTA 09: CPU Planlama (MİB İş Sıralama-Scheduling)
|
|
|
- Ceren Bilgin
- 10 yıl önce
- İzleme sayısı:
Transkript
1 HAFTA 09: CPU Planlama (MİB İş Sıralama-Scheduling) MİB Planlama Temel Kavramlar Planlama Kriteri Planlama Algoritmaları Çoklu-İşlemci Planlama Gerçek-Zamanlı Planlama Algoritma Değerlendirmesi İşlemci Planlamasında Çoklu programlamada bellekte birden fazla proses çalışmaya hazır beklerken... Bu prosesleri hangi sırayla çalıştırılacak? Kriterler Adil Kaynaklara tüm proseslerce eşit ve adil erişim Ayrımcı Farklı öncelikleri olan proseslerin desteklenmesi Verim İşlemciyi mümkün olduğunca meşgul tutması Birim zamanda bitirilen iş sayısını arttırılması Bir prosesin başlatılmasından bitirilmesine kadar geçen toplam bitirilme zamanını asgariye indirmesi Temel İçerik Çok programlı sistemlerin amacı aynı anda yürütülen işlem sayısını artırarak MİByi maksimum etkinliğe ve üretkenliğe kavuşturmaktır. Tek işlemcili sistemlerde aynı anda sadece bir işlem yürütülebilir. Birden fazla işlem olduğunda, bunlar MİBnin işinin bitmesi için bekleyeceklerdir. Çok programlı sistemlerde birden fazla işlem bellekte tutulabilmektedir. İşlemci zamanlama algoritmalarına göre de sırası gelen işlem bekleme sırasından(hazır Kuyruk) alınarak görevlendirici (dispatcher) ismi verilen bir işlem tarafından MİB ya gönderilir. Gönderici-Dispatcher İşte görevlendirici (dispatcher) bu işlemlerden sırası gelenin bekleme sırasından (ready queue) alınarak işlemciye gönderilmesi işlemini yerine getirir. Bu fonksiyon şunları kapsamaktadır: İçerik değişimi Kullanıcı moduna geçiş Programı tekrar başlatmak için kullanıcı programında uygun bölgeye geçişin sağlanması Gönderici zamanı göndericinin bir işlemi bitirip diğerine geçişi arasındaki süredir. Gönderici mümkün olduğu karar hızlı olmalıdır. Genel Anımsatma-Görev Yönetimi Bilgisayar sistemlerinin verimli kullanımı, ana işlem birimi (MİB), ana bellek ve giriş/çıkış birimleri gibi kaynakların, programlar arasında paylaşılmasını gerektirir. Bir bilgisayar sisteminde paylaşılan kaynaklar arasında en önemli kaynak MİB dur. GÖREV bir programın işletimi sırasında aldığı addır. Her program için en az bir görev tanımlanır. MİBnin yönetimine, Görev Yönetimi de denir 1
2 Görev Yönetimi MİB nun bir programın işletimini, devam etmek üzere bırakıp diğer bir programın işletimine geçmesi anahtarlanma olarak adlandırılır. Programların hangi sıra ve kurallar çerçevesinde anahtarlanacağını görev yönetimi düzenler. Program durgun komut satırlarıdır. Görev ise bu komut satırlarının işletimidir. Programların, ana belleğe yüklenebilmeleri, Giriş/çıkış birimlerinden okuma-yazma yapabilmeleri, Ek bellek alanlarını elde edebilmeleri, Görevlerin ana işlem birimine anahtarlanarak çalıştırılmaları sonucu gerçekleşebilir. Görev Yönetimi MİBnin, paralel işletimi sağlamak üzere bir işletimi bırakıp diğer bir işletime geçmesi belirli önlemler alınmadan yapılamaz. işletimin yarım bırakıldığı andaki durum bilgilerinin saklanması gerekir. Bu nedenle, her görev için işletim sistemi tarafından bir veri yapısı tutulur. Bu yapı, görev denetim öbeği, görev iskeleti gibi adlarla anılır. 8 Görev Durum Çizeneği Bir program, işletimi sonlanana değin değişik işletim evrelerinden geçer. Sunuş İşlem çalışmaya alınıyor Hazır Çalışır İşlem kesiliyor Bekler Bitiş (1) İşler, sisteme çalıştırılmak üzere sunulduklarında, iskeletleri çatılarak görev yada görevlere dönüştürülürler. Tanımları yapılan bu görevler, hazır görev sınıfına girerler (2) Hazır görevlerden biri, bazı kıstaslara dayanılarak, ana işlem birimine yönlendirir ve çalışır göreve dönüşür. (3) Çalışmakta olan bir görev değişik nedenlerle bu özelliğini yitirebilir. İşlem tümüyle sonlanmadan işletimine devam edemeyeceğinden bekler görev durumuna geçer ve ana işlem birimini bırakır. (4) Çalışmakta olan bir görev, işletiminin bitmesi durumunda ana işlem biriminin yanı sıra genelde sistem içindeki tanımını ve varlığını da yitirir. (5) Görevler ana işlem birimini kendilerinden kaynaklanmayan nedenlerle de bırakmak zorunda kalabilirler. (6) Giriş/çıkış istemi, zaman uyumlama gibi nedenlerle bekler duruma geçen görevler, istemin yerine gelmesi halinde yeniden çalışmaya hazır görev durumuna dönerler 11 2
3 MİB ve I/O Çalışma Sırasının Değişimi İşlemci Planlama(CPU Scheduling) Programlama ve plan işletim sistemi fonksiyonunun temelini oluşturur. Tabii ki, MİB de bilgisayarın en önemli parçası olduğu için onun nasıl çalışacağına dair bir programın yapılması işletim sistemi tasarımının da merkezini oluşturur. MİB boş kaldığında işletim sistemi sırada hazır bekleyen işlemlerden birini seçerek MİBye yerleştirmektedir. Bu seçme işlemi kısa-dönem programlayıcı tarafından yapılmaktadır. MİBye yerleştirilecek işlemin ilk gelen işlem olması şart değildir. İşlemlerin sıralanması hiç sıralama kriteri düşünülmeden yapılabileceği gibi geliş sıralarına göre de sıralama yapılabilir. Sıralama işinin yapılması için farklı programlama algoritmaları mevcuttur. Kesintili(preemptive) ve Kesmeyen(nonpreemptive) Kavramı Hazır sırası ile işlemci arasında zamanlama ilişkisini kuran işlemci zamanlama algoritmalarını (cpu scheduling algorithms) temel olarak 2 grupta incelenebilir: Kesintili algoritmalar (preemptive): yürütülen işlemin MİBden kaldırılması ve istenilen başka bir işlemin MİBde yürütülmesi sağlanabilir. Kesmeyen algoritmalar (nonpreemptive): işlem MİBye yerleştikten sonra; işlem tamamlanıncaya veya durana kadar MİByi kullanır. Kendi kodunda bulunan bir I/O isteği ile bloklanıncaya kadar ya da kendi isteği ile işlemciden çıkıncaya kadar çalışır. MİB planlama MİB planlaması aşağıdaki durumlardan biri olduğunda yapılmaktadır. 1. İşlemin yürütmeden bekleme duruma geçme 2. İşlemin yürütmeden hazır duruma geçme 3. İşlemin beklemeden hazır duruma geçme 4. İşlemin Durması 1. ve 4. durumlardaki planlama kesintisiz (nonpreemptive) planlama Diğer tüm durumlar kesintili (preemptive) planlamadır. Planlama Kriterleri -Scheduling Criteria MİBi planlama algoritmasında MİBleri kıyaslamak için bir çok kriter bulunmaktadır. Kullanılan kriterler şunlardır: MİB yararı (CPU utilizitation):mib mümkün olduğu kadar meşgul edilmeye çalışılır. MİB yararı 0 dan 100 e kadar değişebilmektedir. (Normal sistem-40, yoğun sistem-90) Yapılan İş(Throughput): Birim zamanda yapılan işlem sayısı miktarı yapılan iş olarak adlandırılır. (saniyede, saatte yapılan işlem) Dönüş Süresi( Turnaround time): Bir işlemin yürütülmesi sırasında geçen süredir. İşlemin dönüş süresi; belleğe yüklenirken, işlem sırasında beklerken, MİBde yürütülürken ve giriş/çıkış aygıtları tarafından tamamlanırken geçen sürelerin tamamıdır. Planlama Kriterleri -Scheduling Criteria Bekleme Süresi( Waiting time): İşlemin MİB tarafından yürütülene kadar, hazır durumdaki sırada geçirdiği süre bekleme süresi olarak adlandırılır. Cevaplama Zamanı(Response time): İşlemin MİB idaresine bırakılışından, sistemin ilk cevabı gelişine kadar geçen süre yanıtlama zamanı olarak adlandırılır. Bu süre sistemin cevap vermeye başladığı ana kadar geçen süredir. Bu zaman, çıkış aygıtlarının sisteme cevap verme süresi ile karıştırılmamalıdır. 3
4 Özetle-Planlama Kriterleri MİB kullanımı MİB yu mümkün olduğu kadar meşgul tutma, Verim Bir zaman diliminde çalışması tamamlan proses sayısı, Dönüş süresi Bir prosesin oluşturulmasından çalışmasının sonlanmasına kadar geçen süre Bekleme süresi Prosesin hazır kuyruğundaki bekleme süresi Yanıt süresi Bir prosese bir talep iletildiğinde ilk cevabın gelmesine kadar geçen süre Ara Soru Yanıtlama süresi ve dönüş süresi arasındaki farkı açıklayınız? Bu iki kere zamanlama programlarının etkinliğini ölçmek için kullanılır. Gerekli mi? Yanıt : Gerçekleştirme süresi, MİB yürütme, hazır kuyrukta bekleyen, ve I / O yapan, bir süreç belleğe almak için beklenen ve harcanan tüm dönemlerin toplamıdır. Gerçekleştirme süresi aslında bir işlemi yürütmek için gereken toplam zamanı ölçer. Yanıtlama süresi, diğer taraftan, bir istek ve üretilen ilk tepki arasında geçen zaman ölçüsüdür. MİB-Çalışma Zaman Diyagramı Görev Dağıtıcı Görev dağıtıcı, kısa-dönem planlayıcı tarafından seçilen prosese MİB nun kontrolünü verir. Bu işlem aşağıdaki adımları takip eder: Bağlam değişimi Kullanıcı moduna geçiş Programı yeniden başlatmak için kullanıcı programında uygun konuma atlama Dağıtım gecikmesi Görev dağıtıcısının bir prosesi durdurup, başka bir prosesi çalıştırmasına kadar geçen süredir. KISA DÖNEMLİ PLANLAMA Hazır görev durumundan çalışır duruma geçişler hazır görevler kuyruğundan merkezi işlem birimine anahtarlanma işlemleri görev yönetimince kısa dönemli planlama olarak ele alınır. Hazır görevler kuyruğunda bir görevin eksilmesi, yada kuyruğa yeni bir görevin eklenmesi, durumlarında GÖREV YÖNETİCİ ana işlem birine anahtarlanarak kendisinden sonra işletilecek görevin belirlenmesini sağlar. ORTA DÖNEMLİ PLANLAMA Çalışan bir görevin bitmesi sonucu ana bellekte yer açılması yada hazır görevler kuyruğunda bekleyen görev sayısının azalması durumlarında; Orta dönemli planlama kesimi, dönem dönem işletime girerek bellekte yer bekler kuyruğundan hazır görevler kuyruğuna girdi sağlayan bir kesim olarak düşünülür 4
5 UZUN DÖNEMLİ PLANLAMA Sisteme toplu işlem düzeninde sunulan işler, toplu işlem kuyruğuna bağlanırlar. Bu kuyrukta bekleyen işlerin hazır görevler kuyruğuna bağlanmaları İŞ YÖNETİMİ kapsamında ele alınır. Bazen işler, toplu işlemin yanı sıra etkileşimli işlem bağlamında da sunulurlar. Ancak etkileşimli işlem düzeninde sunulan işler beklemeksizin doğrudan görevlere dönüştürülüp, hazır görevler kuyruğuna eklenirler. 26 Yönetim Algoritmaları Sistem başarısını gözeten görev yönetimi Ana işlem biriminin verimli kullanımı Birim sürede sonlandırılan iş sayısı Ortalama iş tamamlanma süresi Bekleme süresi Yanıt süresi gibi kıstasları gözeten algoritmalar kullanır. Optimizasyonu Maksimum MİB kullanımı Maksimum verim Minimum çevrim süresi Minimum bekleme süresi Minimum cevap süresi Yönetim Algoritmaları İlk gelen önce: Görevlerin eş öncelikli olarak ele alındığı ve görevlerin, hazır görevler kuyruğuna geliş sırasında işletildiği, çok yalın bir yönetim algoritmasıdır. En kısa işletim süresi kalan önce: En kısa işletim süresi kalan göreve öncelik sağlanarak bir an önce sistemden çıkması ve bu yolla en kısa ortalama bekleme süresinin elde edilmesi amaçlanır. Diğer algoritmalar içinde, kuramsal olarak, ortalama bekleme süresi yönünden en iyi sonucu veren algoritmadır. Ancak kalan işletim süresi ölçülebilen bir değer değildir. Yönetim Algoritmaları Öncelik tabanlı: Her görevin bir önceliği bulunur. Bu öncelik değeri görev iskeleti içinde, öncelik alt alanında tutulur. Çok yüklü sistemlerde, yüksek öncelikli işlerin, sistemde hiç eksik olmaması yüzünden düşük öncelikli işlerin işletimleri, aşırı boyutlarda gecikebilir. Zaman dilimli: Hazır görevler kuyruğunda bekleyen görevler, eşit uzunluktaki zaman dilimleri içinde ana işlem birimine, sırayla anahtarlanır. Çok kuyruklu: Değişik yönetim algoritmalarının olumlu yanlarını bir araya getirmek ve sakıncalarını azaltmak üzere kullanılır. 5
6 Bir İş Sıralama Algoritmasında ne Önemlidir? İlk gelene-ilk servis First-Come First-Serve (FCFS) Planlaması En basit MİB programlama algoritması ilk gelene-ilk hizmet (first come, first served (FCFS) dır. Diğer bir adı ile de FIFO (First in- First out) Bu sistemde MİBye ilk gelen işlem MİBye yerleştirilir. İşlemler geliş sıralarına göre bir sıra oluştururlar. Bir işlem, MİBye geldiğinde hazır durumdaki işlem sırasının en sonuna yerleştirilir. FCFS Planlaması Proseslerin P 2, P 3, P 1 sıralamasına sahip olduğu varsayılırsa: Gantt grafiğine göre planlama şu şekildedir : P 2 3 P 3 6 P 1 30 Bekleme süreleri P 1 = 6; P 2 = 0 ; P 3 = 3 Ortalama bekleme süresi: ( )/3 = 3 Önceki örnekten daha iyidir. Konvoy etkisi oluşur. Uzun bir proses MİB a hakim olur diğer prosesler işlemcinin serbest kalmasını bekler. First-Come First-Serve (FCFS) (İlk Gelene-İlk Servis) Algoritması Proses Çalışma Süresi P 1 24 P 2 3 P 3 3 Proseslerin P 1, P 2, P 3 sırasıyla geldiğini varsayalım. Planlamanın Gantt Grafiği: P 1 P 2 P Bekleme süresi: P 1 = 0; P 2 = 24; P 3 = 27 Ortalama bekleme süresi: ( )/3 = 17 Ek Bilgi-Gantt Şeması Gantt şeması, Henry Gantt tarafından proje bilgilerini ve ilerleyişini gösterme aracı olarak, 1915 yılında geliştirilmiştir. Gantt şeması, iş yada operasyonların başlangıcını, bitişini ve süresini gösterir. İşlerden bitmiş olan kısmı gölgelendirilerek gösterilir. İşlerin planın gerisinde mi ilerisinde mi olduğunu gösterir. Daha önceleri Gantt şeması, işler arasındaki ilişkileri gösteremediği için, kritik yolu çıkartamıyordu. Bilgisayar kullanımı ile beraber, bu zorluk aşılmıştır. Shortest-Job-First (SJF) (En kısa iş İlk Hizmet Görür) Planlaması Her bir proses, bir sonraki MİB kullanım süresinin uzunluğu ile ilişkilendirilir. Bu uzunluklar kullanılarak en kısa süreye ihtiyaç duyan proses ilk hizmet görür. İki tür : İşlem üstünlüğü kullanılmayan - Engellemesiz(Non-preemptive): İşlemci bir prosese verildiğinde bu prosesin işi tamamen bitinceye kadar işlemci başka bir prosese verilemez. İşlem üstünlüğü kullanılan - Engellemeli(Preemptive): O an için işlemciyi kullanan prosesin kalan kullanım süresinden daha kısa süreye sahip bir proses gelirse, işlemciyi kullanan proses engellenir ve işlemci yeni prosese devredilir. Bu yöntem Kalan süresi en kısa olan ilk hizmet görür (Shortest-Remaining-Time-First SRTF) olarak bilinir. Ortalama bekleme süresi düşünüldüğünde SJF optimumdur.verilmiş bir proses serisi için en düşük bekleme sürelerini elde etmiştir. 6
7 Kısa-iş öncelikli Planlama Shortest-Job-First (SJF) Bu yaklaşımda en kısa süreye sahip olan işlem MİByi kullanabilir. Eğer iki işlem aynı uzunlukta ise, bu durumda FCFS prensibine göre önce gelen işlem MİByi kullanabilir. Zorluk - gelecek işlemlerin uzunluğu bilmek oldukça zor olmaktadır. İşlem Süresinin tahmini için kullanılan yöntemler bulunmaktadır. Kısa-iş öncelikli Planlama İşlem İşlem Süresi (Burst Time) P 1 6 P 2 8 P 3 7 P 4 3 SJF planlama çizelgesi P 4 P P 3 1 P Ortalama Bekleme Zamanı = ( ) / 4 = 7 İşlem üstünlüğü kullanılmayan SJF Proses P1 P2 P3 P4 Geliş Zamanı (sn) Proseslerin bekleme zamanı: P1=0, P2=6, P3=3, P4=7 Ortalama bekleme zamanı: ( )/4 = 4 P1 P3 P2 P4 İşlemci zamanı (sn) İşlem üstünlüğü kullanılan SJF Proses P1 P2 P3 P4 Geliş zamanı (sn) CPU zamanı (sn) Proseslerin bekleme zamanı = Bitme zamanı Belleğe konma zamanı İşlemci zamanı Proseslerin bekleme zamanı: P1=9, P2=1, P3=0, P4=2 Ortalama bekleme zamanı: ( )/4 = P1 P2 P3 P2 P4 P1 Proseslerin bekleme zamanı = Bitme zamanı Belleğe konma zamanı İşlemci zamanı Kısa-iş öncelikli Planlama (preemptive ) P1 P2 P4 P1 P P1, P2, P 3 ve P4 işlemlerinin preemptive özellik taşıyan SFJ algoritması ile sıralanması NONPREEMPTİVE P1, P2,P4, P3 İşlem Erişim zamanı Süre P1 0 8 P2 1 4 P3 2 9 P4 3 5 Kısa-iş öncelikli Planlama (preemptive ) Ortalama bekleme zamanı ise: =6,5 msn dir. Bu şekilde davranan sistem preemptive özelliğini taşımaktadır. Bekleme süresi nonpreemptive bir sistem için 7,75 msn olmaktadır. 7
8 FCFS ile Karşılaştırma Bir Sonraki MİB Kullanım Süresinin Belirlenmesi Uzunluk sadece tahmin edilebilir. Önceki işlemci kullanım sürelerinin eksponansiyel ortalamaları kullanılarak uzunluk tahmin edilebilir. 1. t n 2. τ = n. CPU kullanım süresin in uzunluğu n+1 = Sonraki CPU kullanım süresiiçin üretilmiş tahmini değer 3. α, 0 α 1 4. Aşağıdaki Denklem Çıkar : FCFS:10.25 SJF:7 n 1 tn 1. n Bir Sonraki MİB Kullanım Süresi Uzunluğunun Tahmini Üstel(Exponansiyel) Ortalama Örneği =0 n+1 = n Yakın tarihin bir etkisi yoktur. =1 n+1 = t n Sadece bir önceki MİB kullanım süreleri kullanılır. Eğer formülü genişletirsek: n+1 = t n +(1 - ) t n (1 - ) j t n (1 - ) n=1 t n 0 ve (1 - ) birden küçük veya eşit olduğundan, her başarılı bir dönemin ağırlığı kendisinden öncekilerden daha düşük olacaktır. Öncelik Planlaması Öncelik sayıları (integer) proseslerle birleşiktir. MİB, prosesin en yüksek önceliklhangisi ise ona ayrılır. (en küçük sayı en yüksek öncelik). İşlem üstünlüğü kullanılmayan - Engellemesiz(Nonpreemptive): İşlem üstünlüğü kullanılan - Engellemeli(Preemptive): Problem Açlık düşük öncelikli proses asla çalışmaz. Çözüm bekleme kuyruğunda çok bekleyene (Yaşlanma) gibi özel zaman sürecinin göre yeni bir öncelikle ilemesi sağlanır. 8
9 Öncelikli (Priority) Planlama Her işlemin sahip olduğu bir öncelik değeri mevcuttur. Bu programlama prensibine göre de, en yüksek önceliğe sahip işlem MİBde önce yapılır. Eğer işlemler eşit önceliğe sahiplerse, önce gelen işlem daha önce yapılır. SJF algoritması aslında bir öncelikli planlama algoritmasıdır. Öncelik değeri, işlem zamanının tersi ile elde edilmektedir. Öncelikler genelde belli sayı aralıklarında olmaktadır; örneğin 0 den 7 ye, 0 dan 400 e kadar. Fakat burada küçük sayının daha az öncelik olmasını gerektiren bir zorunluluk yoktur, bazı sistemlerde 0 en fazla öncelik için kullanılabilmektedir. Öncelikli (Priority) Planlama Örnek olarak, aşağıda verilen işlemleri ve özelliklerini ele alalım : (Düşük değer yüksek öncelik) İşlem Süresi Öncelik P P2 1 1 P3 2 4 P4 1 5 P5 5 2 Öncelik programlaması kullanıldığında zaman işlem sırası aşağıdaki gibi olmaktadır. Ortalama bekleme zamanı ise 8,2 msn olmaktadır. Bunu Nasıl Geliştirebiliriz? Round Robin (RR) Her bir proses, MİB süresinde kısa bir zaman dilimini (kuantum süresi) kullanır. Genellikle bu milisaniye kadardır. Zamanı geçen prosesler durdurulur ve ready (hazır) kuyruğunun sonuna eklenir. Ready kuyruğunda n tane proses varsa ve kuantum süresi q olmak üzere, her proses MİB zamanının 1/n ini alır. Hiçbir proses (n-1)q zaman diliminden daha fazla bekleyemez. Performans q büyük ise FIFO q küçük ise q bağlam değişiminde (contex switch) geçen süreden büyük olmalıdır. Aksi halde MİB üzerindeki yük fazla olacaktır. Round Robin (RR) Round- robin algoritması, zaman paylaşımlı sistemler için tasarlanmıştır. MİB programlayıcısı hazır durumdaki işlemleri zaman aralığına bağlı olarak MİBde yürütür. RR Örneği Time Quantum = 4 İşlem Süre (Burst Time) P 1 24 P 2 3 P 3 3 Gantt Şeması RR algoritmasını uygulayabilmek için hazır durumdaki işlem sırası FIFO algoritmasına göre sıralanır. Yani yeni işlemler de hazır durumdaki sıraya eklenir. MİB programlayıcısı hazır durumdaki sıradan ilk işlemi alır, ve zamanlayıcının 1 zaman aralığı (time quantum) sonunda kesme göndermesi sağlanır. P 1 P 2 P 3 P 1 P 1 P 1 P 1 P P1 için bekleme (10-4) = 6, P2=4, P3 = 7 bekleme süresine sahiptir. Ortalama bekleme zamanı = 17/3 =
10 Zaman Kuantum = 20 ile RR Örneği Zaman Kuantumu ve Bağlam Değiştirme Zamanı n Proses Çalışma Süresi P 1 53 P 2 17 P 3 68 P 4 24 Gantt Grafiği: P 1 P 2 P 3 P 4 P 1 P 3 P 4 P 1 P 3 P Genel olarak, ortalama dönüşü SJF'den yüksektir. Fakat cevap vermesi süresi daha iyidir. Zaman Kuantumu ile Tur Süresi Değişimi Çoklu Seviyeli Kuyruk Ready(hazır) kuyruğu ayrı kuyruklara bölünür: ön tarafta (etkileşimli) arka tarafta(batch) Her kuyruğun planlanmış algoritması vardır: ön tarafta RR arka tarafta FCFS Planlama kuyruklar arasında yapılmalıdır. Sabit öncelikli planlama; (arka plan daha sonra, ön processler tüm hizmet). Açlık olasılığı. Zaman dilimi (her sıra kendi süreçleri arasında zamanlayabilirsiniz, MİB belli bir zaman miktarı alır, yani, RR ön plana %80 öncelik sırası arka plan da ise FCFS %20 Çoklu Seviyeli Kuyruk Planlama Çoklu Seviyeli Geri Bildirim Kuyruğu Bir proses, değişik kuyruklar arasında yer değiştirebilir; bu yolla gelişme de sağlayabilir. Çok düzeyli geri bildirim kuyruğu planlaması şu parametrelerle tanımlanabilinir: Kuyruk sayısı Her kuyruk için bir algoritma planlaması Proses seviyesinin artırılacağı zamana karar verme Proses seviyesinin azaltılacağı zamana karar verme Prosesin hizmet ihtiyacı duyduğunda hangi kuyruğa giriş yapacağına karar verme 10
11 Çoklu Seviyeli Geri Bildirim Kuyruğuna Örnek Çoklu Seviyeli Geri Bildirim Kuyrukları Üç kuyruk: Q 0 8 milisaniye zaman kuantumlu Q 1 16 milisaniye zaman kuantumlu Q 2 RR Planlama: Bir iş RR (İlk gelen ilk hizmet görür kuralı) ile hizmet veren Q 0 kuyruğuna girer. İş MİB yu ele geçirdiğinde 8 milisaniyelik süre verilir, bu iş 8 milisaniyede bitmezse iş Q 1 kuyruğuna gider. Q 1 kuyruğunda RR ile 16 milisaniye daha hizmet görür. Eğer işlem hala tamamlanamazsa engellenir ve Q 2 kuyruğuna gönderilir. Çok İşlemcili Planlama Çoklu proses mevcut olduğunda ise MİB planlaması daha da karmaşıktır. Bir Çoklu işlemci(multiprocessor ) içerisinde homojen işlemciler vardır. Yük Paylaşımı gerekebilir Asimetrik Çoklu işlemler Sadece bir proses sistem veri yapılarına erişir. Bu sayede veri paylaşımı ihtiyacı hafifler. Windows XP Scheduler Öncelik tabanlı, önleyici zamanlayıcı En yüksek öncelikli process her zaman öncelikli çalışır. Öncelikler seviyeleri 32 e kadardır, her bir seviyenin ayrı bir sırası vardır. Kuyruklara çalıştırmak için hazır bir konu bulana kadar en yüksekten en düşüğe zamanlayıcı erişir Öncelikler sınıflara ayrılır, her birinin göreceli öncelikleri vardır Çok Seviyeli Kuyruk (Multilevel Queue) Çok Seviyeli Geri Beslemeli Kuyruk (Multilevel Feedback Queue) Çok seviyeli sıra programlamasında hazır durumdaki işlem sırası farklı gruplara ayrılmıştır. Yani hazır durumdaki kuyruk bir tane değildir, farklı özelliklere sahip diğer işlem kuyrukları mevcuttur. Her işlem, bu kuyruklardan birine sürekli olarak dahil olmaktadır. İşlemin hangi kuyruğa dahil olacağına işlemin öncelik değeri, büyüklüğü, işlem tipi gibi özellikleri etkili olmaktadır. İşlem kuyruklarının da kendi aralarında bir öncelik durumu vardır. Her kuyruk düşük öncelikli kuyruğa göre mutlak bir önceliğe sahiptir. Sistem preemptive olarak çalışmaktadır. Örneğin interaktif bir işlem, grup işlemi yürütülürken MİBye gelirse interaktif işlemin yapılması sağlanır. Çok seviyeli kuyruk programlamasında işlemler, sürekli olarak bir sırada bulunmaktadırlar ve sıralar arasında yer değiştirme olayı olmamaktadır. Çok seviyeli geri beslemeli sıra programlamasında ise işlemler farklı sıralar arasında hareket edebilme, yer değiştirebilme özelliğine sahiptirler. Eğer MİByi çok meşgul edecek uzun süreli bir işlem varsa, bu işlem düşük öncelikli bir kuyruğa atılabilinir. Ayrıca düşük öncelikli bir kuyrukta çok beklemesi gerekecek bir işlem de yüksek öncelikli bir kuyruğa geçirilebilir 11
12 Öncelikler ve Zaman-dilim boyu Öncelikler göre Endeksli Görevler listesi Gerçek Zamanlı Sistem Sıkı bağlı gerçek zamanlı sistemler kendisinden beklenen, işi yapmasının yanında verilen sürede bitirebilme kısıtıdır. Gevşek bağlı gerçek zamanlı sistemler kendisinden beklenen kısıt işi yapabileceği en iyi şekilde yapmasıdır. Görev Dağıtım Gecikmesi Garantili Zamanlama (Quaranteed Scheduling) Kullanıcılara belli sözler verme temelinde çalışır. Örneğin: Sistemde n kullanıcı varsa, herbiri işlemcinin 1/n ni kullanır. Sistemde her sürecin, çalışma sürelerini ayrıntılı olarak izler. Her seferinde en düşük süreli çalışmış olan süreç en yakın rakibinin en düşük süreli çalışmış olan süreç en yakın rakibinin süresine ulaşıncaya kadar çalıştırılır. Piyango Zamanlama (Lottery Scheduling) Süreçlere farklı sistem kaynakları için piyango bileti verilir. ( Örneğin işlemci zamanı). Bir zamanlama kararı verileceği zaman rastgele bir piyango bileti seçilir ve bu bilete sahip olan süreç çalıştırılır. Bir sürecin birden fazla piyango bileti olabilir. Örneğin, bir süreç 100 biletten 20 tanesine sahipse %20 çalışma şansı bulunmaktadır. Süreçler arasında istenilirse biletlerin paylaşımı olabilir. 12
13 Algoritma Analizi Simülasyonla MİB Planlama Analizi Deterministlik Modelleme Öncelikle daha önceden belirlenmiş bir yük seçer ve her algoritmanın bu yük üzerindeki performansı tespit edilir. Kuyruklu modelleme Gerçekleme Kaynakçalar Silberschatz, Galvin, Gagne: Operating System Concepts, 7th Edition 2005, emid= &resourceid=5004 Bazı sayfalarda, konuyu desteklemek üzere farklı İnternet kaynaklarından alınmıştır. Ev Ödevi Aşağıdaki zamanlamaları yapan bir (C / C++) simulasyon program yazınız. Algoritmalar First come First served Algorithm Shortest job First Algorithm Shortest job First Algorithm with Preemption Shortest job First Algorithm with NonPreemption Round Robin Algorithm Priority Algorithm Ve Sizin sececeğiniz bir algoritma ile birlikte Son teslim Tarihi: 30/04/2013 Ders Saati 19:00(Bu saatten sonraki sonuçlar kabul edilmez) Yardımlaşma kabul edilemez. Aynı programlar kopya olarak değerlendirecektir. Her öğrenci kendi başına yazacaktır. Çalışır bir şekilde CD veya DVDye bir bütün proje(kaynak kodlar dahil) olarak virussüz bir şekilde verilmesi gerekmektedir. (21 Puan-Arasınavınıza eklenecektir.)- BAŞARILAR 13
Bölüm 5: İşlemci Zamanlaması. Operating System Concepts with Java 8 th Edition
Bölüm 5: İşlemci Zamanlaması 5.1 Silberschatz, Galvin and Gagne 2009 Temel Kavramlar Çoklu programlama sayesinde CPU kullanımının optimize edilmesi CPU I/O İşlem Döngüsü Bir işlemin çalıştırılması birbirlerini
İşlem Yönetimi (Process Management)
İşlem Yönetimi (Process Management) 2 Bir işletim sisteminde, temel kavramlardan bir tanesi işlemdir. İş, görev ve süreç kelimeleri de işlem ile eşanlamlı olarak kullanılabilir. Bir işlem temel olarak
YZM 3102 İşletim Sistemleri
YZM 3102 İşletim Sistemleri Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği BÖLÜM 7 Bu bölümde, Temel Kavramlar Planlama Kriterleri Planlama
İŞ SIRALAMA. İş Sıralamanın Amaçları. İş Sıralama Türleri - 1. İş Sıralama. İş Sıralama Türleri - 2
İş Sıralamanın Amaçları İŞ SIRALAMA İşleri zaman içinde işlemciye yerleştirmek Sistem hedeflerine uygun olarak: İşlemci verimi Cevap süresi (response time) Debi (throughput) 23 İş Sıralama İş Sıralama
İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü
İşletim Sistemleri Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, Abraham Silberschatz, Greg Gagne, Peter B. Galvin, Operating System Concepts 9/e, Wiley,
İŞ SIRALAMA. İş Sıralama 6. İşletim Sistemleri
6 İŞ SIRALAMA İş Sıralama Çok programlı ortamlarda birden fazla proses belirli bir anda bellekte bulunur Çok programlı ortamlarda prosesler: işlemciyi kullanır bekler giriş çıkış bekler bir olayın olmasını
İşletim Sistemlerine Giriş
İşletim Sistemlerine Giriş Zamanlama (Scheduling) İşletim Sistemlerine Giriş - Ders02 1 Zamanlama (Scheduling) Eğer bir bilgisayar çok programlı(multi programming) ise, sıklıkla birçok süreç aynı anda
& WIN 32 DEN BAKIŞ AÇISI İSMAİL YALÇIN
WINDOWS XP SCHEDULING ALGORITHMS & WIN 32 DEN BAKIŞ AÇISI İSMAİL YALÇIN WIN 32 Win 32 de süreçler oluştuğu bir sınıf önceliği üzerine verilmiştir. >>Idle(tembel),below,below normal,normal,above normal,high,ve
Bilgisayar İşletim Sistemleri BLG 312
Bilgisayar İşletim Sistemleri BLG Çok prosesli ortamda birden fazla proses çalışmaya hazır şekilde bellekte yer alır MİB zamanının prosesler arasında paylaştırılması:zaman paylaşımlı çalışma iş sıralama:bir
Bölüm 5: İşlemci Zamanlaması. Operating System Concepts with Java 8 th Edition
Bölüm 5: İşlemci Zamanlaması 5.1 Silberschatz, Galvin and Gagne 2009 İşlemci Zamanlaması Temel Kavramlar Zamanlama Kriteri Zamanlama Algoritmaları İş Parçacığı Zamanlaması Çok-İşlemci Zamanlaması İşletim
İşletim Sistemleri. İşletim Sistemleri. Dr. Binnur Kurt Omega Eğitim ve Danışmanlık
İşletim Sistemleri Dr. Binnur Kurt [email protected] Omega Eğitim ve Danışmanlık http://www.omegaegitim.com 1 S a y f a İÇİNDEKİLER 1. İşletim Sistemi 2. Kabuk 3. Prosesler 4. İplikler 5. İplikler
İŞLETİM SİSTEMLERİ. (Operating Systems)
İŞLETİM SİSTEMLERİ (Operating Systems) İşletim Sistemi Tanımı, Görevleri, Bilinen İşletim Sistemleri Çok Kullanıcılı Sistemler, Bellek Yönetim Birimi Linux ve Windows Ailesi, Bilinen İşletim Sistemleri
Chapter 12: Depolama Sistemleri
Chapter 12: Depolama Sistemleri Operating System Concepts with Java 8 th Edition 12.1 Silberschatz, Galvin and Gagne 2009 Depolama Aygıtları Yapısına Ön Bakış Manyetik diskler modern bilgisayarların ikincil
Bilgisayar İşletim Sistemleri BLG 312
Prosesler Bilgisayar İşletim Sistemleri BLG 312 Prosesler ve Proses Yönetimi bilgisayar sisteminde birden fazla iş aynı anda etkin olabilir kullanıcı programı diskten okuma işlemi yazıcıdan çıkış alma
İşletim Sistemi. BTEP205 - İşletim Sistemleri
İşletim Sistemi 2 İşletim sistemi (Operating System-OS), bilgisayar kullanıcısı ile bilgisayarı oluşturan donanım arasındaki iletişimi sağlayan ve uygulama programlarını çalıştırmaktan sorumlu olan sistem
Çizelgeleme Nedir? Bir ürünün üretilmesi/hizmetin sunumu için
Üretim Çizelgeleme Çizelgeleme Nedir? Bir ürünün üretilmesi/hizmetin sunumu için işgörenin nerede, ne zaman gerekli olduğunun, gerekli faaliyetlerin zamanlamasının, üretime başlama ve üretimi tamamlama
Background (Arka Plan)
Bölüm 9: Sanal Bellek Operating System Concepts with Java 8 th Edition 9.1 Silberschatz, Galvin and Gagne 2009 Background (Arka Plan) Sanal Bellek Kullanıcı mantıksal hafızanın, fiziksel hafızadan ayrılması.
Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS
DERS BİLGİLERİ Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS İşletim Sistemleri BIL252 4 4+0 4 5 Ön Koşul Dersleri Yok Dersin Dili Dersin Seviyesi Dersin Türü Türkçe Lisans Zorunlu / Yüz Yüze Dersin
İŞLETİM SİSTEMLERİNE GİRİŞ. Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği
İŞLETİM SİSTEMLERİNE GİRİŞ Von Neumann Mimarisi Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği mimariyi temel almaktadır. Merkezi İşlem Birimi Aritmetik ve Mantık Birimi Kontrol
Sanal Bellek (Virtual Memory)
Sanal Bellek (Virtual Memory) Bellek yönetim tekniklerinde belleğin zaman içinde parçalanması ve işlemlerin boyutunun fiziksel belleğin boyutuyla sınırlı olması sorunları vardır. Ana belleğin yetersiz
YZM 3102 İşletim Sistemleri
YZM 3102 İşletim Sistemleri Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği BÖLÜM - 3 Bu bölümde, Proses Kavramı Proses Üzerindeki Bilgiler
1203608-SIMÜLASYON DERS SORUMLUSU: DOÇ.DR. SAADETTIN ERHAN KESEN. Ders No:2 Simülasyon Örnekleri
1203608-SIMÜLASYON DERS SORUMLUSU: DOÇ.DR. SAADETTIN ERHAN KESEN Ders No:2 GIRIŞ Bu derste elle ya da bir çalışma sayfası yardımıyla oluşturulacak bir simülasyon tablosunun kullanımıyla yapılabilecek simülasyon
İşletim Sistemlerinde Çok Prosesli Çalışma
İşletim Sistemlerinde Çok Prosesli Çalışma Kaan Aslan 4 Mart 2008 İşletim sistemlerini proses yönetimine göre kabaca tek prosesli (single processing) ve çok prosesli (multiprocessing) olmak üzere iki gruba
PROSESLER. Proses. Proses
Proses 2 PROSESLER Bir işlevi gerçeklemek üzere ardışıl bir program parçasının yürütülmesiyle ortaya çıkan işlemler dizisi Programın koşmakta olan hali Aynı programa ilişkin birden fazla proses olabilir.
BMÜ-421 Benzetim ve Modelleme Kesikli Olay Benzetimi. İlhan AYDIN
BMÜ-421 Benzetim ve Modelleme Kesikli Olay Benzetimi İlhan AYDIN KESİKLİ-OLAY BENZETİMİ Kesikli olay benzetimi, durum değişkenlerinin zaman içinde belirli noktalarda değiştiği sistemlerin modellenmesi
İŞLETİM SİSTEMLERİNE GİRİŞ. Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği
İŞLETİM SİSTEMLERİNE GİRİŞ Von Neumann Mimarisi Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği mimariyi temel almaktadır. Merkezi İşlem Birimi Aritmetik ve Mantık Birimi Kontrol
İşletim Sistemleri. Dr. Binnur Kurt [email protected]. Omega Eğitim ve Danışmanlık http://www.omegaegitim.com. İşletim Sistemleri
İşletim Sistemleri Dr. Binnur Kurt [email protected] Omega Eğitim ve Danışmanlık http://www.omegaegitim.com 1 S a y f a İÇİNDEKİLER 1. İşletim Sistemi 2. Kabuk 3. Prosesler 4. İplikler 5. İplikler
İşletim Sistemleri. B L M Mesleki Te r minoloji I I Ö ğ r e n c i S unumu
İşletim Sistemleri 1 4011029 R. Serkan Ke s kin 1 401103 9 Ö zcan Akdora B L M4811 - Mesleki Te r minoloji I I Ö ğ r e n c i S unumu Nedir? Bilgisayar donanımını yöneten yazılımdır. Bilgisayar yazılımlarının
Proses. Prosesler 2. İşletim Sistemleri
2 PROSESLER Proses Bir işlevi gerçeklemek üzere ardışıl bir program parçasının yürütülmesiyle ortaya çıkan işlemler dizisi Programın koşmakta olan hali Aynı programa ilişkinbirdenfazlaprosesolabilir. Görev
İşletim Sistemlerine Giriş
Ders Kitapları ve Notlandırma İşletim Sistemlerine Giriş Ahmet Burak Can Hacettepe Üniversitesi [email protected] Ders kitapları İşletim Sistemleri, Ali Saatçi Modern Operating Systems, Andrew Tanenbaum
İşletim Sistemleri (Operating Systems)
İşletim Sistemleri (Operating Systems) 1 İşletim Sistemleri (Operating Systems) Genel bilgiler Ders kitabı: Tanenbaum & Bo, Modern Operating Systems:4th ed., Prentice-Hall, Inc. 2013 Operating System Concepts,
Bölüm 7: Kilitlenme (Deadlocks)
Bölüm 7: Kilitlenme (Deadlocks) Mehmet Demirci tarafından çevrilmiştir. Silberschatz, Galvin and Gagne 2013 Bölüm 7: Kilitlenme (Deadlocks) Sistem modeli Kilitlenme Belirleme Kilitlenme Yönetim Yöntemleri
Sistem Programlama. Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir.
Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir. Kesmeler çağırılma kaynaklarına göre 3 kısma ayrılırlar: Yazılım kesmeleri Donanım
İşletim Sistemlerine Giriş
İşletim Sistemlerine Giriş Bellek Yönetimi (Memory Management) İşletim Sistemlerine Giriş - Ders09 1 SANAL BELLEK(Virtual Memory) Yıllar önce insanlar kullanılabilir olan belleğe sığmayan programlar ile
Bilgisayar İşletim Sistemleri BLG 312
Bilgisayar İşletim Sistemleri BLG 312 İşletim Sistemlerine Giriş Bilgisayar Sistemi uygulama programları derleyici editör komut yorumlayıcı işletim sistemi makina dilinde programlar mikroprogram (ROM da)
Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN
Bilgisayar Mühendisliğine Giriş Yrd.Doç.Dr.Hacer KARACAN İŞLETİM SİSTEMLERİ Bilinen İşletim Sistemleri İşletim Sistemlerinin Görevleri İşletim Sistemlerinin Gelişim Evresi İşletim Sistemi Türleri İşletim
İşletim Sistemlerine Giriş
İşletim Sistemlerine Giriş Süreçler ve İş Parçacıkları(Thread) İşletim Sistemlerine Giriş - Ders03 1 Süreç -Tüm modern bilgisayarlarda bir çok iş aynı anda yapılabilir. *kullanıcı programları çalışır *disk
BTP205 İŞLETİM SİSTEMLERİ
BTP205 İŞLETİM SİSTEMLERİ İşletim sistemi; bilgisayar sistemini oluşturan donanım ve yazılım nitelikli kaynakları kullanıcılar arasında kolay, hızlı ve güvenli bir işletim hizmetine olanak verecek biçimde
Notasyonlar ve Genel Kurallar
Notasyonlar ve Genel Kurallar BSM 445 Kuyruk Teorisi Güz 2014 Yrd. Doç. Dr. Ferhat Dikbıyık Bir kuyruğun temel bileşenleri 1. Varış Prosesi 6. Servis disiplinleri 2. Servis zamanı dağılımı 4. Bekleme yerleri
Bölüm 8: Ana Bellek. Operating System Concepts with Java 8 th Edition
Bölüm 8: Ana Bellek 8.1 Silberschatz, Galvin and Gagne 2009 Bölüm 8: Ana Bellek Arka Plan Bilgisi Yer Değiştirme (Swapping) Bitişik Bellek Yerleşimi (Contiguous Memory Allocation) Sayfalama (Paging) Sayfa
REALTIME LINUX. 3. Linux ve Özgür Yazılım Şenliği Murat Demirten, 16 Mayıs 2004, Ankara
REALTIME LINUX 3. Linux ve Özgür Yazılım Şenliği Murat Demirten, 16 Mayıs 2004, Ankara Bu belgeyi, Free Software Foundation tarafından yayınlanmış bulunan GNU Genel Kamu Lisansının 2 ya da daha sonraki
DERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ. İçerik
DERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ İçerik Mikroişlemci Sistem Mimarisi Mikroişlemcinin yürüttüğü işlemler Mikroişlemci Yol (Bus) Yapısı Mikroişlemci İç Veri İşlemleri Çevresel Cihazlarca Yürütülen İşlemler
İşletim Sistemlerine Giriş
İşletim Sistemlerine Giriş İşletim Sisteminin Tanımı Donanımsal ve Yazılımsal Kaynaklar Kısa Tarihçe Toplu programlama Çoklu programlama İnteraktif sistem Zaman paylaşımlı sistemler İşletim Sisteminin
MAK 1005 Bilgisayar Programlamaya Giriş. BİLGİSAYARA GİRİŞ ve ALGORİTMA KAVRAMI
MAK 1005 Bilgisayar Programlamaya Giriş Uludağ Üniversitesi, Mühendislik Fakültesi Makine Mühendisliği Bölümü BİLGİSAYARA GİRİŞ ve ALGORİTMA KAVRAMI Prof. Dr. Necmettin Kaya 1 KONULAR 1. Bilgisayara giriş,
BENZETİM. Prof.Dr.Berna Dengiz. 4. Ders Modelleme yaklaşımları Benzetim yazılımlarında aranan özellikler M/M/1 Kuyruk Sistemi benzetimi
Prof.Dr.Berna Dengiz 4. Ders Modelleme yaklaşımları Benzetim yazılımlarında aranan özellikler M/M/1 Kuyruk Sistemi benzetimi BENZETİM DİLLERİNDE MODELLEME YAKLAŞIMLARI Tüm benzetim dilleri; ya olay-çizelgeleme
Öğr.Gör. Gökhan TURAN www.gokhanturan.com.tr. Gölhisar Meslek Yüksekokulu
Öğr.Gör. Gökhan TURAN www.gokhanturan.com.tr Gölhisar Meslek Yüksekokulu Bilgisayarın Yapısı Donanım (Hardware): Bir bilgisayara genel olarak bakıldığında; Kasa, Ekran, Klavye, Fare, Yazıcı, Hoparlör,
İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü
İşletim Sistemleri Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, Abraham Silberschatz, Greg Gagne, Peter B. Galvin, Operating System Concepts 9/e, Wiley,
Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ
Ders 10 LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ LINUX de Programlama LINUX işletim sistemi zengin bir programlama ortamı sağlar. Kullanıcılara sistemi geliştirme olanağı sağlar.
EXCEL DE BENZETİM ÖRNEKLERİ BMÜ-422 BENZETİM VE MODELLEME
EXCEL DE BENZETİM ÖRNEKLERİ BMÜ-422 BENZETİM VE MODELLEME GİRİŞ Bu bölümde benzetim için excel örnekleri önerilmektedir. Örnekler excel ile yapılabileceği gibi el ile de yapılabilir. Benzetim örnekleri
İşletim Sistemlerine Giriş
İşletim Sistemlerine Giriş İşletim Sistemleri ve Donanım İşletim Sistemlerine Giriş/ Ders01 1 İşletim Sistemi? Yazılım olmadan bir bilgisayar METAL yığınıdır. Yazılım bilgiyi saklayabilir, işleyebilir
ELN1002 BİLGİSAYAR PROGRAMLAMA 2
ELN1002 BİLGİSAYAR PROGRAMLAMA 2 VERİ YAPILARI Sunu Planı Kendini-gösteren Yapılar Dinamik Bellek Tahsisi Bağlı Listeler Yığınlar Kuyruklar Ağaçlar 1 Veri Yapıları Şu ana kadar, diziler, matrisler ve yapılar
Model Tabanlı Geliştirmede Çevik Süreç Uygulanması
Model Tabanlı Geliştirmede Çevik Süreç Uygulanması Model Tabanlı Geliştirme Model nedir? Object Management Group Model Tabanlı Mimari «Herşey modeldir» Model Kaynak kod MDD Avantajları Daha hızlı yazılım
ELN1001 BİLGİSAYAR PROGRAMLAMA I
ELN1001 BİLGİSAYAR PROGRAMLAMA I DEPOLAMA SINIFLARI DEĞİŞKEN MENZİLLERİ YİNELEMELİ FONKSİYONLAR Depolama Sınıfları Tanıtıcılar için şu ana kadar görülmüş olan özellikler: Ad Tip Boyut Değer Bunlara ilave
DGridSim Gerçek Zamanlı Veri Grid Simülatörü. Yazılım Tasarımı Dokümanı v 1.0.1 01.08.2011. Mustafa Atanak Sefai Tandoğan Doç. Dr.
DGridSim Gerçek Zamanlı Veri Grid Simülatörü Yazılım Tasarımı Dokümanı v 1.0.1 01.08.2011 Mustafa Atanak Sefai Tandoğan Doç. Dr. Atakan Doğan 1. Sistem Mimarisi DGridSim katmanlı bir yapı göz önünde bulundurularak
Makine Öğrenmesi 3. hafta
Makine Öğrenmesi 3. hafta Entropi Karar Ağaçları (Desicion Trees) ID3 C4.5 Sınıflandırma ve Regresyon Ağaçları (CART) Karar Ağacı Nedir? Temel fikir, giriş verisinin bir kümeleme algoritması yardımıyla
Güz Yarıyılı Balıkesir Üniversitesi, Endüstri Mühendisliği Bölümü EMM4129 ÇİZELGELEME
2017-2018 Güz Yarıyılı Balıkesir Üniversitesi, Endüstri Mühendisliği Bölümü EMM4129 ÇİZELGELEME (WSPT, Öncelik Kısıtları, Lawler Algoritması, Johnson Algoritması) Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ Web: http://ikucukkoc.baun.edu.tr
Giriş. İplik Modeli. geleneksel işletim sistemlerinde her prosesin özel adres uzayı ve tek akış kontrolü var.
Giriş 3 İPLİKLER geleneksel işletim sistemlerinde her in özel adres uzayı ve tek akış kontrolü var. aynı adres uzayında birden fazla akış kontrolü gerekebilir aynı adres uzayında çalışan paralel ler gibi
PROGRAMLAMAYA GİRİŞ FONKSİYONLAR
PROGRAMLAMAYA GİRİŞ FONKSİYONLAR Fonksiyonlar C programlama dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya
Java, Python ve Ruby Dillerinin Performans Karşılaştırması
Java, Python ve Ruby Dillerinin Performans Karşılaştırması Çanakkale Onsekiz Mart Üniversitesi Mustafa ŞAHİN Akademik Bilişim 2007 1 Dillerin seçim nedeni Java, Pyton ve Ruby Programlama dillerinin popülerliği
İŞLETİM SİSTEMLERİNE GİRİŞ - 2. Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine
İŞLETİM SİSTEMLERİNE GİRİŞ - 2 Kaynakların Paylaşımı (Resource Sharing) Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine sunar. Bir işletim sisteminde paylaşılan kaynaklar
Bilgisayar İşletim Sistemleri BLG 312
Giriş Bilgisayar İşletim Sistemleri BLG 312 İplikler geleneksel işletim sistemlerinde her prosesin özel adres uzayı ve tek akış kontrolü vardır bazı durumlarda, aynı adres uzayında birden fazla akış kontrolü
Çok işlemli (multitasking) sistemlerde işlemler (process) kısıtlı kaynakları kullanmak zorundadırlar.
Kilitlenme (Deadlock) 2 Çok işlemli (multitasking) sistemlerde işlemler (process) kısıtlı kaynakları kullanmak zorundadırlar. Bir işlem bir kaynak için talepte bulunur. Eğer bu kaynak müsait değilse, işlem
9/22/2014 EME 3105 SİSTEM SİMÜLASYONU. Giriş. Tek Kanallı Kuyruk Sistemi. Kuyruk Sistemlerinin Simulasyonu. Simulasyon Örnekleri Ders 2
EME 3105 SİSTEM SİMÜLASYONU Simulasyon Örnekleri Ders Giriş Bu derste bilgisayar yardımı olmaksızın çalıştırılabilen birkaç simulasyon örneği verilmiştir. Bu örnekler size sistem simulasyonu metodolojisini
Bölüm 3: İşlemler Operating System Concepts with Java 8th Edition 3.1 Silberschatz, Galvin and Gagne 2009
Bölüm 3: İşlemler 3.1 Silberschatz, Galvin and Gagne 2009 Bölüm 3: İşlemler İşlem Kavramı İşlem Zamanlaması (Process Scheduling) İşlemler Üzerindeki Faaliyetler İşlemler Arası İletişim (Interprocess Communication)
Bölüm 3: İşlemler Operating System Concepts with Java 8th Edition 3.1 Silberschatz, Galvin and Gagne 2009
Bölüm 3: İşlemler 3.1 Silberschatz, Galvin and Gagne 2009 Bölüm 3: İşlemler İşlem Kavramı İşlem Zamanlaması (Process Scheduling) İşlemler Üzerindeki Faaliyetler İşlemler Arası İletişim (Interprocess Communication)
Güz Yarıyılı Balıkesir Üniversitesi, Endüstri Mühendisliği Bölümü EMM4129 ÇİZELGELEME
2017-2018 Güz Yarıyılı Balıkesir Üniversitesi, Endüstri Mühendisliği Bölümü EMM4129 ÇİZELGELEME (Moore Algoritması, Öncelik Kısıtları, Lawler Algoritması, Öne Geçmeli Durum) Yrd. Doç. Dr. İbrahim KÜÇÜKKOÇ
İşletim Sistemlerine Giriş 2. Kaynakların Paylaşımı. Öğr.Gör. Dr. Şirin KARADENİZ
İşletim Sistemlerine Giriş 2 Kaynakların Paylaşımı Öğr.Gör. Dr. Şirin KARADENİZ Kaynakların Paylaşımı Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine sunar. Bir işletim sisteminde
BÖLÜM 3 3. İŞLETİM SİSTEMİNİN BAŞLICA ÖZELLİKLERİ
BÖLÜM 3 3. İŞLETİM SİSTEMİNİN BAŞLICA ÖZELLİKLERİ Bir işletim sistemi bir anda yalnızca bir kullanıcının bilgisayarı kullanmasına izin veriyor ve birden çok kullanıcının kullanmasına izin vermiyorsa, böyle
ÜNİT E ÜNİTE GİRİŞ. Algoritma Mantığı. Algoritma Özellikleri PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA
PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA GİRİŞ Bilgisayarların önemli bir kullanım amacı, veri ve bilgilerin kullanılarak var olan belirli bir problemin çözülmeye çalışılmasıdır. Bunun için, bilgisayarlar
Bölüm 13: Giriş-Çıkış (I/O) Sistemleri
Bölüm 13: Giriş-Çıkış (I/O) Sistemleri Mehmet Demirci tarafından çevrilmiştir. Silberschatz, Galvin and Gagne 2013 Bölüm 13: Giriş-Çıkış (I/O) Sistemleri Genel bakış I/O donanımı Uygulama I/O arayüzü Çekirdek
İşletim Sistemlerine Genel Bakış
İşletim Sistemlerine Genel Bakış 1.1 Silberschatz, Galvin and Gagne 2009 İşletim Sistemi Nedir? Bilgisayar donanımı ile bilgisayar kullanıcısı arasında bir ara katman olarak aracılık etmek İşletim sisteminin
Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi
Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Kullanıcıdan aldığı veri ya da bilgilerle kullanıcının isteği doğrultusunda işlem ve karşılaştırmalar yapabilen, veri ya da bilgileri sabit disk,
Disk Çizelgeleme. BTEP205 - İşletim Sistemleri
2 Disk Çizelgeleme Sabit diskler çalışırken içerisindeki plaka sabit bir hızda döner (Ör: 7200 RPM). Disk üzerinden bilgi okumak ve yazmak için, okuma/yazma kafasının gereken iz (track) ve kesim (sector)
İşletim Sistemleri (COMPE 431) Ders Detayları
İşletim Sistemleri (COMPE 431) Ders Detayları Ders Adı İşletim Sistemleri Ders Kodu COMPE 431 Dönemi Ders Uygulama Saati Saati Laboratuar Saati Kredi AKTS Güz 3 2 0 4 4 Ön Koşul Ders(ler)i Dersin Dili
ÜRETİMDE SONLU KAPASİTE ÇİZELGELEME VE YAZILIMIN ÖNEMİ! Üretim ve Planlama Direktörü
ÜRETİMDE SONLU KAPASİTE ÇİZELGELEME BİLAL AKAY Üretim ve Planlama Direktörü 1 Üretim planlama yazılımı denince birçoğumuzun aklına ilk gelen, MRP/ERP grubundaki yazılımlardır. Genellikle Üretim Planlama
Yazılım Destek Hizmeti
Veri sayfası Yazılım Destek Hizmeti HP Care Hizmetleri kapsamında Care Pack ve Sözleşmeli Hizmetler Hizmetin sağladığı avantajlar Sorun çözme amacıyla HP teknik kaynaklarına Yazılım güncellemelerini ayrı
Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU
Bilişim Sistemleri Modelleme, Analiz ve Tasarım Yrd. Doç. Dr. Alper GÖKSU Ders Akışı Hafta 5. İhtiyaç Analizi ve Modelleme II Haftanın Amacı Bilişim sistemleri ihtiyaç analizinin modeli oluşturulmasında,
Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı
Ders 7 LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ 1 LINUX Yapısı LINUX işletim sisteminin diğer işletim sistemleri gibi kendine özgü bir yapısı vardır. LINUX yapısı ve bileşenleri aşağıdaki
HACETTEPE ÜNİVERSİTESİ BİLGİSAYAR ve ÖĞRETİM TEKNOLOJİLERİ EĞİTİMİ BTÖ201- Programlama Dilleri 1 Hazırlayanın; Adı Soyadı Çağdaş KARADEMİR Numarası 20742248 Ders Sorumlusu Hakan Tüzün İçindekiler Problem
ÇOK ÇEKİRDEKLİ İŞLEMCİLER VE PARALEL YAZILIM GELİŞTİRME OLANAKLARI HAKKINDA BİR İNCELEME
ÇOK ÇEKİRDEKLİ İŞLEMCİLER VE PARALEL YAZILIM GELİŞTİRME OLANAKLARI HAKKINDA BİR İNCELEME Ecem İren Halilcan Can Akince Aylin Kantarcı Bilgisayar Müh. Bölümü Bilgisayar Müh. Bölümü Bilgisayar Müh. Bölümü
BM-311 Bilgisayar Mimarisi. Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü
BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Bilgisayar Bileşenleri Bilgisayarın Fonksiyonu Instruction Cycle Kesmeler (Interrupt lar) Bus
Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan
BİLGİ TEKNOLOJİLERİ YÖNETİMİ EĞİTİM MODÜLLERİ Tarih Saat Modül Adı Öğretim Üyesi 01/05/2018 Salı Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan Bu dersin amacı, bilgisayar bilimlerinin temel kavramlarını
İş Sıralama Kuraları -101
/ İş Sıralama Kuralları - 101 1 İş Sıralama Kuraları -101 Bu sunum sadece cengizpak.com.tr site üyeleri içindir Hazırlayan : Cengiz Pak cengizpak.com.tr Avcının Silahı Kullanılabilir Bilgi / İş Sıralama
Dosya Yönetim Sistemi Hazırlayan : mustafa kaygısız Kaynak: megep.meb.gov.tr
Dosya Yönetim Sistemi Hazırlayan : mustafa kaygısız Kaynak: megep.meb.gov.tr İşletim sisteminin dosyaları organize etme ve yönetme için ne kullandığını gösteren ifadedir. Dosya verilerin toplandığı birimlerdir
BİT in Temel Bileşenleri (Yazılım-1)
Ders 4 BİT in Temel Bileşenleri (Yazılım-1) BİLGİ & İLETİŞİM TEKNOLOJİLERİ 1 Yazılım, değişik ve çeşitli görevler yapma amaçlı tasarlanmış elektronik araçların, birbirleriyle haberleşebilmesini ve uyumunu
Algoritma ve Akış Diyagramları
Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir 1 Akış diyagramları
Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi
Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Editör Disk 1)Kaynak kodlar editör aracılığı ile oluşturulur. (.c) Kaynak dosya Önişleyici Disk 2)Önişleyici kodlar içerisindeki ilk işleme işini
İleri İşletim Sistemleri (COMPE 531) Ders Detayları
İleri İşletim Sistemleri (COMPE 531) Ders Detayları Ders Adı İleri İşletim Sistemleri Ders Kodu COMPE 531 Dönemi Ders Uygulama Saati Saati Laboratuar Saati Kredi AKTS Güz 3 0 0 3 7.5 Ön Koşul Ders(ler)i
Giriş. geleneksel işletim sistemlerinde her prosesin. aynı adres uzayında birden fazla akış kontrolü gerekebilir
3 İPLİKLER Giriş geleneksel işletim sistemlerinde her prosesin özel adres uzayı ve tek akış kontrolü var. aynı adres uzayında birden fazla akış kontrolü gerekebilir aynı adres uzayında çalışan paralel
Bilgisayar Programı Nedir?
BİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR Bilgisayar Programı Nedir? Program, bilgisayarda i belirli libir amacı gerçekleştirmek için geliştirilmiş yöntemlerin ve verilerin, bilgisayarındonanımınınyerine
Özyineleme (Recursion)
C PROGRAMLAMA Özyineleme (Recursion) Bir fonksiyonun kendisini çağırarak çözüme gitmesine özyineleme (recursion), böyle çalışan fonksiyonlara da özyinelemeli (recursive) fonksiyonlar denilir. Özyineleme,
İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu
İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu bulunmaktadır; 1. Performans: İşletim sistemi, makine
İŞLETİM SİSTEMLERİ DERSİ 1 İÇİNDEKİLER
1- İŞLETİM SİSTEMİ 1.1 - Giriş 1.1.1 - İşletim Sisteminin Amacı İŞLETİM SİSTEMLERİ DERSİ 1 İÇİNDEKİLER 2-İŞLETİM SİSTEMİNİN TARİHSEL GELİŞİMİ 2.1 - Giriş 2.1.1 - Tamponlama(Buffering) 2.1.2 - Kuyruklama(Spooling)
Bilgisayarda Programlama. Temel Kavramlar
Bilgisayarda Programlama Temel Kavramlar KAVRAMLAR Programlama, yaşadığımız gerçek dünyadaki problemlere ilişkin çözümlerin bilgisayarın anlayabileceği bir biçime dönüştürülmesi / ifade edilmesidir. Bunu
İŞLETİM SİSTEMLERİNE GİRİŞ
İŞLETİM SİSTEMLERİNE GİRİŞ 1 İşletim Sistemlerinin tanımını yapabilecek Bilgisayar teknolojilerini öğrenebilmek ve bu teknolojileri etkin olarak kullanabilmek için, işletim sistemleri konusunu iyi derecede
BELLEK YÖNETY. Bellek Yönetimi
7 BELLEK YÖNETY NETİMİ Bellek Yönetimi Birden fazla prosese yer verilebilecek şekilde belleğin alt birimlere ayrılması Belleğin prosesler arasında atanması etkin olmalı: en fazla sayıda proses 286 Bellek
İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü
İşletim Sistemleri Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, Abraham Silberschatz, Greg Gagne, Peter B. Galvin, Operating System Concepts 9/e, Wiley,
İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar) Öğr.Gör. Dr. Dr. Şirin KARADENİZ
İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar) Öğr.Gör. Dr. Dr. Şirin KARADENİZ Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu bulunmaktadır; Performans:
ALTERNATĐF AKIM (AC) I AC NĐN ELDE EDĐLMESĐ; KARE VE ÜÇGEN DALGALAR
ALTERNATĐF AKIM (AC) I AC NĐN ELDE EDĐLMESĐ; KARE VE ÜÇGEN DALGALAR 1.1 Amaçlar AC nin Elde Edilmesi: Farklı ve değişken DC gerilimlerin anahtar ve potansiyometreler kullanılarak elde edilmesi. Kare dalga
