Process creation and threading • Creating Threads • Replacing process image using execlp • Process duplication using fork Inter-process communication • Pipes, popen and pclose functions • Stream pipes, passing file descriptors • Shared memory • Message passing Synchronization • Synchronization with Mutexes • Synchronization with semaphores • Race Condition Simulation of Shell commands using system calls • file/directory related system calls / library functions (read, write, open, close, lseek, opendir, readdir, closedir, etc) File allocation strategies • sequential file allocation, indexed file allocation, linked file allocation.