Presentation is loading. Please wait.

Presentation is loading. Please wait.

Byoung-Jo CHOI Fall 2007 SW Project II Advanced Linux Programming.

Similar presentations


Presentation on theme: "Byoung-Jo CHOI Fall 2007 SW Project II Advanced Linux Programming."— Presentation transcript:

1 Byoung-Jo CHOI Fall 2007 SW Project II Advanced Linux Programming

2 2 Course Information SW Project on Linux  Fedora 7 based Lab  Linux Maintenance / Linux Programming Course Website  http://atta.incheon.ac.kr/class/swp2 Text and References  Main Text: Beginning Linux Programming (3ed)  References: Computer Systems: A Programmer's Perspective Advanced Linux Programming, Running Linux (4ed), Unix Power Tools (3ed)

3 3 Course Overview Running Linux  Installation, network setting, basic commands  Editing with vi and emacs  Shell Scripting / awk / sed / bison Linux Programming  Make / Library / Linking / Args. processing  Process / Thread / IPC Application Building  Curses / MySQL / GTK+ / Qt

4 4 Lecture 1: Linux Overview Linux vs. GNU/Linux System Linux Kernel Installation User Management Rescue Basic Commands Applications

5 5 Lecture 2: Editing / Text Processing vi : vim, gvim  tutorial, tips and tricks Emacs  tutorial, customization, info sed / tr / awk  regular expressions  text processing OpenOffice, LaTeX Printing

6 6 Lecture 3: Shell Programming When you login... Prompt Redirection Alias and Function Control flow: conditional branch and loop Dialog Remote Access

7 7 Lecture 4: File Operation File and Directory Low Level Access Formatted Access File and Directory Management /proc File System

8 8 Lecture 5: Working w/t Environment Command Line Argument Processing Environment Variables Time and Date Temporary File User and Host Information Logging

9 9 Lecture 6: Development Tools make and Makefile Source Code Control: RCS, CVS, Subversion RPM Package GNU Debugger: gdb, ddd Profiling Techniques Memory Management Debugging

10 10 Lecture 7: Number Arithmetic* Ch2 of "Computer Systems: A Programmer's Perspective" by R. Bryant and D. O'Hallaron  Information Storage  Integer Representations  Integer Arithmetic  Floating Point

11 11 Lecture 8: dbm and MySQL Memory Management File Locking dbm Database MySQL Administration MySQL Access Using C Mini Project

12 12 Lecture 9: Linking Ch7 of "Computer Systems: A Programmer's Perspective" by R. Bryant and D. O'Hallaron  Compiler Drivers  Static Linking  Object Files and Relocatable Object Files  Symbols / Symbol Tables / Symbol Resolution  Relocation  Executable Object Files and Loading into Memory  Dynamic Linking and Shared Libraries  Tools for Manipulating Object Files

13 13 Lecture 10: Process and Thread Exceptions What Is Process? Creating and Terminating Processes Zombie Signals and Signal Handlers POSIX Threads Thread Synchronization Mini Project

14 14 Lecture 11: Inter Process Commun. Pipe Semaphore Shared Memory Message Queue IPC Status Mini Project

15 15 Lecture 12: Network Programming Client-Server Programming Model Networks The Global IP Internet The Socket Interface Web Servers Mini Project: Tiny Web Server

16 16 Lecture 13: GNOME with GTK+ X-Windows Overview of GTK+ Event, Signal and Callbacks GTK+ Widgets GNOME Widgets GNOME Menus Dialogs Mini Project: GNOME FTP Client

17 17 Lecture 14: KDE with Qt Overview of KDE and Qt Signal and Slot Qt Widgets Dialog Boxes Menu and Toolbars KDE Widgets Project: Networked Chess / Five-First / Messenger / VOIP-Phone / etc.

18 18 Lecture 15: Device Drivers Overview of Device Driver Devices Character Devices Sample Character Device Driver Timing and Jiffies Memory Handling I/O Port Block Device


Download ppt "Byoung-Jo CHOI Fall 2007 SW Project II Advanced Linux Programming."

Similar presentations


Ads by Google