Türkçe | English
OF FACULTY of TECHNOLOGY / DEPARTMENT of SOFTWARE ENGINEERING

Course Catalog
http://www.ktu.edu.tr/ofyazilim
Phone: +90 0462 3778353
OFTF
OF FACULTY of TECHNOLOGY / DEPARTMENT of SOFTWARE ENGINEERING /
Katalog Ana Sayfa
  Katalog Ana Sayfa  KTÜ Ana Sayfa   Katalog Ana Sayfa
 
 

YZM3009System Programming2+1+0ECTS:4
Year / SemesterFall Semester
Level of CourseFirst Cycle
Status Compulsory
DepartmentDEPARTMENT of SOFTWARE ENGINEERING
Prerequisites and co-requisitesNone
Mode of Delivery
Contact Hours14 weeks - 2 hours of lectures and 1 hour of practicals per week
LecturerÖğr. Gör. Dr Celal ATALAR
Co-Lecturer
Language of instructionTurkish
Professional practise ( internship ) None
 
The aim of the course:
The aim of this course is; It is writing code on bash script and developing programs (gcc, g ++) using the compilers on the Unix system. In addition, it aims to provide a certain management on the system.
 
Learning OutcomesCTPOTOA
Upon successful completion of the course, the students will be able to :
LO - 1 : Manage the environment from the command line shell.1,3,81,
LO - 2 : Shell and system commands can be explained.1,3,81,
LO - 3 : Ability to write shell scripts for various system tasks.1,3,81,
LO - 4 : It can be handled data of any text file using regular expressions.1,3,81,
LO - 5 : Software development tools can be written programs in high-level programming languages.1,3,81,
LO - 6 : You can use the system calls in C or C ++ programs.1,3,81,
LO - 7 : Subsystem of file and process can be managed with system calls1,3,81,
CTPO : Contribution to programme outcomes, TOA :Type of assessment (1: written exam, 2: Oral exam, 3: Homework assignment, 4: Laboratory exercise/exam, 5: Seminar / presentation, 6: Term paper), LO : Learning Outcome

 
Contents of the Course
1. Introduction to Unix, Structure of Unix System and Command System 2. Unix File System , File Permissions 3. Use of Text Editing Editors 4. Input/Output Redirection and Pipe Structures 5. Regular Expressions 6. Unix Window System 7. Unix Shell Environment ve Shell Environment Variables 8. Introduction Shell Script 9. Basic Shell Script 10. Advanced Shell Script 11. Software Development and Debug 12. File Management and Applications 13. Process Management 14. Basic Unix System Administration
 
Course Syllabus
 WeekSubjectRelated Notes / Files
 Week 1Introduction to Unix, Structure of Unix System and Command Line System, Short History of Unix, Some Unix Command
 Week 2Unix File Systems, Unix File Hierarchy, Working and Home Directories, File Of Types, File Permissions, File Content
 Week 3Use of Text Editors, Commands of vi Editor
 Week 4Input/Output Redirection and Pipe Structures
 Week 5Regular Expressions, grep and egrep Commands
 Week 6Unix Window System
 Week 7Unix Shell Environment ve Shell Environment Variables (PATH, HOME, USER vs), Bash Script, Aliases
 Week 8Introduction Shell Script, Script Execution, Shell Variables (Numeric, Arrays, Strings), Command-Line Arguments, if Statement, if else Statement, Logical Operators and Test Command, case Statement
 Week 9Midterm
 Week 10Loops for Shell Script (for, while, until, select), printf Arguments and Output Fomatting, tee Command, Associating Files with a File Descriptor, Read File
 Week 11Creating and Using Functions in Shell Script, Parameter Passing in Functions, Sharing Data Between Functions, echo Command, Using of echo Command's Arguments
 Week 12Software Development and Debug, sed and awk
 Week 13File Management and Applications, File Open Process (fopen) and File Open Arguments, Write to File (fprintf, fputs, fputc), Read From File (fgets, fgetc), Search in File Content (fseek)
 Week 14Process Management (ps, top, kill, nice), Process Creation (fork), exec Command
 Week 15Basic Unix System Administration, The superuser (root), File System Commands (mount, umount, fsck, sync)
 Week 16Fnal Exam
 
Textbook / Material
1Haviland, K., Gray, D., Salama, B. 1999; UNIX System Programming, 2nd ed., Addison-Wesley, 350 p.
2Kochan, S. G., Wood, P. 2003; UNIX Shell Programming, 3rd ed., Sams, 460 p.
 
Recommended Reading
1Robbins, K. A., Robbins, S. 1996; Practical UNIX Programming, Prentice Hall, 658 p.
2Michael, R. K. 2003; Mastering UNIX Shell Scripting, Wiley, 680 p.
 
Method of Assessment
Type of assessmentWeek NoDate

Duration (hours)Weight (%)
Mid-term exam 9 1 50
End-of-term exam 16 2 50
 
Student Work Load and its Distribution
Type of workDuration (hours pw)

No of weeks / Number of activity

Hours in total per term
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 3 5 15
Arasınav 1 1 1
Uygulama 1 14 14
Dönem sonu sınavı için hazırlık 4 8 32
Dönem sonu sınavı 2 1 2
Total work load112