Slide background
Mersin Üniversitesi

Ders Bilgileri

SİSTEM PROGRAMLAMA
Kodu Dönemi Teori Uygulama Ulusal Kredisi AKTS Kredisi
Saat / Hafta
BM301 Güz 3 2 4 6
Ön Koşulu Olan Ders( ler ) BM208 İşletim Sistemleri (Alma koşulu) – CE208 Operating Systems (Alma Koşulu)
Dili tr
Türü Zorunlu
Seviyesi Lisans
Öğretim Elemanı( ları ) Doç.Dr. Zeki YETGİN
Öğretim Sistemi Yüz Yüze
Önerilen Hususlar Dersi alanların temel işletim sistemleri bilgisine sahip olması gerekir.
Staj Durumu Yok
Amacı Öğrencilerin İşletim Sistemine sunulan servisler ve Donanıma sunulan servisler geliştirebilmeleri için altyapı oluşturmaktır.
İçeriği Sistem Programlamanın alanı ve görevleri, Unix ve Windows mimarileri, servisleri ve özellikleri, bir programın yazılımındaki adımlar, önderleyici, makrolar, derleyici ve birleştirici, kabuk ortamları ve kabuk programlama, sistem çağrıları ve kütüphane çağrıları, İşlemler, üst ve alt İşlemler, işlemler arası eşzamanlılık, çoklu-programlama ve iş parçacıkları, disk işlemleri, bellek işlemleri ve sanal bellek, işlemler arası iletişim, dosyalar, geçitler, mesaj kuyrukları, ortak bellek, sinyaller ve semaforlar, soketler, udp ve tcp soketleri, uzaktan yordam çağrısı, işlemler arası iletişimle istemci-sunucu mimarileri, uzaktan yordam çağrısı, işletim sistemi özelleştirme, aygıt sürücü geliştirme

Dersin Öğrenim Çıktıları

# Öğrenim Çıktıları
1 İşletim sistemine ait belli görevleri yerine getirecek programlama yapabilir.
2 İşletim Sistemine sunulan servisler ve Donanıma sunulan servisler geliştirebilir.
3 Bir sisteme ait kaynakları programlama yoluyla yönetebililir
4 Hedef platforma göre, bir sistemin gereksinim analizini yapabililir.
5 Hedef platforma göre bir sistem tasarımı yapabilir.

Haftalık Ayrıntılı Ders İçeriği

# Konular Öğretim Yöntem ve Teknikleri
1 Sistem Programlamanın alanı ve görevleri : Sistem Progralamanın geleneksel alanları. Bir OS ortamında Sistem Programlama. Unix ve Windows tarihi, mimarisi, servisleri ve özellikleri Anlatım, Tartışma
2 Unix ortamında bir program. Bir programın yazılımındaki adımlar. Ön-derleyici, Makrolar, Derleyici, Modüller, Birleştirici. Komut satırı parametreleri, Ortam parametreleri, Kabuk Programlama Anlatım, Tartışma
3 Sistem Çağrıları, önemi ve sınıflanması. Sistem çağrıları ve kütüphane çağrıları. İşlemler Arası İletişim (IPC) ve Ağ Programlama için Sistem Çağrıları. UNIX te sistem ve kütüphane çağrıları, genel yapısı ve arabirimleri. Anlatım, Tartışma
4 İşlemler. UNIX te İşlemlerin yaratılması. Ana işlem ve Üst ve Alt İşlemler. Anlatım, Tartışma
5 İşlemlerin kullanılması. Fork() sistem çağrısı. Exec() ailesi sistem çağrıları. Ana işlem ve Alt İşlem arasındaki senkronizasyonlar : system(), wait() , exit(), v.b Anlatım, Tartışma
6 Çoklu-Programlama ve İş Parçacıkları(Thread) temelleri Anlatım, Tartışma
7 Disk işlemleri. I/O dizin ve dosya sistemi işlemleri. Sanal Bellek Anlatım, Tartışma
8 İşlemler Arası İletişim (IPC) : amacı ve sistem programlamadaki kullanımı. IPC mekanizmaları. Geçitler (pipe) olarak IPC: adlandırılmış ve adlandırılmamış geçitler. Anlatım, Tartışma
9 ARA SINAV Ölçme ve Değerlendirme
10 Mesaj Kuyrukları Anlatım, Tartışma
11 Sinyaller, Semaforlar ve Ortak Bellek Anlatım, Tartışma
12 Soketler ve IPC için kullanımı.UDP ve TCP soketleri. Network Programlama Anlatım, Tartışma
13 RPC (Uzaktan Yordam Çağrısı) Anlatım, Tartışma
14 İşletim Sistemi özelleştirme, Aygıt sürücü geliştirme demo uygulamalar Anlatım, Tartışma
15 DÖNEM SONU SINAVI Ölçme ve Değerlendirme
16

Resources

# Malzeme / Kaynak Adı Kaynak Hakkında Bilgi Referans / Önerilen Kaynak
1 İşletim Sistemleri ve Sistem Programlama Mutlu Avcı
2 UNIX/LINUX Sistem Programla Ders Notları 2002, C ve Sistem Programcılar Derneği

Ölçme ve Değerlendirme Sistemi

# Ağırlık Çalışma Türü Çalışma Adı
1 0.2 1 1. Ara Sınav
2 0.2 11 1. Laboratuar
3 0.6 5 Son Sınav

Dersin Öğrenim Çıktıları ve Program Yeterlilikleri ile İlişkileri

# Öğrenim Çıktıları Program Çıktıları Ölçme ve Değerlendirme
1 İşletim sistemine ait belli görevleri yerine getirecek programlama yapabilir. 4͵5 1͵2͵3
2 İşletim Sistemine sunulan servisler ve Donanıma sunulan servisler geliştirebilir. 4͵5 1͵2͵3
3 Bir sisteme ait kaynakları programlama yoluyla yönetebililir 4͵5͵6 1͵2͵3
4 Hedef platforma göre, bir sistemin gereksinim analizini yapabililir. 3͵4͵5͵6 1͵2͵3
5 Hedef platforma göre bir sistem tasarımı yapabilir. 3͵4͵5͵6 1͵2͵3

Not: Ölçme ve Değerlendirme sütununda belirtilen sayılar, bir üstte bulunan Ölçme ve Değerlerndirme Sistemi başlıklı tabloda belirtilen çalışmaları işaret etmektedir.

İş Yükü Detayları

# Etkinlik Adet Süre (Saat) İş Yükü
0 Ders Süresi 14 5 70
1 Sınıf Dışı Ders Süresi (Ön çalışma, pekiştirme) 14 3 42
2 Sunum ve Seminer Hazırlama 0 0 0
3 İnternette tarama, kütüphane ve arşiv çalışması 0 0 0
4 Belge/Bilgi listeleri oluşturma 0 0 0
5 Atölye 8 4 32
6 Ara Sınav için Hazırlık 0 0 0
7 Ara Sınav 1 8 8
8 Kısa Sınav 0 0 0
9 Ödev 0 0 0
10 Ara Proje 0 0 0
11 Ara Uygulama 0 0 0
12 Son Proje 0 0 0
13 Son Uygulama 0 0 0
14 Son Sınav için Hazırlık 0 0 0
15 Son Sınav 1 10 10
162