DERS BİLGİ PAKETİ · INF333

İşletim Sistemleri

Zorunlu · Fransızca
AKTS
5
Yerel Kredi
3
Teori + Uygulama + Lab
2 + 0 + 2
Dersin Düzeyi
Lisans
Ön Koşul
INF116
Yarıyıl
6

İçerik

Dersin Amacı

İşlem (process), hafıza yönetimi, giriş/çıkış yönetimi, dosya sistemleri ve işlemler arası iletişim/senkronizasyon kavramları ve bellek yönetimi konuları üzerinde durulur. Derste işlenen bilgileri uygulamaya geçirmek için yapılan laboratuvar çalışmalarında C programlama dili kullanılır.

Dersin İçeriği

1. Giriş, OS türleri, Temel Kavramlar, Dersin Kapsamı
2. Temel OS bileşenleri, donanım sınıfları, dosya sistemleri
3. Process, Thread, Sistem Çağrıları, Sistemsel ve İçsel Bağlam Takaslama,
4. Temel Senkronizasyon Araçları, Üreten/Tüketen yapısı
5. Zamanlama
6. Güvenlik, Koruma
7. Vize haftası
8. Sanal Bellek I
9. Sanal Bellek II
10. Etkin Önbellek yönetimi, Tutarlılık ve İnsicam
11. Yüksek Performanslı Kilitler, Adil Zamanlama, Karşılıklı kilitlenme
12. Dinamik Bellek Yönetimi
13. Bağlama, Dinamik Kütüphaneler, Deployment
14. OS veya Donanım destekli tecrit

Dersin Öğrenme Çıktıları

Bu dersi başarıyla tamamlayan öğrenci aşağıdaki konularda yetkinlik kazanır:

1. Standart bir işletim sisteminin işleyişini açıklayabilme yetisi,
2. Alt seviye C POSIX kullanabilme ve programlayabilme becerisi,
3. Çoklu-işlem programlamayı açıklayabilme ve kullanma yetisi,
4. Süreçler arası senkronizasyon gerekliliklerini analiz etme, açıklayabilme ve uygulama becerisi,
5. Etkin bellek yönetimi yetisi,

Öğretim Yöntemleri

Anlatım, Tartışma, Gösterip Yaptırma, Örnek Olay, Problem Çözme, İşbirlikli Öğrenme, Proje, Beyin Fırtınası

Kaynaklar

Kitap: Operating System Concepts, 10th Ed. Silberschatz, Galvin, Gagne
Ders Notlari: https://burakarslan.com/inf333
Ders Projesi: https://pintos-os.org/

Konu Başlıkları

Teori Konu Başlıkları
Hafta Konu Başlıkları
1 Giriş, OS türleri, Temel Kavramlar, Dersin Kapsamı
2 Temel OS bileşenleri, donanım sınıfları, dosya sistemleri
3 Process, Thread, Sistem Çağrıları, Sistemsel ve İçsel Bağlam Takaslama,
4 Temel Senkronizasyon Araçları, Üreten/Tüketen yapısı
5 Zamanlama
6 Güvenlik, Koruma
7 Vize haftası
8 Sanal Bellek I
9 Sanal Bellek II
10 Etkin Önbellek yönetimi, Tutarlılık ve İnsicam
11 Yüksek Performanslı Kilitler, Adil Zamanlama, Karşılıklı kilitlenme
12 Dinamik Bellek Yönetimi
13 Bağlama, Dinamik Kütüphaneler, Uygulama Yayınlama
14 OS veya Donanım destekli Tecrit
Uygulama Konu Başlıkları
Hafta Konu Başlıkları
1 Linux Temelleri I
2 Linux Temelleri II
3 Pintos’a Giriş
4 Süreç, İş Parçacığı
5 Bağlam Değiştirme
6 Mutex
7 Vize Haftası
8 Pintos II
9 Üreten/Tüketen Yapısı
10 Semafor
11 Semafor II
12 Mutex Kuyruğu Yönetimi
13 Paylaşımlı Mutex
14 Ölü Kilitlenme

Değerlendirme Sistemi

Başarı Notuna Etki Oranları
Etkinlikler Sayı Katkı Payı
Yarıyıl içi çalışmaların başarı notuna katkısı 4 60
Yarıyıl sonu çalışmaların başarı notuna katkısı 1 40
Toplam 5 100
Yarıyıl İçi Çalışmaları
Etkinlikler Sayı Katkı Payı
Ödevler 0 0
Sunum 0 0
Arasınavlar (Hazırlık Süresi Dahil) 1 15
Proje 2 30
Laboratuar 1 15
Diğer Uygulamalar 0 0
Kısa Sınavlar 0 0
Dönem Ödevi / Projesi 0 0
Portfolyo Çalışmaları 0 0
Raporlar 0 0
Öğrenme Günlükleri 0 0
Bitirme Tezi/Projesi 0 0
Seminer 0 0
Diğer 0 0
Bütünleme 0 0
Toplam 4 60

Yeterlilik İlişkisi

Numara Program Yeterlilikleri Puan
1 2 3 4 5
1 Matematik, fizik ve mühendislik bilimlerine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, mühendislik problemlerinin modellenmesi ve çözümünde kullanabilme becerisi. X
2 Karmaşık bilgisayar mühendisliği problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi. X
3 Yazılımsal veya donanımsal karmaşık bir sistemi, süreci veya donanımı gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi. X
4 Mühendislik uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi. X
5 Analitik düşünce ile bir sistemi, sistem bileşenini ya da süreci analiz etme, modelleme, deney tasarlama ve yapma, veri toplama, çözüm algoritmaları üretebilme, uygulamaya alma ve geliştirme becerileri. X
6 Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. X
7 Türkçe sözlü ve yazılı etkin iletişim kurma becerisi; en az iki yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, yazılım ve donanım tasarımını, gerekirse teknik resim metotları kullanarak raporlayabilme, etkin sunum yapabilme becerisi. X
8 Bilgiye erişebilme ve bu amaçla kaynak araştırması yapabilme, veri tabanları ve diğer bilgi kaynaklarını kullanabilme becerisi X
9 Yaşam boyu öğrenmenin gerekliliği bilinci; kendini sürekli yenileme becerisi. X
10 Mesleki etik ilkelerine uygun davranma, mesleki sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi. X
11 Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi. X

AKTS - İş Yükü Tablosu

Etkinlikler Sayı Süre Toplam İş Yükü
Ders Süresi 13 2 26
Sınıf Dışı Çalışma Süresi 13 2 26
Ödevler 0 0 0
Sunum 0 0 0
Arasınavlar (Hazırlık Süresi Dahil) 0 0 0
Proje 2 20 40
Laboratuar 1 26 26
Diğer Uygulamalar 0 0 0
Yarıyıl Sonu Sınavı (Hazırlık Süresi Dahil) 1 10 10
Kısa Sınavlar 0 0 0
Dönem Ödevi / Projesi 0 0 0
Portfolyo Çalışmaları 0 0 0
Raporlar 0 0 0
Öğrenme Günlükleri 0 0 0
Bitirme Tezi/Projesi 0 0 0
Seminer 0 0 0
Diğer 0 0 0
Bütünleme 0 0 0
Ts Yıl Sonu 0 0 0
Hazırlık Yıl Sonu 0 0 0
Hazırlık Bütünleme 0 0 0
Toplam İş Yükü 128
Toplam İş Yükü / 25 5.12
Dersin AKTS Kredisi 5