Download presentation
Presentation is loading. Please wait.
Published byPoppy Dalton Modified over 9 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.