Software

Software

S.No. Name of the Lab Application (Software) License Details
1 NetSim Academic (Version 11) One-time purchase for specific version
2 Enterprise Architect Purchased in August 2020
3 MySQL Workbench (6.3 / 8.0) Open Source
4 MySQL Server Open Source
5 QTSpim Open Source
6 Verilog Open Source
7 Wireshark Open Source
8 BlueJ Open Source
9 ArgoUML Open Source
10 NetBeans (8.0 and above) Open Source
11 Anaconda (Jupyter Notebook) Open Source
Campus

Operating System Lab

Operating System Lab

In Linux environment students get hands on with the implementation of OS concepts. Coding assignments and laboratories include experiments on OS installation – including partitioning and recovery, memory management, thread synchronization using semaphores, setting priority of processes, performance evaluation of different type of schedulers, kernel build and modifications to add custom system calls and device drivers, and debugging of applications.

Campus

Computer Networks &Network Programming lab

Computer Networks &Network Programming lab

In Computer networks laboratory, students diagnose various protocol message details like TCP/UDP using Wireshark. NetSim is used to simulate the features of IP routing, transport layer flow and congestion control, data link layer protocol modelling over CSMA/CD. In network programming, students develop programs to understand the client server model. Special emphasis is given on advanced topics like high request throughput (including ability to scale), multiplexing, buffering, stream/datagram based communication. Students implement a three tier application(client browser, apache2 WebServer, MySQL DB) and study the implementation options. They also do a performance benchmark of separating the DB to another machine. Additionally, students develop network centric applications for Android devices and understand the limitations, when the computation and network bandwidth are constrained to preserve battery charge.

Campus

Computer organization and Advanced Computer Architecture Lab

Computer organization and Advanced Computer Architecture Lab

The Computer organization and architecture lab provides hands on experience on 8086 assembly programming using emu8086™ emulator. Students design and implement combinational and sequential circuits such as adders, comparators, multiplexors, decoders as well as storage elements like the basic latch, flip-flops and registers etc. The logic design and implementation of these circuits is done using Hardware Description Language (HDL) in the Xilinx Integrated Software Environment. The Advanced architecture lab provides practical exposure to students using Intel VTune Performance Amplifier to find and fix performance problems in a compiled program written in the C/C++ language. Students analyze assembly files or disassembled compiler outputs. Students also use the VTune Performance Amplifier™’s dynamic assembly analyzer to dynamically analyze and fine-tune small sections of application and identify the exact instructions that cause critical performance problems. Students also get a hands-on exposure in parallelizing a sequential program like dense matrix and Graph algorithms to improve its performance using Intel Parallel Studio, and OpenMP/MPI.

Software Engineering Lab

Software Engineering Lab

Students are exposed to live projects and take requirements from customers directly for implementing IT projects using well known software engineering principles like water-fall model, iterative model, and agile model etc. Students use tools like IBM Rational Rose to capture requirements, different views of systems architecture and design artifacts. They implement well known design patterns like observe-observable pattern, immediate pattern, and factory pattern etc.

Campus

Distributed systems and Information Security Lab

Distributed systems and Information Security Lab

Students in this lab develop transparent programs for remote procedure calls over platforms like Sun RPC, and Java RMI. They create threads over Linux environment to build a distributed computing environment over multiple machines in the lab. Students implement logical clocks, and use these to guarantee distributed mutual exclusion. Students also implement their own distributed file systems and distributed schedulers using techniques like mounting, caching, sender initiated load distribution etc.

In the Information Security Lab, students write programs using OpenSSL API over Linux to build secure communication models in a client server environment.

Campus