LINUX System : Lecture 1 Course Overview Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University Course Overview Level : 4-th year CSE undergrad students Topics : How to use UNIX in OS user perspective UNIX utilities, shell, script, etc Internal structures and algorithms of UNIX kernel process, file/directory structure, memory, etc UNIX System Programming Objective Understand internal structures of UNIX kernel Obtain the ability of programming under UNIX environment Course Overview Textbook No required textbook for now We will use on-line materials and some handouts. References UNIX Internals, the new frontiers, Uresh Vahalia Page 939-1017, Chapter 20, Operating Systems, rd Deitel, Deitel, Choffnes, 3 Edition, Pearson Prentice Hall nd Advanced Programming in the UNIX Environment (2 Edition), W. Richard Stevens, Stephen A. Rago, Addison Wesley Evaluation We will use Absolute Evaluation method. No predefined ratio of A, B, C grades Midterm : 35% Finalterm : 35% Assignments : 25% Including about two programming assignments Class Participation : 5% You may get F grade if you miss (more than) ¼ of the whole classes Academic dishonesty (e.g. cheating, plagiarism, and etc.) will be taken seriously, and heavy penalty can be imposed. Course Information Lecture Time : Mon 3, 4 , Wed 4 Lecture Room : Engineering 2 – 6515 English-Only Lecture English proficiency can be greatly improved by using and practicing English, not by just studying English. Instructor Office : Engineering 2 - 6501 Email : bongbong@cau.ac.kr Office Tel : 820-5843 Office Hour : Thu 2pm-4pm, or individual appointment Announcement Class Website http://cau.ac.kr/~bongbong/linux09 Class information such as lecture notes can be accessible through this website We will also use MiniWeb to submit homework Programming Assignments We encourage to study and discuss together for doing programming assignments. However, you must do programming YOURSELF. You must not share any of source code with other students. Any kind of academic dishonesty will be taken seriously. Schedule 1 Course Overview, UNIX Overview 2 VMware, cygwin 3 UNIX Basic Utilities, Shell Basics 4 UNIX utilities (make,…) 5 Shell Scripts 6 Shell Implementation , (homework) 7 UNIX system – process concepts 8 Midterm Exam Schedule 9 UNIX process control (fork&exec) 10 UNIX file system 11 UNIX file and directory structures 12 UNIX Memory Management 13 UNIX Signals 14 UNIX Inter-Process Communications 15 Supplementary topics 16 Final Exam Remarks This course assumes that students have basic knowledge of Operating Systems and C/C++ programming language. However, this course does not assume that students are familiar with UNIX/LINUX. Why UNIX/LINUX? Free ( LINUX ) Concise Portable Open Source Code Stable, Robust and reliable Still used in many kinds of servers Database Servers, Web Servers, Business Servers,… Powerful programming environment Multi-User, Multi-Tasking Network Support