CEN434 Computer Systems from The Programmer's Perspective

6 AKTS - 3-0 Süre (T+U)- 8. Yarıyıl- 3 Yerel Kredi

Genel Bilgi

Kod CEN434
Ad Computer Systems from The Programmer's Perspective
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
Öğretim Şekli Yüz Yüze Öğretim
Bilgi Paketi Koordinatörü Dr. Öğr. Üyesi SERKAN KARTAL


Dersin Amacı

Bu dersin amacı, tüm bilgisayar sistemlerinin altında yatan önemli ve kalıcı kavramları açıklamak ve bu fikirlerin uygulama programlarının doğruluğunu, performansını ve faydasını etkilemesinin somut yollarını göstermektir.

Dersin İçeriği

Bu kurs, bir programıcın gözünden bilgisayar sistemlerinin programları nasıl çalıştırdığını, bilgiyi nasıl sakladığını ve programların nasıl haberleştiğini sunar. Öğrencilerin özellikle performans, taşınabilirlik ve sağlamlık açısından daha etkili kod geliştirebilen programcılar olmalarını sağlar.Ders; performans değerlendirme ve optimizasyon, bilgisayar aritmetiği, bellek organizasyonu ve yönetimi, ağ teknolojisi ve protokolleri ve eşzamanlı hesaplamayı destekleme konularını kapsamaktadır.

Dersin Ön Koşulu

Temel bilgisayar mimarisi ve C programlama bilgisine sahip olmak

Kaynaklar

Computer Systems: A Programmer's Perspective 3rd Edition by Randal Bryant , David O'Hallaron

Notlar

Brian W. Kernighan and Dennis M. Ritchie, The C Programming Language, Second Edition, Prentice Hall, 1988


Dersin Öğrenme Çıktıları

Sıra Dersin Öğrenme Çıktıları
ÖÇ01 Sayısal değerlerin (işaretsiz, ikinin tümleyeni ve kayan noktalı) bit düzeyinde gösterimlerini, aritmetik ve bit seviyesinde yapılan matematiksel işlemlerin özelliklerini açıklar.
ÖÇ02 Yetersiz bellek ve CPU performansı, çökmeler ve güvenlik açıkları gibi kusurlu sistem kullanımının sonuçlarını analiz eder
ÖÇ03 Proses ve iş parçacığı kontrolü, sanal bellek ve ağ için sistem desteği de dahil olmak üzere programcıların altta çalışan sistemle etkileşimlerini araştırır.
ÖÇ04 Bilgisayar sistemlerinin programları nasıl yürüttüğünü, bilgiyi nasıl depolar ve nasıl iletişim kurdugunu açıklar.


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 3
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 3
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 1
PÖÇ07 Beceriler - Bilişsel, Uygulamalı Bilgiye erişebilme, kaynak araştırması yapabilme ve bilgi kaynaklarını kullanabilme becerisi 2
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 2
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
PÖÇ10 Yetkinlikler - Öğrenme Yetkinliği Mesleki ve etik sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi
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 Bilgilerin Temsili ve Değiştirilmesi Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
2 Tamsayıların Temsili ve Kayan Noktalı Sayılar Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
3 C Programlarının Makine Düzeyinde Gösterimi Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
4 Program Performansını Optimize Etme Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
5 Modern İşlemcileri Anlamak Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
6 Bellek Hiyerarşisi Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
7 Önbellekler Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
8 Ara Sınav Ders notlarının okunması Ölçme Yöntemleri:
Yazılı Sınav
9 Bağlama ve Yükleme Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
10 İstisnai Kontrol Akışı Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
11 Program Yürütme Zamanını Ölçme Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
12 Sanal bellek Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
13 İplikler ile Eşzamanlı Programlama Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
14 Ağ Programlama Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
15 Hata işleme Ders notlarının okunması Öğretim Yöntemleri:
Anlatım, Gösteri
16 Yarıyıl Sonu Sınavları Ders notlarının okunması Ölçme Yöntemleri:
Yazılı Sınav
17 Yarıyıl Sonu Sınavları Ders notlarının okunması Ölçme Yöntemleri:
Yazılı Sınav


Öğ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