CEN479 Introduction to Systems Programming

6 ECTS - 3-0 Duration (T+A)- 7. Semester- 3 National Credit

Information

Code CEN479
Name Introduction to Systems Programming
Term 2024-2025 Academic Year
Semester 7. Semester
Duration (T+A) 3-0 (T-A) (17 Week)
ECTS 6 ECTS
National Credit 3 National Credit
Teaching Language İngilizce
Level Lisans Dersi
Type Normal
Label E Elective
Mode of study Yüz Yüze Öğretim
Catalog Information Coordinator
Course Instructor
1


Course Goal / Objective

Understanding operations on UNIX system, developing small scale system programs

Course Content

Program structure, pointers and memory allocation, shell and shell scripting, Introduction to UNIX system programming, Writing a Shell, Thread Applications, Socket Programming, Web server application, Programming Optimization

Course Precondition

There are no prerequisites.

Resources

Leland L. Beck, System software: an introduction to systems programming (2nd ed.), ISBN:978-0-201-50945-8

Notes

Leland L. Beck, System software: an introduction to systems programming (2nd ed.), ISBN:978-0-201-50945-8


Course Learning Outcomes

Order Course Learning Outcomes
LO01 Learns the steps of how a system execute a program.
LO02 Understands memory management of system.
LO03 Understands how a system executes its commands.
LO04 Can develop multithreaded applications.


Relation with Program Learning Outcome

Order Type Program Learning Outcomes Level
PLO01 Bilgi - Kuramsal, Olgusal Adequate knowledge of mathematics, science and related engineering disciplines; ability to use theoretical and applied knowledge in these fields in solving complex engineering problems.
PLO02 Bilgi - Kuramsal, Olgusal Ability to identify, formulate and solve complex engineering problems; ability to select and apply appropriate analysis and modeling methods for this purpose.
PLO03 Bilgi - Kuramsal, Olgusal Ability to design a complex system, process, device or product to meet specific requirements under realistic constraints and conditions; ability to apply modern design methods for this purpose.
PLO04 Bilgi - Kuramsal, Olgusal Ability to select and use modern techniques and tools necessary for the analysis and solution of complex problems encountered in engineering practice; ability to use information technologies effectively. 4
PLO05 Bilgi - Kuramsal, Olgusal Ability to design and conduct experiments, collect data, analyze and interpret results to investigate complex engineering problems or discipline-specific research topics. 5
PLO06 Bilgi - Kuramsal, Olgusal Ability to work effectively in interdisciplinary and multidisciplinary teams; individual working skills. 4
PLO07 Bilgi - Kuramsal, Olgusal Ability to communicate effectively verbally and in writing; knowledge of at least one foreign language; ability to write effective reports and understand written reports, prepare design and production reports, make effective presentations, and give and receive clear and understandable instructions.
PLO08 Bilgi - Kuramsal, Olgusal Awareness of the necessity of lifelong learning; ability to access information, follow developments in science and technology, and constantly renew oneself.
PLO09 Bilgi - Kuramsal, Olgusal Knowledge of ethical principles, professional and ethical responsibility, and standards used in engineering practice.
PLO10 Bilgi - Kuramsal, Olgusal Knowledge of business practices such as project management, risk management and change management; awareness of entrepreneurship and innovation; knowledge of sustainable development. 4
PLO11 Bilgi - Kuramsal, Olgusal Knowledge of the effects of engineering practices on health, environment and safety in universal and social dimensions and the problems of the age reflected in the field of engineering; awareness of the legal consequences of engineering solutions.


Week Plan

Week Topic Preparation Methods
1 Program structure Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
2 Pointers and memory allocation Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
3 UNIX system calls (Part1) Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
4 UNIX system calls (Part 2) Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
5 Windows API Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
6 Memory Allocation Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
7 Shell and commands Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
8 Mid-Term Exam Reviewing Lectures Ölçme Yöntemleri:
Yazılı Sınav
9 Shell Scripting (Part 1) Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
10 Shell Scripting (Part 2) Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
11 Shell Application Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
12 Multithreaded Applications Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
13 Socket Programming Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
14 Web Server Application Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
15 Program Optimization Reading related chapter Öğretim Yöntemleri:
Anlatım, Tartışma
16 Term Exams Reviewing Lectures Ölçme Yöntemleri:
Yazılı Sınav
17 Term Exams Reviewing lectures Ölçme Yöntemleri:
Yazılı Sınav


Student Workload - ECTS

Works Number Time (Hour) Workload (Hour)
Course Related Works
Class Time (Exam weeks are excluded) 14 3 42
Out of Class Study (Preliminary Work, Practice) 14 5 70
Assesment Related Works
Homeworks, Projects, Others 0 0 0
Mid-term Exams (Written, Oral, etc.) 1 15 15
Final Exam 1 30 30
Total Workload (Hour) 157
Total Workload / 25 (h) 6,28
ECTS 6 ECTS

Update Time: 06.02.2025 06:14