ANTALYA BİLİM UNIVERSITY
Course Information Package

CS 3005 - Systems Programming

Basic Information

Course Code:
CS 3005
Course Name:
Systems Programming
Language of Instruction:
English
Course Type:
Class
Course Level:
Bachelor
ECTS:
5.00
Instructor:
Dr. Öğr. Üyesi Shahram TAHERİ

Course Objectives

This course introduces the students the basics of programming under Unix and C programming. The students are exposed to topics such as Unix bash shell, Unix filesystem, C structure and basic C library routines.

Course Content

Unix basics and filesystem bash shell Unix file management Unix utility programs C language syntax, data types, variables C control structures C functions Arrays, Strings Structures in C C pointers and memory management Bit manipulation, file management and system calls in C Compiling and linking C programs, using gdb debugger Building makefile

Prerequisites / Corequisites

CS1002

Course Books / Materials / Recommended Resources

• "The C Programming Language", 2nd ed., Brian W. Kernighan and Dennis M. RitchieAt least one of the following documents:• "Learning the bash Shell", 3rd Ed., Cameron Newham• "Bash Guide for Beginners", Machtelt Garrels

Learning Outcomes

Code Description
LO1 Be able to use Unix commands
LO2 Be able to write simple Unix bash shell scripts
LO3 Be able to explain the Unix file system and create/delete/search directories and files.
LO4 Be able to write C programs
LO5 Be able to compile, link, run and debug C programs under Unix

Weekly Course Content

Week Content
1 Unix basics and filesystem
2 bash shell
3 Unix file management
4 Unix utility programs
5 C language syntax, data types, variables
6 C control structures
7 C functions
8 Midterm
9 Arrays, Strings
10 Structures in C
11 C pointers and memory management
12 Bit manipulation, file management and system calls in C
13 Compiling and linking C programs, using gdb debugger
14 Building makefile
15 Review

Workload Calculation

Activity Count Duration (Hours) Total
Attendance 15 3.00 45.00
Pre-Class Individual Study 15 1.00 15.00
Post-Class Individual Study 15 1.00 15.00
Midterm Exam/Preparation 1 16.00 16.00
Final Exam/Preparation 1 16.00 16.00
Quiz Preparation 4 3.00 12.00
Homework 4 8.00 32.00
Total Workload (Hours) 151
ECTS Credit (Workload / 25) 5

Assessment

# Assessment Type Contribution (%)
1 Quiz %0
2 Final Exam %100
TOTAL %100

PO - LO Matrix

PO \ LO
LO1
LO2
LO3
LO4
LO5
PO-1
PO-2
PO-3
PO-4
PO-5
PO-6
PO-7
PO-8
PO-9
PO-10
PO-11
1
Low Contribution
2
Medium Contribution
3
High Contribution

Teaching and Learning Methods

# Method Name Description Tools
1 Lecture (expository teaching), interactive discussion Listening and taking notes. Standard classroom technologies, multimedia tools (projector, computer, digital presentations)
2 Problem Solving * Analyzing physical and physiological problems using problem-solving techniques and developing appropriate solutions.
3 Homework Solving and analyzing homework questions using a computer and Excel. Computer
4 Project One-on-one critique sessions, problem solving, brainstorming, design/model production and oral/visual presentation Design software, drawing tools, model making materials, board/presentation equipment, sample projects and specimens

Academic Integrity and Artificial Intelligence

Violations of scholastic honesty include, but are not limited to cheating, plagiarizing, fabricating information or citations, facilitating acts of dishonesty by others, having unauthorized possession of examinations, submitting work of another person or work previously used without informing the instructor, or tampering with the academic work of other students. Any for of scholastic dishonesty is a serious academic violation and will result in a disciplinary action.