School/Faculty/Institute Faculty of Engineering
Course Code COMP 205
Course Title in English Systems Programming
Course Title in Turkish Sistem Programlama
Language of Instruction EN
Type of Course Exercise,Flipped Classroom,Lecture
Level of Course Introductory
Semester Fall
Contact Hours per Week
Lecture: 3 Recitation: none Lab: 2 Other: none
Estimated Student Workload 156 hours per semester
Number of Credits 6 ECTS
Grading Mode Standard Letter Grade
Pre-requisites COMP 105 - Computer Programming (C) | COMP 109 - Computer Programming (JAVA)
Co-requisites None
Expected Prior Knowledge Basic programming knowledge
Registration Restrictions Only Undergraduate Students
Overall Educational Objective To learn fundamentals of systems programming concepts and construct basic system software using C programming language on UNIX-based environment.
Course Description This course covers the fundamentals of systems programming concepts such as machine-level representation of programs, processor architecture, memory hierarchy, linking, exceptional control flow, virtual memory, and system-level I/O. Application of these concepts are realized in C programming language on UNIX-based environment.

Course Learning Outcomes and Competences

Upon successful completion of the course, the learner is expected to be able to:
1) temel sistem programlama kavramlarını kavrar;
2) UNIX tabanlı ortamı kullanır;
3) algoritma tasarlamak için C programlama dilini kullanır;
4) Basit mühendislik problemlerini çözmek için temel sistem yazılımları tasarlar.
Program Learning Outcomes/Course Learning Outcomes 1 2 3 4
1) Matematik, tarih, ekonomi ve sosyal bilimlere maruz kalarak geniş bir temele ve entelektüel farkındalığa sahip olmak
2) İşletmenin farklı işlevsel alanlarında (muhasebe, finans, operasyon, pazarlama, strateji ve organizasyon) bilgi ve becerilere sahip olduğunu ve bunların çeşitli endüstri sektörlerindeki etkileşimlerine ilişkin bir anlayışa sahip olduğunu gösterir
3) Karmaşık teknik veya profesyonel faaliyetleri veya projeleri yönetmek için teorik bilginin yanı sıra yaratıcı, analitik ve eleştirel düşünmeyi uygular
4) İşletme sürdürülebilirliği için küresel, çevresel, ekonomik, yasal ve düzenleyici bağlamlara ilişkin bir anlayış sergiler
5) Bireysel ve mesleki etik davranış ve sosyal sorumluluk gösterir
6) Etnik, kültürel ve cinsiyet çeşitliliği değerlerine ve konularına duyarlılık gösterir
7) Bilgi, fikir, sorun ve çözümleri iletmek için yazılı ve sözlü İngilizceyi etkili bir şekilde kullanır (en azından CEFR B2 seviyesi)
8) Veri ve bilgi edinme, analiz etme, yorumlama ve raporlama konusunda beceriler gösterir
9) Problem çözme ve karar vermeyi desteklemek için bilgisayar yeterliliğini gösterir
10) Takım çalışması, liderlik ve girişimcilik becerilerini gösterir
11) Yüksek derecede özerklikle ileri çalışmalar için gerekli öğrenme becerilerini sergiler

Relation to Program Outcomes and Competences

N None S Supportive H Highly Related
     
Program Outcomes and Competences Level Assessed by
1) Matematik, tarih, ekonomi ve sosyal bilimlere maruz kalarak geniş bir temele ve entelektüel farkındalığa sahip olmak N
2) İşletmenin farklı işlevsel alanlarında (muhasebe, finans, operasyon, pazarlama, strateji ve organizasyon) bilgi ve becerilere sahip olduğunu ve bunların çeşitli endüstri sektörlerindeki etkileşimlerine ilişkin bir anlayışa sahip olduğunu gösterir N
3) Karmaşık teknik veya profesyonel faaliyetleri veya projeleri yönetmek için teorik bilginin yanı sıra yaratıcı, analitik ve eleştirel düşünmeyi uygular N
4) İşletme sürdürülebilirliği için küresel, çevresel, ekonomik, yasal ve düzenleyici bağlamlara ilişkin bir anlayış sergiler N
5) Bireysel ve mesleki etik davranış ve sosyal sorumluluk gösterir N
6) Etnik, kültürel ve cinsiyet çeşitliliği değerlerine ve konularına duyarlılık gösterir N
7) Bilgi, fikir, sorun ve çözümleri iletmek için yazılı ve sözlü İngilizceyi etkili bir şekilde kullanır (en azından CEFR B2 seviyesi) S Sunum
8) Veri ve bilgi edinme, analiz etme, yorumlama ve raporlama konusunda beceriler gösterir S Derse Katılım
9) Problem çözme ve karar vermeyi desteklemek için bilgisayar yeterliliğini gösterir N
10) Takım çalışması, liderlik ve girişimcilik becerilerini gösterir S Derse Katılım
11) Yüksek derecede özerklikle ileri çalışmalar için gerekli öğrenme becerilerini sergiler S Derse Katılım
Prepared by and Date BUSE YILMAZ , February 2024
Course Coordinator BUSE YILMAZ
Semester Fall
Name of Instructor

Course Contents

Hafta Konu
1) Sistem Programlamasına ve UNIX tabanlı sistemlere giriş
2) UNIX tabanlı sistemler ve Linux Dağıtımları hakkında daha fazla bilgi
3) Temel UNIX komutları ve sistemde gezinme
4) Kabuk Programlama
5) Kabuk Programlama
6) C Programlama: C Programlamanın Temelleri ve Ara Sınav #1
7) C Programlama: fonksiyonlar
8) C Programlama: işaretçiler ve diziler
9) C Programlama: karakterler ve dizeler
10) C Programlama: Bileşik Veri Türleri
11) C Programlama: Dinamik Bellek Tahsisi ve Ara Sınav #2
12) C Programlama: Dosya İşleme (Sistem Düzeyinde I/O)
13) C Programlama: C ön işlemcisi
14) C Programlama: program organizasyonu ve ileri konular
15) Final Sınavı/Proje/Sunum Dönemi
16) Final Sınavı/Proje/Sunum Dönemi
Required/Recommended ReadingsComputer Systems: A Programmer's Perspective by Randal E. Bryant, David R. O'Hallaron (3rd Edition) Your UNIX/Linux: The Ultimate Guide by Sumitabha Das (3rd Edition) C How to Program by Paul Deitel and Harvey Deitel (8th Edition) Problem Solving and Program Design in C by Hanly & Koffman (7thed.)
Teaching MethodsFlipped classroom. Students work individually for assignments and in groups for the project
Homework and ProjectsLab practices and Homeworks, Project
Laboratory Workyes
Computer UseRequired
Other Activitiesnone
Assessment Methods
Assessment Tools Count Weight
Laboratuar 7 % 20
Küçük Sınavlar 5 % 10
Projeler 1 % 10
Ara Sınavlar 2 % 60
TOTAL % 100
Course Administration yilmazbuse@mef.edu.tr
+90 212 395 3719
Rules for attendance: 70% lecture and lab attendance is mandatory. Missing a lab practice: Lab practices will start at the beginning of each lab session and end at the end of 2-hours period. Any submission not completed by the end of the session will receive partial credit. No grade will be given to a lab practice if the student does not attend that lab session. Provided that proper documents of excuse (e.g., health issues) are presented, each missed lab practice by the student will be given a grade which is equal to the average of all of the other lab practices the student attended. No make-up will be given. Missing the inclass quizzes: No make-up will be given. The student must physically attend the quiz in the class to get any points. No late submissions are allowed. Missing an exam: No make-up for the missed exam will be given. The exam grade will be calculated based on other assessments that are related to the exam topics. A reminder of proper classroom behavior, code of student conduct: YÖK Regulations Statement on plagiarism: YÖK Regulations

ECTS Student Workload Estimation

Activity No/Weeks Hours Calculation
No/Weeks per Semester Preparing for the Activity Spent in the Activity Itself Completing the Activity Requirements
Ders Saati 14 2 3 70
Laboratuvar 5 2 2 20
Sunum / Seminer 1 1 3 4
Proje 5 1 3 20
Ara Sınavlar 2 16 3 38
Rapor Teslimi 1 3 1 4
Total Workload 156
Total Workload/25 6.2
ECTS 6