Türkçe | English
OF TEKNOLOJİ FAKÜLTESİ / YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ
( I. ÖĞRETİM)
Ders Bilgi Paketi
http://www.ktu.edu.tr/ofyazilim
Tel: +90 0462 3778353
OFTF
OF TEKNOLOJİ FAKÜLTESİ / YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ / ( I. ÖĞRETİM)
Katalog Ana Sayfa
  Katalog Ana Sayfa  KTÜ Ana Sayfa   Katalog Ana Sayfa
 
 

YZM3009Sistem Programlama2+1+0AKTS:4
Yıl / YarıyılGüz Dönemi
Ders DuzeyiLisans
Yazılım ŞekliZorunlu
BölümüYAZILIM MÜHENDİSLİĞİ BÖLÜMÜ
Ön KoşulYok
Eğitim SistemiYüz yüze , Uygulama
Dersin Süresi14 hafta - haftada 2 saat teorik ve 1 saat uygulama
Öğretim ÜyesiÖğr. Gör. Dr Celal ATALAR
Diğer Öğretim Üyesi
Öğretim DiliTürkçe
StajYok
 
Dersin Amacı:
Bu dersin amacı ; Unix işletim üzerindeki bash script üzerinde kod yazımını ve sistem üzerinde bulunan derleyicileri kullanarak (gcc, g++) programlar geliştirmektir. Ek olarak sistem üzerinde belirli bir yönetimi kazandırmayı da hedeflemektedir.
 
Öğrenim KazanımlarıBPKKÖY
Bu dersi başarı ile tamamlayan öğrenciler :
ÖK - 1 : Komut satırından shell çevrelerini yönetebilme1,3
ÖK - 2 : Shell ve sistem komutlarını açıklanabilir.1,3
ÖK - 3 : Çeşitli sistem görevleri için shell scriptleri yazabilir.1,3
ÖK - 4 : Düzenli ifadeleri kullanarak herhangi bir metin dosyası verisini işlenebilir.1,3
ÖK - 5 : Yüksek seviyeli programlama dillerinde programlar yazmak için yazılım geliştirme araçlarını kullanabilir.1,3
ÖK - 6 : C yada C++ programları içerisinden system çağrılarını kullanabilir.1,3
ÖK - 7 : Sistem çağrıları yardımıyla dosya ve süreç alt sistemlerini yönetebilir.1,3
BPKK :Bölüm program kazanımlarına katkı, ÖY : Ölçme ve değerlendirme yöntemi (1: Yazılı Sınav, 2: Sözlü Sınav, 3: Ev Ödevi, 4: Laboratuvar Çalışması/Sınavı, 5: Seminer / Sunum, 6: Dönem Ödevi / Proje),ÖK : Öğrenim Kazanımı
 
Ders İçeriği
1. Unix' e Giriş , Unix Sistem Yapısı ve Komut Sistemi 2. Unix Dosya Sistemi ,Dosya İzinleri 3. Metin Düzenleme Editörleri ve Kullanımı 4. Giriş/ Çıkış Yönlendirme ve Pipe Yapıları 5. Düzenli İfadeler 6. Unix Pencere Sistemi 7. Unix Shell Ortamı ve Shell Çevre Değişkenleri 8. Shell Script Giriş 9. Shell Script Temelleri 10. Gelişmiş Shell Script 11. Yazılım Geliştirme ve Debug 12. Dosya Yönetimi ve Uygulamaları 13. Süreç Yönetimi 14. Temel Unix Sistem Yönetimi
 
Haftalık Detaylı Ders İçeriği
 HaftaDetaylı İçerikÖnerilen Kaynak
 Hafta 1Unix' e Giriş , Unix Sistem Yapısı ve Komut Satırı Sistemi, Unix'in Kısa Tarihi, Bazı Unix Komutları
 Hafta 2Unix Dosya Sistemleri, Unix Dosya Hiyerarşisi, Working ve Home Dizinleri, Dosya Tipleri, Dosya İzinleri, Dosya İçerikleri
 Hafta 3Metin Düzenleme Editörleri ve Kullanımı, vi Editörü ve Komutları
 Hafta 4Giriş/ Çıkış Yönlendirme ve Pipe Yapıları
 Hafta 5Düzenli İfadeler , grep ve egrep Komutları
 Hafta 6Unix Pencere Sistemi
 Hafta 7Unix Shell Ortamı ve Shell Çevre Değişkenleri (PATH, HOME, USER vs), Bash Script, Aliaslar
 Hafta 8Shell Script Giriş, Script Çalıştırma, Shell Değişkenleri (Sayılar, Diziler, Katarlar), Komut Satırı Argümanları, if Deyimi, if-else Deyimi, Mantıksal Operatörler ve Test Komutu, case Deyimi
 Hafta 9Arasınav
 Hafta 10Shell Script Döngüler (for, while, until, select), printf Argümanları ve Formatlı Yazdırma, tee Komutu, Dosya İşaretçisi ile Dosya İlişkendirme, Dosya Okuma
 Hafta 11Shell Script'de Fonksiyon Yazımı ve Kullanımı, Fonksiyonlarda Parametre Geçişleri, Fonksiyonlarda Ortak Veri Kullanımı, echo Komutu, echo Komutunun Parametrelerinin Kullanımı
 Hafta 12Yazılım Geliştirme ve Debug, sed ve awk
 Hafta 13Dosya Yönetimi ve Uygulamaları , Dosya Açma İşlemi (fopen) ve Dosya Açma Argümanları , Dosyaya Yazma (fprintf, fputs, fputc), Dosyadan Okuma (fgets, fgetc), Dosya İçeriğinde Arama (fseek)
 Hafta 14Süreç Yönetimi (ps, top, kill, nice) , Süreç Oluşturma (fork), exec Komutu
 Hafta 15Temel Unix Sistem Yönetimi, Süper Kullanıcı (root), Dosya Sistemi Komutları (mount, umount, fsck, sync)
 Hafta 16Dönem sonu sınavı
 
Ders Kitabı / Malzemesi
1http://courses.cs.vt.edu/~cs2204/summer2004/notes/
2Haviland, K., Gray, D., Salama, B. 1999; UNIX System Programming, 2nd ed., Addison-Wesley, 350 p.
 
İlave Kaynak
1Kochan, S. G., Wood, P. 2003; UNIX Shell Programming, 3rd ed., Sams, 460 p.
2Robbins, K. A., Robbins, S. 1996; Practical UNIX Programming, Prentice Hall, 658 p.
3Michael, R. K. 2003; Mastering UNIX Shell Scripting, Wiley, 680 p.
 
Ölçme Yöntemi
YöntemHaftaTarih

Süre (Saat)Katkı (%)
Arasınav 9 1 50
Dönem sonu sınavı 16 2 50
 
Öğrenci Çalışma Yükü
İşlem adıHaftalık süre (saat)

Hafta sayısı

Dönem toplamı
Yüz yüze eğitim 3 14 42
Sınıf dışı çalışma 1 14 14
Arasınav için hazırlık 3 4 12
Arasınav 1 1 1
Dönem sonu sınavı için hazırlık 4 6 24
Dönem sonu sınavı 2 1 2
Toplam Çalışma Yükü95