110 likes | 123 Views
Understand the fundamentals of UNIX and LINUX systems. Learn system programming, commands, and internal structures. Gain hands-on experience with programming assignments.
E N D
LINUX System : Lecture 1Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang University
UNIX and LINUX • UNIX • In 1969/1971, initially written in Assembly, • In 1973, rewritten in C by AT&T Bell labs. (portability) • OS designed to be • Programmer’s workbench • multi-tasking, multi-user, time-sharing (interactive) • platform-independent (portable) • command line interpreter and pipe <-> single command • Widely used in servers, networked workstation
UNIX and LINUX • LINUX • In 1991, developed by Linus Torvalds • UNIX-like OS (UNIX의 한 종류) • free and open source software • Initially run on x86 (Intel) PC. • Later, ported more server-level HW platforms and big computers such as mainframe and supercomputers • LINUX also runs on embedded systems • Android system is built on LINUX kernel • used in many kinds of servers • Database Servers, Web Servers, Business Servers,… • Most internet environment is based on Client-server model • Main Advantage • Security, reliability, low cost, multi-user (permission) support
Course Overview • Level : 3rd year CSE undergrad students • Topics : • How to use UNIX and it’s utilities in OS user perspective • UNIX commands, utilities, shell, script, etc • Internal structures and algorithms of UNIX kernel • process, file/directory structure, memory, etc • UNIX System Programming (UNIX system calls) • (UNIX Servers : APM – Apache, PHP, MySQL) • Objective • Learn how to use UNIX/LINUX • Understand internal structures of UNIX kernel • Obtain the ability of programming under UNIX environment
Course Overview • Textbook • No required textbook for now • We will also use on-line materials and some handouts. • References • Advanced Programming in the UNIX Environment (3rd Edition), W. Richard Stevens, Stephen A. Rago, Addison Wesley
Evaluation • Midterm : 35% • Finalterm : 35% • Assignments : 25% • Including around 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/Room • Tue 9am-11am / 208-414 • Thu 10am-11am / 208-101 • Professor Information • Name : Bong-Soo Sohn • Office :208-501 • Email : bongbong@cau.ac.kr • Office Tel : 820-5843 • Office Hour : anytime visit or individual appointment
Announcement • Class Website • http://cau.ac.kr/~bongbong/linux13 • Class information such as lecture notes can be accessible through this website • We will also use eClass 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.
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.