CS 9354 COMPILER LABORATORY
AIM:
The student will be able to design and implement a compiler using the tools at the end of
the semester.
OBJECTIVES:
To implement a lexical analyzer, syntax analyzer using tools.
To implement a code generator and the necessity for code optimization.
To know about compiler simulation tools.
USE COMPILER GENERATOR TOOLS TO IMPLEMENT THE FOLLOWING.
1. Scanner
2. Parser
3. Type checker
4. Intermediate code generator
a. Assignment statements
b. Expressions with subscripted variables
c. Boolean expressions
d. Control structures
Use any high level language to do the following.
5. Flow graph construction from intermediate code
6. Code generation for the given machine specification
TOTAL: 45 PERIODS
CS 9355 MOBILE AND PERVASIVE COMPUTING LABORATORY
AIM:
The course aims at providing a sound conceptual knowledge in area of mobile and pervasive computing.
OBJECTIVES:
To provide the students with the competencies required to simulate and understand
the mobile wireless network.
Teach the students to analyse and design web applications.
EXPERIMENTS IN THE FOLLOWING
1. Simulation of applications using J2ME simulator
2. Simulation of applications to access web sites using Microsoft Windows Mobile .net environment
3. Implementation of playing games and photo sharing applications using BREW (Binary Runtime Environment for Wireless Toolkit)
4. Simulation of Infotainment (news, weather forecasts etc) using WAP, WML Scripts
5. Pervasive devices connectivity – Using of server side programming in Java
i. Write web application from PCs using smart card authentication
ii. Write web application via WAP phones
iii. Write web application from PDAs
TOTAL: 45 PERIODS
CS 9356 FREE AND OPEN SOURCE SOFTWARE LABORATORY
AIM:
The student will get exposure to operating system and networking concepts at source code level.
OBJECTIVES:
To learn the setting up of GNU/Linux-based servers and workstation
To learn shell programming
To learn to configure application and server software
To learn to perform system administration tasks
To learn to use free and open source components.
EXPERIMENTS IN THE FOLLOWING
1. GNU/Linux OS installation (provide details of how to detect hardware, configure disk partitions & filesystems and successfully install a GNU/Linux distribution).
2. Basic shell commands - logging in, listing files, editing files, copying/moving files, viewing file contents, changing file modes and permissions, process management.
3. User and group management, file ownerships and permissions, PAM authentication, Introduction to common system configuration files & log files.
4. Configuring networking, basics of TCP/IP networking and routing, connecting to the Internet (through dialup, DSL, ethernet, leased line).
5. Configuring additional hardware - sound cards, displays & display cards, network cards, modems, usb drives, CD writers.
6. Performing every day tasks using GNU/Linux - accessing the Internet, playing music, editing documents and spreadsheets, sending and receiving email, copy files from disks and over the network, playing games, writing CDs.
7. Setting up email servers - using postfix (for SMTP services), courier (for IMAP & POP3 services), squirrelmail (for webmail services).
8. Setting up web servers - using Apache (for HTTP services), Setting up proxy services, printer services, firewall.
9. Using the GNU Compiler Collection - getting acquainted with the the GNU compiler tools - the C preprocessor (cpp), the C compiler (gcc) and the C++ compiler (g++), and the assembler (gas).
10. Understanding build systems - constructing makefiles and using make, using autoconf and autogen to automatically generate makefiles tailored for different development environments, Using flex (lex) and bison (yacc) to design parsers.
TOTAL: 45 PERIODS
0 comments :
Post a Comment