Türkçe|English  
  KTU Course Catalogue  
Arama Yapmak İstediğiniz Anahtar Kelimeyi Giriniz :       
OF TEKNOLOJİ FAKÜLTESİ / YAZILIM MÜHENDİSLİĞİ
  Genel Bilgiler
  Yönetim
  Amaç ve Öğrenme Çıktıları
  Akademik Personel
  Ders Programı
     1. Yıl
     2. Yıl
     3. Yıl
     4. Yıl
   Öğrenme Çıktıları Matrisi
 
  Doktora Programları
  Yüksek Lisans Programları
  Lisans Programları
  Meslek Yüksek Okulları
 
  Geri
  Ana Sayfa
  KTÜ Ana Sayfa

YZM3009 SİSTEM PROGRAMLAMA 2+1+0 ECTS:4
Yıl / Yarıyıl3. Yıl / Güz Dönemi
Ders DuzeyiLisans
Yazılım ŞekliZorunlu
BolumuYazılım Mühendisliği Bölümü
Ön KoşulYok
Öğretim SistemiYüz yüze , Grup çalışması, Laboratuar Çalışması
Dersin suresi14 hafta - haftada 2 saat teorik ve 1 saat uygulama
Öğretim ÜyesiÖĞR. GÖR. Celal ATALAR
Diğer Öğretim Üyesi / ÜyeleriÖĞR. GÖR. CELAL ATALAR
Öğretim Dili Tü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.
 

Öğrenme Çıktıları

BPÇK

ÖY

Bu dersi başarı ile tamamlayan öğrenciler :

ÖÇ - 1 :

Komut satırından shell çevrelerini yönetebilme

ÖÇ - 2 :

Shell ve sistem komutlarını açıklanabilir.

ÖÇ - 3 :

Çeşitli sistem görevleri için shell scriptleri yazabilir.

ÖÇ - 4 :

Düzenli ifadeleri kullanarak herhangi bir metin dosyası verisini işlenebilir.

ÖÇ - 5 :

Yüksek seviyeli programlama dillerinde programlar yazmak için yazılım geliştirme araçlarını kullanabilir.

ÖÇ - 6 :

C yada C++ programları içerisinden system çağrılarını kullanabilir.

ÖÇ - 7 :

Sistem çağrıları yardımıyla dosya ve süreç alt sistemlerini yönetebilir.

BPÇK : Bölüm program çıktıları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), ÖÇ : Öğrenme Çıktısı

 

Dersin İç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

 Hafta

Detaylı İçerik

Önerilen Kaynak

 Hafta 1

Unix' e Giriş , Unix Sistem Yapısı ve Komut Satırı Sistemi, Unix'in Kısa Tarihi, Bazı Unix Komutları

 Hafta 2

Unix Dosya Sistemleri, Unix Dosya Hiyerarşisi, Working ve Home Dizinleri, Dosya Tipleri, Dosya İzinleri, Dosya İçerikleri

 Hafta 3

Metin Düzenleme Editörleri ve Kullanımı, vi Editörü ve Komutları

 Hafta 4

Giriş/ Çıkış Yönlendirme ve Pipe Yapıları

 Hafta 5

Düzenli İfadeler , grep ve egrep Komutları

 Hafta 6

Unix Pencere Sistemi

 Hafta 7

Unix Shell Ortamı ve Shell Çevre Değişkenleri (PATH, HOME, USER vs), Bash Script, Aliaslar

 Hafta 8

Shell 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 9

Arasınav

 Hafta 10

Shell 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 11

Shell 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 12

Yazılım Geliştirme ve Debug, sed ve awk

 Hafta 13

Dosya 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 14

Süreç Yönetimi (ps, top, kill, nice) , Süreç Oluşturma (fork), exec Komutu

 Hafta 15

Temel Unix Sistem Yönetimi, Süper Kullanıcı (root), Dosya Sistemi Komutları (mount, umount, fsck, sync)

 Hafta 16

Dö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öntem

Hafta

Tarih

Süre (Saat)

Katkı (%)

Arasınav

9

2

50

Dönem sonu sınavı

16

2

50

 

Öğrenci İş Yükü

İşlem adı

Haftalık süre (saat)

Hafta sayısı

Dönem toplamı

Yüz yüze eğitim

2

14

28

Sınıf dışı çalışma

2

10

20

Arasınav için hazırlık

4

4

16

Arasınav

1

2

2

Uygulama

1

14

14

Dönem sonu sınavı için hazırlık

4

6

24

Dönem sonu sınavı

1

2

2

Toplam iş yükü

106