Beruflich Dokumente
Kultur Dokumente
CODE
COURSE
TITLE
LINUX PROGRAMMIING
WEIGHTAGES
CA
CREDITS
(or Max. Marks)
MTE
ETE
Attd.
AT
Th
Th
20
20
15
40
COURSE OBJECTIVES:
To provide understanding and practical exposure of basics of linux environment.
PRE-REQUISITES:
COURSE CONTENTS:
S. No.
3
4
6
7
Description
LINUX Basics Concept of open source & Open Licence, GNU, Various Linux Distributions: Redhat,
SuSe, Ubuntu etc, review of Linux Installation, File System Hierarchy, Top Level Directories &
purpose of main directories.
Working with GUI in Linux: Moving around the desktop (KDE/GNOME) Panel, Workspace, Main
Menu, Running Applications etc, Terminal emulator & running programs(/Commands) from terminal
emulator, Using KDE/Gnome for copying, moving, creating directories/files, Using control Centre for
installation of hardware/software, User Management, File Permissions and other settings. Mouting
Drives. Using Search Utilities in GUI.
Working with Command Line Interface in Linux: Using Shell. Shell commands: ls, touch, rm, mv,
cp, mkdir, rmdir, pwd, ps, cat, fg, bg,
File & Pattern Search Utilities: grep, egrep, regular expressions.
Concept of User & Groups, Commands to manage user and groups: groupadd, Groupdel,
groupmod, useradd, usermod .
Internet connection using broadband and wi-fi
File Permissions: Understanding and changing the permissions with chmod
Environment Variables: Meaning, using env command. Changing the environment variables like:
PATH, SHELL, TERM, PWD, USER, LANG etc.
Editors: Exposure to CLI editors & GUI editors.
Program development with C in Linux: Using Editor for writing the source code, compiling, linking
with libraries & executing
Vi editor command in both escape and insert mode ,Command line arguments
Shell Programming: Pipes & redirection, Shell as a programming language Interactive programs,
creating a script & making a script executable, shell syntax variable, condition, control structure,
functions, debugging scripts, using simple scripts to implement the above topic.
Working with Files & Directories: Concept of system calls & device drivers & library functions.
Using low level file access and standard I/O library for working with files like opening, reading,
writing, setting permission, closing files etc.
Stream functions & stream errors & file descriptors.
File & Directory Maintenance in C using chmod, chown, unlink, link, mkdir, rmdir, chdir, Scanning
directories using opendir, readdir, telldir, seekdir, closedir,. Writing programs equivalent to ls
command using above feratures,
MTE
Interacting with the UNIX/Linux Environment from your Program: Command arguments, using
getopt facility, using getenv, putenv, environ for environment variables.
Interacting with the UNIX/Linux Environment from your Program: Using time, gmtime, ctime, for
calculating date & time, using temporary files, interacting with environment to get user, host & logging
8
9
information.
Managing Memory: overview of simple memory allocation, allocating lots of memory, abusing
memory, null pointer, freeing memory.
File Locking: creating lock files, read & write with locks.
Development tools & debugging: handling multiple source files, make command & makefiles, type
of errors & general debugging techniques, using gdb, memory debugging.
LABORATORY WORK:
S. No.
1.
2.
Description
Linux Installation
6.
Moving around the desktop KDE/GNOME Panel, Workspace, Main Menu, Running Applications
etc,
Terminal emulator & running programs(/Commands) from terminal emulator, Using KDE/Gnome for
copying, moving, creating directories/files.
Using shell commands like ls, touch, rm, mv, cp, mkdir, rmdir, pwd, ps, cat, fg, bg.
Using grep, egrep, regular expressions & GUI for file & pattern searching.
Managing users & gripus through GUI & CLI .
Understanding and changing the permissions with CLI & GUI.
Setting the environment variables using CLI & GUI.
Using vi or edlin and any GUI editor.
7.
Using shell programming to write simple programs, writing simple scripts & making it executable.
8.
Writing programs in C for File handling using low level access & standard I/O library.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
3.
4.
5.
TEXT BOOKS:
1. Neil Mathew & Richard Stones, Begining Linux Programming, Wrox Press .
OTHER READINGS:
1.
2.
3.
4.