+91 9840690506

+91 9840690506

hr@tescloud.in

C,C++ using Linux

Basic operating systems concepts

  • Multi user systems
  • Multi tasking
  • Users and groups
  • security
  • open source and closed systems
  • different distributions
  • difference between Linux and windows

Kernels

  • What is kernel
  • Kernel architecture
  • Different type of kernels
  • Monolithic kernel
  • Micro kernel
  • Modular kernel
  • Kernel versions
  • Preemptive kernel
  • Non preemptive kernel

Overview of Unix file system

  • Root – super user’s directory
  • Dev – device files
  • Home – user directory
  • Etc – system configuration
  • Boot – boot files
  • Bin – executable commands
  • Usr – system directory
  • Sbin – executable commands
  • Boot Process/Boot strapping
  • Different types of run levels in Linux
  • Switching between terminals

CUI (Command Line Interface), GUI (Graphical User Interface)

  • What is Shell and Shell Programming?
  • Bourne shell
  • Korne shell
  • C shell
  • Borne-Again shell
  • Complete Linux Commands and how to use the commands
  • How to write shell scripts and execute it in Linux
  • Introduction to Qt (GUI) and how to write a GUI program in Linux

Different stages of Compilation

  • Pre-processing
  • Assembler
  • Relocatable binary
  • Linking
  • How to write a program in Linux and to compile the program into different stages, final execution of the program

Linkers and Loaders

  • What is Linker and functionality of the linker?
  • How it links the different program modules
  • What is loader and functionality of the loader?
  • How loader loads the program on to the memory
  • How to create the project modules and link them by using gcc

IPC (Inter Process Communication)

  • IPC introduction
  • Why IPCs
  • Half-duplex UNIX pipes
  • Named pipes (FIFO)
  • Message queues
  • Semaphores

Processes

  • What is process?
  • Difference between process and program
  • Process address space
  • What is process id and how it loads in the memory
  • Process descriptor
  • Context switching
  • Different process states
  • Creating processes (fork)

Signals

  • Overview of signals
  • The role of signals
  • Sending signal
  • Receiving signal

System calls

  • Overview of system call
  • Difference between api and system calls
  • How to write System calls
  • How to add System Calls

Socket Programming

  • OSI model
  • Overview of sockets
  • Domains and address families in depth
  • Address conversion functions in depth
  • Socket types and protocols in depth
  • Binding Address in depth
  • Connectionless oriented protocols in depth
  • Connection oriented protocols in depth
  • Connectionless oriented protocols for server
  • Concurrent client server with examples
  • TCP/IP client server examples
  • UDP/IP client server examples

Overview of device drivers

  • Introduction to Modular Programming
  • Difference types of Drivers
  • How to write a simple device driver

Kernel Compilation


NOTE: The above concepts will be explained with real time examples on the system