Genel Bilgi
Kod | CEN428 |
Ad | Systems Programming |
Dönem | 2023-2024 Eğitim-Öğretim Yılı |
Yarıyıl | 8. Yarıyıl |
Süre (T+U) | 3-0 (T-U) (17 Hafta) |
AKTS | 6 AKTS |
Yerel Kredi | 3 Yerel Kredi |
Eğitim Dil | İngilizce |
Seviye | Lisans Dersi |
Tür | Normal |
Etiket | S Seçmeli |
Öğretim Şekli | Yüz Yüze Öğretim |
Bilgi Paketi Koordinatörü | Dr. Öğr. Üyesi Barış ATA |
Dersin Öğretim Elemanı |
Güncel dönem ders programı henüz yapılmamıştır. |
Dersin Amacı / Hedefi
Öğrenciye, bir bilgisayarın işletim sistemi ve donanımıyla doğrudan etkileşime giren düşük seviyeli programlar yazma sürecini tanıtma ve öğrencinin bir ekip ortamında büyük uygulamalar oluşturma becerisini geliştirme.
Dersin İçeriği
Sistem programlarının uygulanması, bilgisayar işletim sistemleri kavramları; Işletim sistemi özelliklerini kullanmada laboratuar tecrübesi.
Dersin Ön Koşulu
Yok
Kaynaklar
Linux System Programming Talking Directly to the Kernel and C Library, Robert Love
Notlar
The Linux Command Line, 2nd Edition, William Shotts, 2019
Dersin Öğrenme Çıktıları
Sıra | Dersin Öğrenme Çıktıları |
---|---|
ÖÇ01 | Alt düzey dosya G / Ç ve dizin işlemleri yapmak için işletim sistemi özelliklerini doğrudan kullanan programları tasarlamak |
ÖÇ02 | Eşzamanlı programlama problemlerini çözmek için modern bir OS API'si ile süreç oluşturma, senkronizasyon ve iletişim kavramlarını anlamak |
ÖÇ03 | Sistemle ilgili programları tasarlamak |
ÖÇ04 | Kabuk komutlarını kullanarak temel dosya yönetimini gerçekleştirmek |
Program Öğrenme Çıktıları ile İlişkisi
Sıra | Tür | Program Öğrenme Çıktıları | Duzey |
---|---|---|---|
PÖÇ01 | Bilgi - Kuramsal, Olgusal | 1. Matematik, fen bilimleri ve bilgisayarla ilgili mühendislik konularında yeterli altyapıya sahip olma; bu alanlardaki kuramsal bilgileri beraber kullanabilme | 4 |
PÖÇ02 | Bilgi - Kuramsal, Olgusal | 2. Karmaşık mühendislik problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analitik yöntemler ve modelleme tekniklerini seçme ve uygulama | 4 |
PÖÇ03 | Bilgi - Kuramsal, Olgusal | 3. Karmaşık bir sistemi, sistem bileşenini ya da süreci analiz etme ve istenen gereksinimleri karşılamak üzere gerçekçi kısıtlar altında tasarlama becerisi; bu doğrultuda modern tasarım yöntemlerini uygulama becerisi | 4 |
PÖÇ04 | Bilgi - Kuramsal, Olgusal | 4. Mühendislik uygulamaları için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin kullanma becerisi | 4 |
PÖÇ05 | Bilgi - Kuramsal, Olgusal | 5. Karmaşık bilgisayar mühendisliği problemlerin çözümüne ilişkin deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi | 3 |
PÖÇ06 | Bilgi - Kuramsal, Olgusal | Bireysel olarak ve disiplin içi/çok disiplinli takımlarda etkin çalışabilme becerisi, sorumluluk alma ve özgüven | 3 |
PÖÇ07 | Beceriler - Bilişsel, Uygulamalı | Bilgiye erişebilme, kaynak araştırması yapabilme ve bilgi kaynaklarını kullanabilme becerisi | 3 |
PÖÇ08 | Beceriler - Bilişsel, Uygulamalı | Yaşam boyu öğrenmenin gerekliliği bilinci; bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi | 3 |
PÖÇ09 | Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği | 9. Türkçe sözlü ve yazılı etkin iletişim kurma, ve en az bir yabancı dilde teknik yayın okuyup anlayabilme, rapor hazırlama ve sunum yapma becerisi | 3 |
PÖÇ10 | Yetkinlikler - Öğrenme Yetkinliği | Mesleki ve etik sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi | 2 |
PÖÇ11 | Yetkinlikler - Öğrenme Yetkinliği | 11. Proje yönetimi, işyeri uygulamaları, çalışanların sağlığı, çevre ve iş güvenliği, ve mühendislik uygulamalarının hukuksal sonuçları hakkında farkındalık | |
PÖÇ12 | Yetkinlikler - Öğrenme Yetkinliği | 12. Mühendislik çözümlerinin ve uygulamalarının evrensel ve toplumsal boyutlardaki etkileri, girişimcilik ve yenilikçilik, ve çağın sorunları hakkında bilgi sahibi olmak |
Haftalık Akış
Hafta | Konu | Ön Hazırlık | Yöntemler |
---|---|---|---|
1 | Programlama Kavramlarının Gözden Geçirilmesi | Konu ile ilgili kaynakların ve ders notlarının okunması | |
2 | İşletim Sistemleri- Temel Bilgiler | Konu ile ilgili kaynakların ve ders notlarının okunması | |
3 | İşaretler ve Süreçler | Konu ile ilgili kaynakların ve ders notlarının okunması | |
4 | Kontrol Akışları | Konu ile ilgili kaynakların ve ders notlarının okunması | |
5 | Sistem Seviyesi G / Ç | Konu ile ilgili kaynakların ve ders notlarının okunması | |
6 | Mesaj Geçen | Konu ile ilgili kaynakların ve ders notlarının okunması | |
7 | Sistem Zamanlayıcıları | Konu ile ilgili kaynakların ve ders notlarının okunması | |
8 | Ara Sınav | Konu ile ilgili kaynakların ve ders notlarının okunması | |
9 | Sanal bellek | Konu ile ilgili kaynakların ve ders notlarının okunması | |
10 | Dinamik Bellek Ayırımı | Konu ile ilgili kaynakların ve ders notlarının okunması | |
11 | Ağ İşlemleri | Konu ile ilgili kaynakların ve ders notlarının okunması | |
12 | Ağ Programlama | Konu ile ilgili kaynakların ve ders notlarının okunması | |
13 | işlemler arası iletişim | Konu ile ilgili kaynakların ve ders notlarının okunması | |
14 | Thread'ler ve Eşzamanlı Programlama | Konu ile ilgili kaynakların ve ders notlarının okunması | |
15 | Final Sınavı | Konu ile ilgili kaynakların ve ders notlarının okunması | |
16 | Yarıyıl Sonu Sınavları | Değerlendirme | |
17 | Yarıyıl Sonu Sınavları | Değerlendirme |
Öğrenci İş Yükü - AKTS
Çalışmalar | Sayısı | Süresi (Saat) | İş Yükü (Saat) |
---|---|---|---|
Ders ile İlgili Çalışmalar | |||
Ders (Sınav haftaları dahil değildir) | 14 | 3 | 42 |
Sınıf Dışı Ders Çalışma (Ön çalışma, pekiştirme) | 14 | 5 | 70 |
Değerlendirmeler ile İlgili Çalışmalar | |||
Ödev, Proje, Diğer | 0 | 0 | 0 |
Ara Sınavlar (Yazılı, Sözlü, vs.) | 1 | 15 | 15 |
Yarıyıl/Yıl Sonu/Final Sınavı | 1 | 30 | 30 |
Toplam İş Yükü (Saat) | 157 | ||
Toplam İş Yükü / 25 (s) | 6,28 | ||
AKTS | 6 AKTS |