BİLİŞİM GÜVENLİĞİ TEKNOLOJİSİ
Qualification Awarded Program Süresi Toplam Kredi (AKTS) Öğretim Şekli Yeterliliğin Düzeyi ve Öğrenme Alanı
Associate (Short Cycle) Degree 2 120 FULL TIME TYÇ, TR-NQF-HE, EQF-LLL, ISCED (2011):Level 5
QF-EHEA:Short Cycle
TR-NQF-HE, ISCED (1997-2013): 48,52

Ders Genel Tanıtım Bilgileri

Course Code: 2000002017
Ders İsmi: Unix/Linux Sistem Programcılığı
Ders Yarıyılı: Spring
Ders Kredileri:
Theoretical Practical Labs Credit ECTS
3 0 0 3 3
Language of instruction: TR
Ders Koşulu:
Ders İş Deneyimini Gerektiriyor mu?: No
Other Recommended Topics for the Course: To enhance the effectiveness of this course, hands-on exercises and unique projects should be emphasized. Students should gain experience in system programming within a Linux environment, covering topics such as process management, memory management, and network programming. Assessment methods should include practical exams, project presentations, and code reviews in addition to theoretical knowledge. Up-to-date resources and industry-related content will contribute to a more efficient learning process.
Type of course: Bölüm Seçmeli
Course Level:
Associate TR-NQF-HE:5. Master`s Degree QF-EHEA:Short Cycle EQF-LLL:5. Master`s Degree
Mode of Delivery: Face to face
Course Coordinator : Öğr.Gör. Ayşenur ÖZTÜRK
Course Lecturer(s):

Course Assistants:

Dersin Amaç ve İçeriği

Course Objectives: The aim of this course is to provide students with fundamental and advanced knowledge in system programming within Unix/Linux operating systems. The course covers topics such as system calls, process management, memory management, input/output operations, threads, signals, and network programming. Students will develop system-level programming skills in Unix/Linux environments, gaining an understanding of low-level operating system interactions and implementing practical applications.
Course Content: Unix/Linux System Programming course provides in-depth knowledge of the kernel structures and system calls of Unix and Linux operating systems. The course covers system programming techniques, process and memory management, file systems, network programming and scripting. The scripting section teaches how to perform automation and system administration tasks using shell scripts and other scripting languages. In this way, students are expected to acquire the skills to develop effective and efficient applications in a Unix/Linux environment.

Learning Outcomes

The students who have succeeded in this course;
Learning Outcomes
1 - Knowledge
Theoretical - Conceptual
2 - Skills
Cognitive - Practical
1) Will be able to describe Linux content and services.
2) will be able to use the "bash" shell and the basic commands in this shell.
3) will be able to write “bash” scripts.
3 - Competences
Communication and Social Competence
Learning Competence
1) will be able to explain the concept of open source software development.
Field Specific Competence
Competence to Work Independently and Take Responsibility
1) Will be able to list administrator duties and responsibilities in Linux systems.

Ders Akış Planı

Week Subject Related Preparation
1) UNIX/Linux Tarihi ve Komut Satırı Arayüzüne Giriş The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
2) File System and Commands The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
3) bash shell The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
4) Script Programming The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
5) Regular Expressions The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
6) Flowing Editor: sed The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
7) Awk Programming Language The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
8) Midterm The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
9) Text Processing The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
10) System Management The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
11) Advanced Script Programming The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
12) Commands and Scripts The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
13) Python Programming Language, Part I The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
14) Python Programming Language, Part II The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
15) Final Exam The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/) Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7 UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X

Sources

Course Notes / Textbooks: The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 (linuxcommand.org adresinden ücretsiz indirilebilir)
Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/)
Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7
UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X
References: The Linux Command Line: A Complete Introduction, William E. Shotts, Jr., ISBN-13: 978-1-59327-389-7 (linuxcommand.org adresinden ücretsiz indirilebilir)
Jonathan Corbet, Alessandro Rubini, Greg-Koah Hartman, "Linux Device Drivers", O'Reilly, 2005, ISBN 0-596-00590-3. (http://lwn.net/Kernel/LDD3/)
Core Python Programming, Wesley J. Chun, ISBN 0-13-226993-7
UNIX Shells by Example, Fourth Edition, Ellie Quigley, ISBN: 013147572X

Ders - Program Öğrenme Kazanım İlişkisi

Ders Öğrenme Kazanımları

1

2

3

4

5

Program Outcomes
1) Having knowledge and skills in security algorithms for programming
1) Possesses in-depth theoretical knowledge in information security, cybersecurity, network security, and data protection.
2) Understands information security management systems, national and international security standards, ethical considerations, and legal regulations.
2) Ability to install and manage software required for end user security
3) Has analytical thinking skills in classifying cyber threats, attack vectors, and defense mechanisms.
3) Having the ability to install and manage computer networks and use the network operating system
4) Theoretically comprehends security technologies such as cryptography, digital signatures, authentication, and access control mechanisms.
5) Can establish network security policies and effectively manage security tools such as firewalls and intrusion detection/prevention systems.
6) Has expertise in applying cryptographic algorithms, using data encryption techniques, and analyzing cybersecurity intelligence.
7) Can conduct penetration tests and security assessments to identify system vulnerabilities and develop preventive measures.

Ders - Öğrenme Kazanımı İlişkisi

No Effect 1 Lowest 2 Low 3 Average 4 High 5 Highest
           
Program Outcomes Level of Contribution
1) Having knowledge and skills in security algorithms for programming 3
1) Possesses in-depth theoretical knowledge in information security, cybersecurity, network security, and data protection. 2
2) Understands information security management systems, national and international security standards, ethical considerations, and legal regulations.
2) Ability to install and manage software required for end user security 3
3) Has analytical thinking skills in classifying cyber threats, attack vectors, and defense mechanisms.
3) Having the ability to install and manage computer networks and use the network operating system 3
4) Theoretically comprehends security technologies such as cryptography, digital signatures, authentication, and access control mechanisms.
5) Can establish network security policies and effectively manage security tools such as firewalls and intrusion detection/prevention systems.
6) Has expertise in applying cryptographic algorithms, using data encryption techniques, and analyzing cybersecurity intelligence.
7) Can conduct penetration tests and security assessments to identify system vulnerabilities and develop preventive measures.

Öğrenme Etkinliği ve Öğretme Yöntemleri

Alan Çalışması
Akran Değerlendirmesi
Anlatım
Beyin fırtınası /Altı şapka
Bireysel çalışma ve ödevi
Course
Problem Çözme
Soru cevap/ Tartışma
Örnek olay çalışması
Web Tabanlı Öğrenme
Staj/Yerinde Uygulama

Ölçme ve Değerlendirme Yöntemleri ve Kriterleri

Yazılı Sınav (Açık uçlu sorular, çoktan seçmeli, doğru yanlış, eşleştirme, boşluk doldurma, sıralama)
Homework
Uygulama
Bilgisayar Destekli Sunum

Assessment & Grading

Semester Requirements Number of Activities Level of Contribution
Homework Assignments 1 % 10
Project 1 % 20
Midterms 1 % 30
Semester Final Exam 1 % 40
total % 100
PERCENTAGE OF SEMESTER WORK % 60
PERCENTAGE OF FINAL WORK % 40
total % 100

İş Yükü ve AKTS Kredisi Hesaplaması

Activities Number of Activities Duration (Hours) Workload
Course Hours 14 4 56
Study Hours Out of Class 14 2 28
Homework Assignments 1 3 3
Midterms 1 10 10
Final 1 10 10
Total Workload 107