Open Source Technology

Paper Code: 
MCA 323
Credits: 
04
Periods/week: 
04
Max. Marks: 
100.00
Objective: 
  • To develop understanding among the students about concept of Open Source Technologies.
  • To provide the students with the skills necessary for working with UNIX/LINUX operating system environment.
  • To provide the students with the skills necessary for developing shell script and programming
10.00
Unit I: 
Introduction

Open Source, Free Software, Free Software vs. Open Source software, Public Domain Software, FOSS does not mean any cost. History: BSD, The Free Software Foundation and the GNU Project.

12.00
Unit II: 
Open Source History, Initiatives, Open Source Development Model Licenses and Patents

Open Source History, Initiatives, Open Source Development Model Licenses and Patents: What Is A License, Important FOSS Licenses (Apache, BSD, GPL, LGPL), copyrights and copylefts, Patents Economics of FOSS : Zero Marginal Cost, Income-generation opportunities,  Internationalization.

12.00
Unit III: 
Case Studies

Mozilla (Firefox), Wikipedia & Linux

Starting and maintaining an Open Source Project, Open Source Hardware, Open Source Design, Open Source Teaching and Open Source media

Open source vs. closed source Open source government, Shared software, Shared source.

12.00
Unit IV: 
Introduction to UNIX/LINUX Operating System

Features of UNIX/LINUX operating system, Structure: Kernel and Shell, Basic commands, Accessing help options, Filenames and using wild cards, Types of files, File systems: four block of file systems, directory hierarchy, Operations and utilities for directory and files

Introduction to vi and Emacs editor User & Group file access permissions.

14.00
Unit V: 
Shell Programming & Simple filter commands

Shell Programming: Basic of shell programming, meta characters, shell variable: predefined variables and user defined variable, storing value in variable and accessing it, unsetting variables, storing filenames, content and command in variable, Input: reading word by word, line by line and from file, Expression, Decisions and repetition, Special parameters and variables, shell programming in bash, read command, conditional and looping statements, case statements, changing positional parameters and argument validation, string manipulation.

Simple filter commands – pr, head, tail, cut, paste, sort, uniq, tr,  Regular expressions: atoms and operators, grep.

ESSENTIAL READINGS: 
  • Kailash Vadera, Bhavyesh Gandhi, “Open Source Technology”, University Science Press, 1st edition, 2009.
  • Sumitabha Das, “UNIX – Concepts & Applications”, Tata McGraw Hill Publications, 4th edition, 2006.
  • Graham Glass & King Ables, “Linux for programmers and users”, Pearson Education India, 3rd edition, 2006.
REFERENCES: 
  • Fadi P. Deek, James A. M. McHugh, “Open Source Technology and Policy”, Cambridge University Press, 1st edition, 2008.
  • Andrew M. St. Laurent, “Understanding Open Source and Free Software Licensing”, O’Reilly, Annotated edition, 2004.
  • Forouzan B. A., Gilberg R. R., “UNIX and Shell Programming”, TMH, 2nd edition, 2008.
  • Saurabh K., “UNIX Programming: The First Drive”, Willey India, 1st edition, 2008.
  • Richard Petersen, “Linux: The Complete Reference”, Sixth Edition, TMH, 6th edition, November 2007.
Academic Year: