CENG 521

İleri İşletim Sistemleri

İşletim sistemleri alanında son yapılan araştırma çalışmaları değerlendirilir. Konular; sanal bellek yönetimi, senkronizasyon ve iletişim, dosya sistemleri, koruma ve güvenlik, işletim sistemi yapıları ve ileri teknikler, hata toleransı, ve sistem programlamada tarihsel ve deneyimsel gelişim sürecidir.

Dersin Amacı

İşletim sistemlerinde tarihsel olarak gerçekleşen değişimi, gereksinim nedenlerini ve ilgili kuramları öğretme. İşletim sistemleri tasarım ve geliştirme deneyimini kazandırma. Bilgisayar bilimlerinin güncel değerlendirilen konularını, kavramlarını ve araştırma problem ve alanlarının öğretilmesi.

Kaynakça

Yee, Sehr, Dardyk, Chen, Muth, Ormandy, Okasaka, Narula, Fullagar / Ben Hawkes, Native Client: A Sandbox for Portable, Untrusted x86 Native Code Exploiting Native Client ,Dersin belirlenmiş bir kitabı yoktur. Öğrencilerin verilen sırada makale/bildirileri okuyarak derse gelmeleri beklenir. ,Richard Gabriel, The Rise of “Worse is Better” ,Savage, Burrows, Nelson, Sobalvarro, and Anderson, Eraser: A Dynamic Data Race Detector for Multithreaded Programs ,Butler Lampson,Experience with Processes and Monitors in Mesa ,Hans-J. Boehm,Threads cannot be implemented as a library ,Ousterhout, von Behren, and Adya, Cooperative Task Management without Manual Stack Management, Why Threads Are A Bad Idea, Why Events Are A Bad Idea ,Navarro, Iyer, Druschel, and Cox, Practical, Transparent, Operating System Support for Superpages ,Waldspurger,Memory Resource Management in VMware ESX Server ,Rinard, Cadar, Dumitran, Roy, Leu, Beebee, Enhancing Server Availability and Security Through Failure-Oblivious Computing ,Adams and Agesen, A Comparison of Software and Hardware Techniques for x86 Virtualization ,Rosenblum and Ousterhout, The Design and Implementation of a Log-Structured File System ,Nightingale, Veeraraghavan, Chen, Flinn, Rethink the Sync (slides) ,Mogul and Ramakrishnan, Eliminating Receive Livelock in an Interrupt-Driven Kernel ,Sandberg et al. / Gray and Cheriton, Design and Implementation of the SUN Network Filesystem Leases: An Efficient Fault-Tolerant Mechanism for Distributed File Cache Consistency ,Muthitacharoen, Chen, and Mazieres, A Low-Bandwidth Network File System ,Dean and Ghemawat / DeWitt and Stonebraker, MapReduce: Simplified Data Processing on Large Clusters MapReduce: A major step backwards ,Bessey, Block, Chelf, Chou, Fulton, Hallem, Henri-Gros, Kamsky, McPeak, A Few Billion Lines of Code Later: Using Static Analysis to Find Bugs in the Real World.

Öğrenme Çıktıları

1. Yeni teknolojilerle gelen değişiminin, işletim sistemlerinde oluşturduğu gereksinimleri analiz etme, modelleme becerisine sahip olma.

2. Yeni işletim sistemi mimarisi tasarlama ve uygulama becerisine sahip olmak.

3. Bilgisayar bilimlerinde gelecek çalışma ve araştırma alanlarını belirleyecek vizyon ve karar verme kabiliyetine sahip olmak.

4. Yeni işletim sistemlerinin mimari tasarımlarını analiz etme ve karşılaştıma becerisine sahip olma.

Konu
“Daha kötü daha iyidir”in yükselişi
“Silici: Çok thread li programlarda veriye erişim yarışlarını dinamik tespit edici”
Mesa da süreçler ve monitörlerle deneyim
Thread ler kütüphane olarak uygulanamazlar
Elle yığın yönetimi olmadan birlikte yürütülen görevlerin yönetimi
Supersayfaları destekleyen pratik, şeffaf işletim sistemi
VMware ESX Sunucularında bellek kaynak yönetimi
Hata-habersiz hesaplama aracılığıyla sunucu kullanılabilirliği ve güvenliği arttırmak
x86 sanallaştırmada yazılım ve donanım tekniklerinin karşılaştırılması
Log-yapısında dosya sistem tasarım ve uygulaması
Senkronizasyonun tekrar düşünülmesi
Kesme-sürücülü çekirdekte kilitlenmenin eliminasyonu
Dağıtık cache bellek tutarlılığı için etkin hata tolerans mekanizması
Düşük-bant genişliğinde ağ dosya sistemi

Notlandırma

Vize: 30%

Uygulama: 40%

Final: 30%