{"id":4031,"date":"2025-09-10T10:19:30","date_gmt":"2025-09-10T09:19:30","guid":{"rendered":"https:\/\/workboot.fr\/ciela\/?page_id=4031"},"modified":"2025-09-11T14:02:28","modified_gmt":"2025-09-11T13:02:28","slug":"kernel-et-processus","status":"publish","type":"page","link":"https:\/\/workboot.fr\/ciela\/kernel-et-processus\/","title":{"rendered":"kernel et processus"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Le r\u00e9pertoire \/proc <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sous Linux (UNIX)  tout est fichier <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela veut dire que tout est dans l&rsquo;arborescence depuis la racine ! c&rsquo;est la base de l&rsquo;informatique<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">La variable $$<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">depuis un terminal on va obtenir le PID de se terminal ,  Process IDentifiant ! car le terminal lui m\u00eame  est un processus<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>bruno@elliott:~$ echo $$\n9045\nbruno@elliott:~$ ps\n    PID TTY          TIME CMD\n   9045 pts\/2    00:00:00 bash\n   9056 pts\/2    00:00:00 ps\nbruno@elliott:~$ <\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>$$<\/strong> est une variable d&rsquo;environnement qui nous donne le <strong>PID <\/strong>du processus en cours ici  9045 <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">au passage avec ps (la fonction qui liste les processus , sans option c&rsquo;est \u00e0 partir de la ou nous sommes)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">on notera que ps est aussi un processus lanc\u00e9 et oui il se voit lui m\u00eame 9056<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>bruno@elliott:~$ ps\n    PID TTY          TIME CMD\n   9045 pts\/2    00:00:00 bash\n   9169 pts\/2    00:00:00 ps<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">et normalement le kernel lui attribut un PID diff\u00e8rent .<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Et ce qui est remarquable c&rsquo;est qu&rsquo;il existe que le temps qu&rsquo;on l\u2019utilise <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Le r\u00e9pertoire \/proc<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Dans ce r\u00e9pertoire on y trouve tous les processus lanc\u00e9s et plus<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">le 1 !! est le init ou systemd  , c&rsquo;est le premier processus sur lequel tout s&rsquo;appuie sur votre machine!<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>bruno@elliott:~$ cat \/proc\/1\/cmdline \n<strong>\/sbin\/init<\/strong>bruno@elliott:~$ <\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">ici nous c&rsquo;est init!<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>bruno@elliott:~$ ls \/proc\/1\/cmdline -l\n-r--r--r-- 1 root root 0 10 sept. 09:04 \/proc\/1\/cmdline\nbruno@elliott:~$ <\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">on note ici que ce fichier n&rsquo;est qu&rsquo;en lecture , m\u00eame pour ROOT !!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ce sont des <strong>pseudos fichiers<\/strong>, ou des <strong>fichiers virtuels<\/strong>, qui n&rsquo;existe  que dans le kernel (et non pas sur le disque)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>bruno@elliott:~$ cat \/proc\/9045\/cmdline \n<strong>bash<\/strong>bruno@elliott:~$ <\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">ce deuxi\u00e8me exemple permet de voir notre bash &#8230;  a vous d&rsquo;adapter a votre PID<\/p>\n\n\n\n<details class=\"wp-block-details is-layout-flow wp-block-details-is-layout-flow\"><summary>cat \/proc\/$$\/status<\/summary>\n<p class=\"wp-block-paragraph\">bruno@elliott:~$ cat \/proc\/$$\/status<br>Name: bash<br>Umask: 0022<br>State: S (sleeping)<br>Tgid: 9045<br>Ngid: 0<br>Pid: 9045<br>PPid: 8487<br>TracerPid: 0<br>Uid: 1000 1000 1000 1000<br>Gid: 1000 1000 1000 1000<br>FDSize: 256<br>Groups: 4 20 24 25 27 29 30 33 44 46 100 101 104 106 112 114 117 126 1000<br>NStgid: 9045<br>NSpid: 9045<br>NSpgid: 9045<br>NSsid: 9045<br>VmPeak: 9996 kB<br>VmSize: 9836 kB<br>VmLck: 0 kB<br>VmPin: 0 kB<br>VmHWM: 6276 kB<br>VmRSS: 6272 kB<br>RssAnon: 1932 kB<br>RssFile: 4340 kB<br>RssShmem: 0 kB<br>VmData: 1948 kB<br>VmStk: 132 kB<br>VmExe: 772 kB<br>VmLib: 2288 kB<br>VmPTE: 56 kB<br>VmSwap: 0 kB<br>HugetlbPages: 0 kB<br>CoreDumping: 0<br>THP_enabled: 1<br>Threads: 1<br>SigQ: 0\/63357<br>SigPnd: 0000000000000000<br>ShdPnd: 0000000000000000<br>SigBlk: 0000000000010000<br>SigIgn: 0000000000384004<br>SigCgt: 000000004b813efb<br>CapInh: 0000000000000000<br>CapPrm: 0000000000000000<br>CapEff: 0000000000000000<br>CapBnd: 000001ffffffffff<br>CapAmb: 0000000000000000<br>NoNewPrivs: 0<br>Seccomp: 0<br>Seccomp_filters: 0<br>Speculation_Store_Bypass: thread vulnerable<br>SpeculationIndirectBranch: conditional enabled<br>Cpus_allowed: f<br>Cpus_allowed_list: 0-3<br>Mems_allowed: 00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000001<br>Mems_allowed_list: 0<br>voluntary_ctxt_switches: 494<br>nonvoluntary_ctxt_switches: 41<br>bruno@elliott:~$<\/p>\n<\/details>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Beaucoup trop d&rsquo;infos !!et \u00e7a tue l&rsquo;info , non ? \ud83d\ude42<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>bruno@elliott:~$ cat \/proc\/$$\/status | grep State\nState:\t<strong>S (sleeping)<\/strong>\nbruno@elliott:~$ <\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">avec pipe (|) et grep on filtre que State <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">et on remarque que mon processus bash dors ! il attends une action ..<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">pour illustrer<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/workboot.fr\/ciela\/wp-content\/uploads\/2025\/09\/xcloxkp.png\"><img loading=\"lazy\" decoding=\"async\" width=\"951\" height=\"590\" src=\"https:\/\/workboot.fr\/ciela\/wp-content\/uploads\/2025\/09\/xcloxkp.png\" alt=\"\" class=\"wp-image-4055\" srcset=\"https:\/\/workboot.fr\/ciela\/wp-content\/uploads\/2025\/09\/xcloxkp.png 951w, https:\/\/workboot.fr\/ciela\/wp-content\/uploads\/2025\/09\/xcloxkp-300x186.png 300w, https:\/\/workboot.fr\/ciela\/wp-content\/uploads\/2025\/09\/xcloxkp-768x476.png 768w\" sizes=\"auto, (max-width: 951px) 100vw, 951px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">xcloxk    est un petit utilitaire qui nous lance une pendule (fen\u00eatre graphique)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">on voit son PID qui est 10429<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>bruno@elliott:~$ kill -STOP 10429\n\n&#91;1]+  Stopp\u00e9                 xclock\nbruno@elliott:~$ cat \/proc\/10429\/status | grep State\nState:\tT (stopped)\nbruno@elliott:~$ \n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">on peut relancer avec<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kill -CONT 10429<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Le r\u00e9pertoire \/proc Sous Linux (UNIX) tout est fichier Cela veut dire que tout est dans l&rsquo;arborescence depuis la racine ! c&rsquo;est la base de l&rsquo;informatique La variable $$ depuis un terminal on va obtenir le PID de se terminal , Process IDentifiant ! car le terminal lui m\u00eame est un processus $$ est une [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","footnotes":""},"class_list":["post-4031","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"admin","author_link":"https:\/\/workboot.fr\/ciela\/author\/admin\/"},"uagb_comment_info":0,"uagb_excerpt":"Le r\u00e9pertoire \/proc Sous Linux (UNIX) tout est fichier Cela veut dire que tout est dans l&rsquo;arborescence depuis la racine ! c&rsquo;est la base de l&rsquo;informatique La variable $$ depuis un terminal on va obtenir le PID de se terminal , Process IDentifiant ! car le terminal lui m\u00eame est un processus $$ est une\u2026","_links":{"self":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/4031","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/comments?post=4031"}],"version-history":[{"count":9,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/4031\/revisions"}],"predecessor-version":[{"id":4056,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/4031\/revisions\/4056"}],"wp:attachment":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/media?parent=4031"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}