• Whatsapp
  • Facebook
  • YouTube

About us : Welcome to CSEPracticals, an OnlineCourse offering Website in the field of Operating Systems, Networking, Linux System Programming and Several Coding Projects. We offer only Development based Projects, no DS/ALGO/CP.

Not a member yet ? Sign up !

  • pngtree-whatsapp-social-media-icon-desig
  • Facebook
  • YouTube
Buy Any 2 Paid course
Buy Any 4 Paid course
Buy Any 6 Paid course
Buy Any 8 Paid course
Pls send email to csepracticals@gmail.com after payment, telling us which Courses you want. You will be given lifetime access to Courses. Use Partial Payment links below in case you need to pay us an arbitrary amount after negotiation.


Buy Entire Course Bundle
(19 Courses ) in Just
~INR 3300 | $45
​Note  for Jackpot offer : Get Rs 250/$5 off for each paid course you are already enrolled in !
Lifetime Access to Udemy + Teachable
Access to Teachable Only
First 7 days is Free, then $10/Month, Cancel Anytime
April, 2022
Enquiry Form

Thanks for submitting!

Terms and Conditions
  1. Purchase of the courses are refundable only under exceptional conditions, the CSEPracticals shall have full authority to decide if refund request is legitimate and need to be processed.

  2. Illegal copy or distribution of the courses is strictly prohibited, if found indulge in any such activities shall cancel your subscription from any future services being delivered by CSEPracticals

  3. Pls maintain proper decorum in our telegram group, violation of any policy shall cancel your membership from our telegram technical groups.

Privacy Policy
  1. Any study material as provided by CSEPracticals is confidential and is not liable to uploaded on any 3rd party website / gdrive or Posted on social media platform without prior permissions from CSEPracticals

  2. We dont collect / store any of your personal details like email address, phone number

Refund/Cancellation Policy

There is no refund if courses are purchased in accordance with the offers. Pls contact us at csepracticals@gmail.com Or whatsapp to settle any concerns Or Purchases done by mistake. If Courses are purchased directly from hosting site ( udemy ), then refund period is 30 days with 100% refund. All Courses are provided with lifetime access.

Place of Operations  :  Bangalore, Karnataka

Variuos IPC Techniques
IPC Technique 1 -Unix Domain Sockets
Data Synchronization - IPC Project part 1
IPC Technique 2 - Message Queue
Bi-Directional Communication
IPC Technique 3 - Shared Memory
Data Synchronization - IPC Project part 2
IPC Technique 4 -Signals
Data Synchronization - IPC Project part 3
IPC Technique 5 - Network sockets
Project on Socket Programming - IPC Project 4
Multiplexing on Different IPCs
Take Away:
--able to Design Application which require IPC
--Understand the Linux IPC programming interface
--Prepare for IPC based interview Questions
--How to choose the best IPC mechanism

Concept of Data Serialization and DeSerialization
Implementation Remote procedure calls
Marshalling and UnMarshalling of Arguments

Linux Kernel Modules
Netlink Sockets
Concept of TLVs
User Space and Kernel Space Communication
Multicast from Kernel Space to UserSpace

Understanding Threads
--Thread Creation & Termination
--Race condition on Thread Creation
--Passing Argument to Thread Function
--Stack Memory Mgmt for Multi-threaded Programs
--Thread Scheduling
Understanding Concurrency and Parallelism
--Singlularism Vs Concurrency Vs Parallelism
--Concurrent Process Design - 2 Examples
--Threads as Light Weighted Process
--Overlapping and Non-Overlapping Work
Joinable and Detached Threads
--Joinable Vs Detached Threads
--How to Join a thread
--Whom to Join?
--Sample - Map-Reduce Program
Inter Thread Communication
--Understanding Callbacks and Function Pointers
--Best way to implement ITC
--Implementing Notification Chains
--A Publisher Subscriber Model
--How to Subscribe/UnSubscribe
--How to send Notification to Subscribers
Asynchronous Thread Cancellation
--Thread Cancellation
--Asynchronous and Deferred Thread Cancellation
--Problem with Async Thread Cancellation
--Resource Leaking
--Concept of Thread Cleanup Handlers
--Prevent Resource Leaking
--Data Structure Corruption - Invariants
--Cancellation causing Deadlocks
Deferred Cancellation
Listener Threads - Responsibility Delegation
--Why Listener threads?
--Designing Listener threads
--Code Changes and Demo
--Cancellation of blocked Threads
Thread Synchronization
--Critical Section
--Mutex Rules
--Mutex Locking
--Mutex Locking - Code Locking
--Mutex Locking - Data Locking
--Mutex based APIs
--Mutexes in Action
Condition Variables
Dining Philosopher Problem

What this Course is all about ?
Thread Management
Thread Pausing and Resuming
Thread Pools/Work Crew Thread Model
Thread Barriers
Wait Queues
Problem of Bounded Wait and its Solution
Fifo Wait Queues
Implementing Thread Monitors
Implementing Assembly Line Thread Scheduling Model

Header File Management
Creating Linux Libraries
Static & Dynamic Linking
Stages of Compilation Process
Writing Makefiles
Generic Programming
Iterative Macros
Glue based DataStructures
Opaque Pointers
TLV Based Communication
Understanding Virtual Memory
How stack Memory works - Procedure call and returns
Understanding CPU registers - ebp, esp, eax
Heap Memory Management
Problem of Fragmentation
How Malloc works behind the scenes
Paging and page tables in details
Multi Level Paging and Demand paging
Memory Mgmt in Multi-thread Process
Take Away:
--Prepare for interview Questions
--Stack Memory, Stack overflow, Stack Corruption, Stack Registers
--Use of function pointers as Callbacks
--Understand Complete Memory Management in Linux

Write your own Custom CLIs
Integrate CLIs with your C/C++ Projects
Write any show/config/debug CLI

Understand why Leak happens
Implement Memory leak Detection algorithm
Print leak objects by application
Detect Danging pointers
Interview Question: Why C doesn't have java like GC

No Content Availible

No Content Availible

Write a fn to request alloc/dealloc block of Memory from Heap Memory Segment
Implement a fn to (de)allocate Virtual Memory Page
Use mmap() for VM page (De)Allocation
Minimize Fragmentation Problems
Generate Heap Memory usage statistics
Catch Memory Leaks
Implement Best fit, Worst fit, First fit
Understand how Malloc and Free works behind the scenes
Implement your own malloc and free system calls
Handle Internal and External Fragmentation
Implement Block Splitting And Mering Algorithms
Take Away
-- How will you design your own heap Memory Manager?
-- What is the data structure employed for Heap Memory Management?
-- What is the time complexity to allocate memory to a process?
-- How free( ) knows how much memory to free?
-- How to get rid of Memory Fragmentation?

Function of TCP/IP Stack (OSI Model)
Explain the L2 routing concepts
Dynamic construction of L3 Routing Table
Socket Programming from scratch
L2switch and L3 router functioning
Packet journey through the layers of TCP/IP stack
Understand the concept of TLVs
Concept of packet encapsulation
Understand Domain Name System (DNS)
Virtual LANs (VLANs) and routing in VLANs
Broadcast domain and collision domain
Take Away:
--Confident at answering networking related question
--Learn linux system programming side by side
--Open up oppurtunities to networking/system programming companies
--Coding assignments and projects
--Socket programming concepts

TCP IP Stack layer functions
TCP ARQ Challanges
TCP Segments and Sequence No.
TCP Connection Management
Who is Client and Who is Server ?
3-way handshake Explained
Sequence Numbers Consumption Rules
TCP Connection Timeout and Exponential Backoff
TCP Timeout and Retransmission
TCP RTO Problems if computed Wrongly
Expectations from TCP when Segment loss occurs
TCP Exponential backoff
TCP Retransmission Ambiguity Problem
Karn's Algorithm
Karn's Algorithm Illustration
Redundant Retransmission due to dupACK
Selective Acknowledgement (SACKs)
TCP Data flow and Window Management
Sliding Window Rules
Data Accumulation - TCP Nagle Algorithm
TCP Probe Segments
Problem of Silly Window Syndrome (SWS)
TCP Congestion Control Procedures
Congestion Control Algorithms
Slow Start and Congestion Avoidance Algo Explained
Concept of Fast Recovery
Take Away:
-- Difference between Connection-Oriented and Connection-less state
-- TCP Internal functionality and Mechanism
-- Various other complexties of TCP protocol explained in a simplest possible way
-- Understand how TCP is designed and why
-- Understand TCP graphs and why they look like they are
-- handle any interview Question on TCP

Part A -Potential Final Year Project
Implement Layer 2/3 of TCP/IP Stack by yourself from scratch
Building Network Topology from scratch
Timers, GLtreads, Library integration, Makefile, Project modularization Techniques
This is 100% Coding Course with minimal Theory
Writing Custom CLI commands to configure network topology
Implement Routing and Switching Algorithms - The practical way
Managing and developing a big source code from scratch using git, a Version control System
In Every other interview in Networking Domain, You shall be asked to explain Basic Routing Concepts
Use this Project as your Final Year Under-Grad Project
Project 1 : Build a MultiNode Topology Emulation of Routers and Switches
Project 2 : Implement DataLink Layer (L2 routing), including ARP
Project 3 : Implement L2 Switching (Mac-based Learning and Forwarding)
Project 4 : Implement Vlan Based Mac learning and Forwarding
Project 5 : Implement Network Layer (L3 routing)
Project 6 : Case Study : Implement IP-Tunnelling (Optional)
Take Away:
-- 1. Tell why you need Data link layer and Network Layer
-- 2. How to design a new Application protocol on a TCP/IP stack
-- 3. Get your hands dirty with industry-level network programming
-- 4. Learn cooking up, parsing and reading the packet buffers
-- 5. Understand End-To-End Architecture and Design of Network Application and TCP/IP Stack
-- 6. Conquer Interviews for the role of Network Developer Enginee
-- 7. Decorate your GitHub, and add a strong project to your HAT

Part B - Potential Final Year Project
Working with Timers in Networking Domain
Implement Industry level Problem statement
Implement New Networking protocols from Scratch
Concept of TLVs - Extensively used in Networking
Implement Callback Registration Model
Implement Routing Table Construction Algorithm
Cooking and Parsing Networking Packets
Take Away:
-- See your personalized TCP/IP stack in action
-- Prepare full Report on the Project
-- Open for Infinite Extension
-- Implement any Networking Feature on TCP/IP lib developed

Watch Ist 3 Lectures - Preview Available
Configurable via CLIs
Show internal states and results through show CLIs
Respond to generic configuration changes
Compute results and install the results in Tables
Respond to Topological Changes (link failures, device failures, etc )
Time-out stale Data structures if any.
Periodically Generate Or Process Protocol packet
How to add a new feature to the existing working Protocol Codebase
Packet Capture and Debugging
Implement Network Protocol State Machines
Implement Timer Driven Logic
Asynchronous Programming
Project Size Approx 20k LOCs
System Programming, C, Linux OS

Watch Ist 3 Lectures - Preview Available
Building Link State Packets
Asynchronous Programming - Work Deferrals
Link State Packet Flooding
Link State Database Mgmt
Link State Database Synchronization
Converting Link State Database into Graph
Setting Stage for SPF Run
Additional Mini Progect On Interface-Groups
Project Size Approx 20k LOCs
System Programming, C, Linux OS

The Art of Asynchronous Programming
Multithreading Vs Asynchrnous Programming
Reducing Multithreaded Application to Single Threaded
Designing and Implementing Asynchronous Software
Implementing Concurrency in a Single Threaded Applications
Implementing Event Loop
Implementing Asynchrnous packet Queue
Implementing Asynchrnous non-blocking Calls
Implementing Work Deferral

How to manage Multiple Clients through Multiplexing
Creating Multi-Threaded Clients
Forcefully disconnecting the client
Gracefully Shutting down TCP Server
Notifying events to application
Client new connection
Client disconnection
Detecting connection live-ness using Keep Alive msgs
Handling Concurrency using locks
Maintaining statistics per client connection
Client Migration from Multiplexed to Multi-Threaded ( Or Vice Versa )
Building Socket Programming C++ Library over Posix
TCP Message Demarcation

Coming Soon

No Content Availible

No Content Availible

No Content Availible