Subject Code
|
J0303APE04
|
Title
|
Open Source Technologies
|
Work Load Per Week
|
L:3 T:1 Lab : 4
|
Examinations
|
Int : 100
|
Objectives
|
This course is aimed to:
-
understand open source movement worldwide
-
use the fastest growing open source operating system, “Linux”, today
-
effectively install, use and perform basic configuration of Linux system
-
build user-level skills to perform Linux System Administration in IT profession
-
enable competency in industry-problem identification and resolution
-
develop application using LAMP
|
Learning Outcomes
|
Text Book(s)
|
1 Red Hat Linux Bible Christopher Negus Wiley Publishing ISBN :
0-7645-4333-4
2 PHP, MySQL and Apache Julie C Meloni Pearson Education ISBN : 81-297-0443-9
3 The Complete Reference Linux Peterson Tata McGRAW HILL ISBN : 0-07-044489-7
4 UNIX using Linux Jack Dent, Tony Gaddis Course Technology ( Thomson Learning) ISBN : 981-240-218-7
|
|
Internet Resources:
1 Open Source Phenomenon http://opensource.org/
2 Open Source Technology : Brief http://www-128.ibm.com/developerworks/opensource/newto/
3 Open Source : Benefits http://www.sun.com/software/opensource/
4 Beginner's Guide to Linux - Michael Jordan
http://www.linux.org/lessons/beginner/
|
Lecture
Number Topic Details
-
OSI – Open Source Initiative Open Source Definition
-
Open Source Licenses Open Standard Requirement
-
FOSS – Free and Open Source Software
-
Origin of FOSS Advantage and Disadvantages of FOSS
Packaging and Releasing of Open Source Software
-
Introduction to perl programming, Object oriented perl programming
-
Introduction to perl Basic Variables
-
Data Types Scalar Variables
-
Array Variables Hash Variables
-
Strings, Numbers
-
If and else, While and for loops Operators
-
User I/O Advanced Output
-
File handles Statement Modifiers
-
Functions Perl 5.10 Additions
-
Exercises Programming Structure and style
-
References and Data Structures Regular Expressions
-
Regular Expressions Operators Regular Expressions Reference
-
Code Reuse (Modules) Perl Objects
03 PHP Programming, Advanced PHP Programming, MySql Databases, MySql Database Administration.
-
Introduction to PHP Syntax Overview
-
File Handling Database Connectivity
-
Session Handling Command Line Programming
-
Form Handling Introduction to MySql
-
Creating a Database Creating a Table
-
Basic Queries Common Function and Operators
04 Python Programming
-
Introduction to Python First Embedded Python Application
-
Running some strings Extension Modules
-
Building and Passing Arguments The None Object
-
Exceptions Logging Stdout
-
Files List/Tuples
-
Callbacks Setting up your own scripting concepts
05 Ruby Programming, Ruby of Rails Workshop
-
Introduction to Ruby
-
Variables, Data Types, Operators, Symbols, Statements
-
Converting Data to Another Type: Type conversion to Type Casting
-
Arrays, Hashes, and Ranges Functions and Built in Functions
-
Control Structures, Loops Regular Expressions and Blocks
-
Recursion Data structures
-
Methods, Classes, Modules, Namespaces
-
Exceptions Object Oriented Prograaming
-
Multi threading File Handling, Input and Output
-
Basic GUI
-
Ruby and Databases – Ruby on Rails and MySQL
06 Unix/Linux
-
Introduction to Unix/Linux
-
Unix/Linux Shell Scripting Linux Installation
-
Unix/Linux System Administration Unix/Linux System Programming
-
Unix/Linux Network Programming Unix and Linux Security
-
Coding Rules Error Logging
-
Client-Server Model
Inter-Process Communication
-
Introduction Pipes
-
Popen() and Pclose() functions Co-Processes
-
FIFOs System V IPC
-
Messages Queues Semaphores
-
Shared Memeory Client Server Property
Development Tools
-
GNU Cross Platforms Development Tool – chain
-
C/C++ Compilers C library alternatives
-
Shell Scripting Java
-
Perl Python
-
Integrated programming Environments
-
Terminal Emulators
Device Driver Programming
-
Real Mode and Protected Mode in 80x86 microprocessor
-
User and Kernel Mode Programming
-
Dynamic Kernel Model (DKM) Programming
-
Character Device Driver programming Block Device Driver Programming
-
Network Device Driver Programming Proc file System
Group-V Embedded Technologies
EMBEDDED SYSTEM ELECTIVES FOR MCA PROGRAMME OF
BVU STRUCTURE OF EMBEDDED SYSTEM ELECTIVES
Semester
|
Sr. No.
|
Subject
|
Marks
|
Semester-IV
|
Paper – I
|
Embedded System Design and Implementation
|
100
|
Paper – II
|
Communication in Embedded Systems
|
100
|
Semester-V
|
Paper – III
|
System and Device Driver Programming
|
100
|
Paper – IV
|
Embedded and Real-Time Operating Systems
|
100
|
PAPER - I: EMBEDDED SYSTEM DESIGN AND IMPLEMENTATION
Unit. No.
|
Unit title
|
Details
| -
|
Introduction to Embedded Systems
|
Understanding embedded systems, Categories of Embedded Systems, Requirements of embedded systems, Challenges and issues involved in embedded software development, Trends in embedded software development.
| -
|
Microprocessor based systems
|
Microprocessor, Memory, Input/Output Devices,
8/16/32 bit microprocessors
| -
|
Micro-Controller based systems
|
Micro-controller,
Program/Data memory, Internal/External memory,
Instruction set, Development tools.
| -
|
Embedded system design
|
Processor , Memory, Latches and buffers,
Crystal, Reset Circuit, Chip select logic circuit,
ADC and DAC, Display Unit, Keypads, Communication interfaces, Programmable logic devices.
| -
|
Software development environment for embedded systems
|
Target hardware platform,
Development platform,
Programming languages,
Operating systems,
Development tools.
| -
|
Digital interfacing
|
Keyboard interfacing,
LED Display interfacing,
LCD interfacing,
Servo motor interfacing,
Stepper Motor interfacing,
Pulse measurement
| -
|
Analog Interfacing
|
Digital-to-analog converter interfacing,
Analog-to-digital converter interfacing,
ADC techniques, DAC techniques.
| -
|
Interrupts
|
Hardware interrupts, Software interrupts,
Internal interrupts, External interrupts, Internal vector tables, Interrupt service routines, Shared data problem,
Interrupt latency.
| -
|
MCS-series micro-controller based embedded system design and programming
|
Internal architecture of 8051 micro-controller,
8051 assembly language programming,
8051 interfacing,
8051 programming on MCS-51 kit
|
Text Books:
-
Programming Embedded systems in C and C++ - by Michael Barr
-
The 8051 Microcontroller: Architecture, Programming & Applications - by Kenneth J. Ayala
PAPER - II: COMMUNICATION IN EMBEDDED SYSTEMS
Unit No.
|
Unit title
|
Details
|
1.
|
Serial communication
|
Communication parameters,
RS-232 protocol,
Null Modem Cable connections,
PC- to-PC communication,
Serial Communication with the 8051 family of micro-controllers, Microwire, SPI, 12C, CAN
|
2.
|
Parallel port communication
|
Communication parameters,
Centronic protocol,
PC-to-PC Communications,
Parallel Port Communication with the 8051 family of micro-controllers
|
3.
|
USB communication
|
Introduction to USB port,
USB audio,
USB image capture,
USB mass storage,
USB infrared.
|
4.
|
TCP/IP socket communication
|
Network topologies,
Network protocols,
TCP/IP protocol stack,
Ethernet connectivity,
Socket programming,
Communication protocols e.g. HTTP, FTP, telnet, DHCP etc,
Communication Services,
System integration.
|
Text Books:
-
The 8051 Microcontroller and Embedded systems - by Mazidi & Mazidi
-
Unix Network Programming - by W. Richard Stevens
PAPER - III: SYSTEM AND DEVICE DRIVER PROGRAMMING
Unit No.
|
Unit title
|
Details
|
1.
|
File I/O
|
Introduction , File Descriptors, open() function,
create() function, close() function, lseek() function,
Read() function, Write() function, I/O efficiency,
File Sharing, Atomic operations, dup() and dup2() functions, fcntl() functions, Ioctl() function,/dev/fd.
|
2.
|
Process control
|
Introduction, Process Identifiers, Fork() function,
Vfork() function, Exit() function, Wait() and waitpid() function, Wait3() and wait4() functions,
Race conditions, Exec() function, Changing user Ids and group Ids, Interpreter files, System() function,
Process counting, User identification,Process times.
|
3.
|
Signals
|
Introduction, Signal Concepts, Signal() function, Unreliable signals, Interrupted system calls, Reentrant functions, SIGCLD sematics, Reliable signal terminology and sematics, Kill() and raise() functions,
Alarm() and pause() functions; Signal Sets Sigprocmask() function, Sigpending
|
|
|
Sigaction() function, Sigsetjmp() and siglongjmp() functions, Sigsuspend() function, Abort() function,
System() function, Sleep() function, Job-Control signals.
|
4.
|
Daemon processes
|
Introduction, Daemon characteristics, Coding Rules,
Error Logging, Client- Server model.
|
5.
|
Inter- process communication
|
Introduction, Pipes, Popen() and Pclose() functions,
Co-Processes, FIFOs, System V IPC, MessageQueues, Semaphores, Shared memory, Client-server properties.
|
6.
|
Development tools
|
GNU cross-platform development tool-chain C/C++ compilers, C library alternatives, Shell scripting, Java, Perl, Python, Integrated programming environments,
Terminal emulators
|
7.
|
Device driver programming
|
Real mode and protected mode in 80x86 microprocessors, User and Kernel mode programming,
Dynamic kernel module(DKM) programming, Character device driver programming, Block device driver programming, Network device driver programming,
Proc file system,Proc file system driver programming.
|
Text Books:
-
Device Driver Programming - by Rubini
-
Advanced Programming in the UNIX environment - by Richard Stevens
PAPER - IV: EMBEDDED AND REAL- TIME OPERATING SYSTEMS
Unit. No.
|
Unit title
|
Details
|
|
Introduction to operating system
|
History and purpose,
Multi-mode execution of a processor,
Case studies: DOS, Windows-98, Linux.
|
|
Architecture of an operating system
|
Kernel: Monolithic kernel Vs Micro Kernel,
Device Drivers,, Libraries, Shell, Utilities,User applications.
|
|
General purpose operating systems
|
Memory Management,
Scheduling and task management,
Hardware interfaces,
File management,
Communication.
|
|
Embedded operating systems
|
Embedded operating system considerations,
Task scheduling,
Context Switch,
Task Synchronization,
Embedded Windows NT,
Windows XP Embedded,
Open Source embedded Oss: Linux, BSD etc
|
|
Real-time concepts
|
Introduction,
Worst Case Vs Average Case,
Hard Vs Soft Real time,
Spin lock Vs sleep lock,
Interrupts, thread, Process,
Task, Kernel, Preemption,
Context switch,Single Shot threads Vs conventional threads, priorities.
|
|
Real time operating systems
|
Introduction to Real- Time OSs,
Case study: RTLinux,
Advantages and disadvantages of RTLinux,
Installing RTLinux,
Overview of RTLinux design,
Basic RTLinux API,
RTLinux module programming,
Inter- process communication in RTLinux environment (e.g. real-time FIFO)
|
Text Books:
-
Building Embedded LINUX Systems - by Karim Yaghmour
-
Linux Kernel Programming - by Beck
Share with your friends: |