update readme
This commit is contained in:
parent
daf6ab40fd
commit
6b21db0dd9
1 changed files with 16 additions and 1 deletions
17
README.md
17
README.md
|
@ -2,6 +2,7 @@
|
|||
|
||||
A Linux daemon runs continuously written in golang. Refer to [ahenk-docs/dev](https://git.aliberksandikci.com.tr/Liderahenk/ahenk-docs/src/branch/main/dev/resources.md#daemon-linux) for resources
|
||||
|
||||
This repo will be include two separate daemons. One of them is written with C language for understanding native daemon processes [c-daemon](c-daemon/) . Other one is written in go for implement same deamon concepts to go language and using with native performance [go-daemon](go-daemon/)
|
||||
<br>
|
||||
|
||||
---
|
||||
|
@ -17,4 +18,18 @@ It is not mandatory but daemon processes are usually named to end with the lette
|
|||
|
||||
- Initial operations, such as reading configuration files or obtaining necessary system resources, must be performed before the process becomes a daemon
|
||||
|
||||
-
|
||||
- A background running process is created with init as its parent process. For this purpose, a sub-process is forked from the init process first, and then the upper process is terminated with exit
|
||||
|
||||
- A new session should open by calling the setsid function, and the process should be disconnected from the terminal
|
||||
|
||||
- All open file descriptors inherited from the parent process are closed
|
||||
|
||||
- Standard input, output, and error messages are redirected to `/dev/null`
|
||||
|
||||
- The working directory of the process must change
|
||||
|
||||
The operating system groups processes into session and process groups. Each session consists of process groups.
|
||||
|
||||
Processes receive their inputs and send their outputs to **controlling terminal**. A controlling terminal is associated with only **one** session at a time
|
||||
|
||||
A session and process groups in it have identification (**ID**) numbers; these identification numbers are the process identification numbers (**PID**) of the session and process group leaders. A child process shares the same group as its parent process
|
Loading…
Reference in a new issue