B23-CAP-302 Linux and Shell Programming
Part A – Introduction | |||
Subject | BCA | ||
Semester | III | ||
Name of the Course | Linux and Shell Programming | ||
Course Code | B23-CAP-302 (Common with B23-CAI-302, B23-CDS- 302, B23-CTS-302) | ||
Course Type: (CC/MCC/MDC/CC- M/DSEC/VOC/DSE/PC/AEC/ VAC) | CC | ||
Level of the course (As per Annexure-I | 100-199 | ||
Pre-requisite for the course (if any) | Must have basic knowledge of computer | ||
Course Learning Outcomes(CLO): | After completing this course, the learner will be able to:
1. understand Linux architecture. 2 use various Linux commands that are used to manipulate system operations. 3 acquire knowledge of Linux File System. 4 understand and make effective use of I/O and shell scripting language to solve problems.
5*. to implement the programs based on various shell commands and programs in linux. |
||
Credits | Theory | Practical | Total |
3 | 1 | 4 | |
Contact Hours | 3 | 2 | 5 |
Max. Marks:100(70(T)+30(P))
Internal Assessment Marks:30(20(T)+10(P)) End Term Exam Marks: 70(50(T)+20(P)) |
Time: 3 Hrs.(T), 3Hrs.(P) | ||
Part B- Contents of the Course | |||
Instructions for Paper- Setter
Examiner will set a total of nine questions. Out of which first question will be compulsory. Remaining eight questions will be set from four unit selecting two questions from each unit. Examination will be of three-hour duration. All questions will carry equal marks. First question will comprise of short answer type questions covering entire syllabus. Candidate will have to attempt five questions in all, selecting one question from each unit. First question will be compulsory. |
Practicum will be evaluated by an external and an internal examiner. Examination will be of
three-hour duration. |
||
Unit | Topics | Contact Hours |
I | Introduction to Linux: Linux distributions, Overview of Linux operating system, Linux architecture, Features of Linux, Accessing Linux system, Starting and shutting down system, Logging in and Logging out, Comparison of Linux with other operating systems. | 10 |
II | Commands in Linux: General-Purpose commands, File oriented commands, directory oriented commands, Communication-oriented commands, process oriented commands, etc. Regular expressions & Filters in Linux: Simple filters viz. more, wc, diff, sort, uniq, grep; Introducing regular expressions. | 10 |
III | Linux file system: Linux files, inodes and structure and file system, file system components, standard file system, file system types. Processes in Linux: Starting and Stopping Processes, Initialization Processes, Mechanism of process creation, Job control in linux using at, batch, cron & time. | 10 |
IV | Shell Programming: vi editor, shell variables, I/O in shell, control structures, loops, subprograms, creating & executing shell scripts in linux. | 10 |
V* | Practicum:
Students are advised to do laboratory/practical practice not limited to, but including the following types of problems: · Basic Linux command · Basic Shell Programming (Fibonacci Series generation, Factorial of a given number, Checking for Armstrong number) · Designing an Arithmetic calculator · Generation of Multiplication table · Base Conversion (Decimal to Binary, Binary to Decimal) · Finding the information about the Login name and File name. · Write a shell script to exchange the contents of two variables. · Write a shell script, which accepts three subject marks scored by a student and declare the result. · Write a shell script program to find area of a square, rectangle, circle and triangle. · Write a shell script to print integer numbers from 1 to 20. |
25 |
Suggested Evaluation Methods | ||
Internal Assessment:
➢ Theory · Class Participation: 5 · Seminar/presentation/assignment/quiz/class test etc.: 5 · Mid-Term Exam: 10 ➢ Practicum |
End Term Examination: A three hour exam for both theory and practicum. |
· Class Participation: 5
· Seminar/Demonstration/Viva-voce/Lab records etc.: 5 · Mid-Term Exam: NA |
|
Part C-Learning Resources | |
Recommended Books/e-resources/LMS:
· Yashwant Kanetkar, Unix & Shell programming – BPB Publications. · Richard Petersen, The Complete Reference – Linux, McGraw-Hill. · M.G.Venkateshmurthy, Introduction to Unix & Shell Programming, Pearson Education. · Stephen Prata, Advanced UNIX-A Programmer’s Guide, SAMS Publication. · Sumitabha Das, Your Unix – The Ultimate Guide, Tata McGraw-Hill. |