Line | |
---|
1 | :PROPERTIES:
|
---|
2 | :ID: 256b197c-6097-4af8-b0a7-7da69325861d
|
---|
3 | :END:
|
---|
4 | #+title: Unix
|
---|
5 | * Unix
|
---|
6 | ** Составляющие
|
---|
7 | *** Ядро
|
---|
8 | - системные вызовы
|
---|
9 | - прерывания
|
---|
10 | - управление процессами, правами доступа и т.д.
|
---|
11 | *** Термины
|
---|
12 | - Процесс :: То что выполняется в момент времени. Юникс система может
|
---|
13 | выполнять одно действие в такт. Процессы имеют иерархию и могут
|
---|
14 | порождать друг друга.
|
---|
15 |
|
---|
16 | Порождаются процессы функцией fork()
|
---|
17 |
|
---|
18 | #+begin_src C
|
---|
19 | main ()
|
---|
20 | {
|
---|
21 | int childPID, ParentPID;
|
---|
22 | if((childPID = fork()) == -1) {
|
---|
23 | perror("Can't fork");
|
---|
24 | exit(1);
|
---|
25 | } else if (childPID == 0) {
|
---|
26 | printf("child: childPID=%d, ParentPID=%d\n",
|
---|
27 | getpid(), getppid());
|
---|
28 | exit(0);
|
---|
29 | } else {
|
---|
30 | printf("parent: childPID=%d, ParentPID=%d\n",
|
---|
31 | childPID, getpid());
|
---|
32 | exit(0);
|
---|
33 | }
|
---|
34 | }
|
---|
35 | #+end_src
|
---|
36 |
|
---|
37 |
|
---|
38 | *** Userland
|
---|
39 | **** Пользователи и группы
|
---|
40 |
|
---|
41 | ** Литература
|
---|
42 | - Peter Salus A Quarter Century of UNIX
|
---|
43 |
|
---|
44 |
|
---|
45 |
|
---|
46 |
|
---|
Note:
See
TracBrowser
for help on using the repository browser.