IPC Mechanism, Kernel-Application Communication
IPC Mechanism, Kernel-Application Communication
Feb 2012
What constitutes a Linux system?
Boot code
Initializes the system
Loads the operational code into memory
From ROM, network etc.
Kernel modules
A huge number of .o files
Process subsystem, file subsystem, device drivers etc.
Applications
Specific applications (networking, multimedia, GUI)
Standard applications: ls, rm, cp, telnet, ftp etc.
Zipped together in a single file
Linked with the kernel module
Resides in ROM
Downloads the operating system into
the system memory
Can download over UART or Ethernet
Can flash the OS and boot from flash
Contains initialization routines,
drivers, file systems, network stack
Can load a new version into flash
Can boot the system from a remote
host using ftp over network
Process
Process is Program under execution
Representation of a Program in memory.
An application in action, a file with life .
Thread
Thread is an entity within a process.
Allows virtually parallel execution of different
sections of a program.
Pipes
Sockets
Shared memory
FIFOs
Semaphores
signals.
A process binds itself to one socket (or more), and "listens" to it, i.e.
from then on, it can receive messages from other processes.
Most of the sockets are full duplex
The owner of a socket, i.e. the process which is bind to a socket, is
also called server, while the other processes are called clients.
Because messages sent through sockets, they are not limited to
numerical values, the information could be more than just control
signals.
http://tldp.org/LDP/tlk/ipc/ipc.html