Home
Diploma Practice C Online People
Certificate Contact Us
Advanced C and Data Structures for System Programmers

1. Understanding a computer and a Program
  • CPU
  • Memory
  • I/O controllers
  • Executable Image contents
  • Text/Code, Read only Data, Data, BSS
  • Loading and running a program in Physical memory
  • Loading and running a program in Virtual memory
2. Program with Multiple C files
  • Why multiple C files
  • Definition Vs Declaration
  • Hiding data and functions
  • Header files
3. Development tools in Linux

Compiler
  • Compilation Stages
  • Object file format
Linker
  • Function of Linker
  • Static linking Vs Dynamic linking
  • Executable file format
  • Executable file vs Executable Image in memory
Archive or Libray utility
Make utility
Debugger

4. Pointers and Its Applications
  • Pointers Vs Integers
  • Pointer type
  • Pointer de-reference
  • Pointers and arrays
  • Pointer arithmetic
  • Array of pointers
  • Pointers and Dynamic memory
5. Structures
  • Compound type
  • Packing of elements within a structure
  • Alignment and hole in the structure
  • Structure pointers
  • Accessing elements of a structure using structure pointers
  • Dynamic allocation of memory for structures
  • Self referential structures
  • Passing structure parameters to functions
  • Returning a structure or struct pointer by a function
6. Unions
  • Differences between union and structure
  • Uses of unions
7. Bit Operations
  • Binary, Decimal and Hex conversions
  • Logical versus Bit wise operations
  • Masking a bit
  • Testing a bit
  • Setting a bit
  • Testing a set of bits
  • Setting a set of bits
  • Conversion of numbers from Binary to String and vice versa
8. Functions
  • Definition, Declaration/prototype, Invocation
  • Function type and return value
  • Output parameters
  • Pass by value and pass by reference
  • Local variables
  • Static variables
  • Function pointers
  • Thread of execution(stack frames)
9. Module Concepts
  • Module concept
  • Interface functions
  • Unit testing of module
  • Test Driver
  • Test Stub

10. Managing data in Arrays
  • Operations on arrays
  • Arrays Vs Strings
11. Managing data in Linked lists
  • Single linked lists
  • Operations on linked lists
  • Double linked lists
12. Maintaining data with order
  • Stack(LIFO) order
  • Queue(FIFO) order
  • Stacks using Arrays and Linked lists
  • Queue using Arrays and Linked lists
  • Circular queues
13. Maintaining data for Search
  • Linear search
  • Binary search
  • Hash based search
14. Understanding and Using Messages
  • Message concepts
  • Text Vs Binary messages
  • Framing of messages
  • Parsing of messages





#401, Sai Sushma Homes, 23/A, S.R. Nagar Main Road, Hyderabad-500038, India.
Ph: +91-40-48508764, 7702028989, depik.help@gmail.com