{"id":188,"date":"2026-06-07T23:17:39","date_gmt":"2026-06-07T21:17:39","guid":{"rendered":"https:\/\/it2508.sspu-opava.eu\/?p=188"},"modified":"2026-06-15T19:14:23","modified_gmt":"2026-06-15T17:14:23","slug":"prace-s-procesy","status":"publish","type":"post","link":"https:\/\/it2508.sspu-opava.eu\/?p=188","title":{"rendered":"Pr\u00e1ce s procesy"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"188\" class=\"elementor elementor-188\">\n\t\t\t\t<div class=\"elementor-element elementor-element-655301c e-flex e-con-boxed e-con e-parent\" data-id=\"655301c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-0f31ba9 e-con-full e-flex e-con e-child\" data-id=\"0f31ba9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-cf1127d elementor-widget elementor-widget-heading\" data-id=\"cf1127d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u010c\u00e1st 1: Zji\u0161t\u011bn\u00ed z\u00e1kladn\u00edch atribut\u016f (PID, PPID, UID)<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-09558e6 elementor-widget elementor-widget-text-editor\" data-id=\"09558e6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p data-path-to-node=\"3\">Ka\u017ed\u00fd proces m\u00e1 sv\u00e9 unik\u00e1tn\u00ed PID a identitu u\u017eivatele (UID). Ne\u017e za\u010dneme procesy vytv\u00e1\u0159et, nau\u010d\u00edme se zjistit data o procesu, ve kter\u00e9m n\u00e1\u0161 program pr\u00e1v\u011b b\u011b\u017e\u00ed.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6f80e99 elementor-widget elementor-widget-text-editor\" data-id=\"6f80e99\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>K tomu pou\u017eijeme syst\u00e9mov\u00e1 vol\u00e1n\u00ed <code data-path-to-node=\"4\" data-index-in-node=\"34\">getpid()<\/code> (vlastn\u00ed ID), <code data-path-to-node=\"4\" data-index-in-node=\"57\">getppid()<\/code> (ID rodi\u010dovsk\u00e9ho procesu) a <code data-path-to-node=\"4\" data-index-in-node=\"95\">getuid()<\/code> (ID u\u017eivatele, pod kter\u00fdm proces b\u011b\u017e\u00ed).<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-90026db elementor-widget elementor-widget-eael-code-snippet\" data-id=\"90026db\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"eael-code-snippet.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t      <div class=\"eael-code-snippet-wrapper theme-dark view-mode-default\" data-language=\"cpp\" data-copy-button=\"1\" data-snippet-id=\"eael-code-snippet-90026db\" id=\"eael-code-snippet-90026db\" >\n      \n         <div class=\"eael-code-snippet-content\">\n                        <pre class=\"eael-code-snippet-code language-cpp\"><code>#include &lt;stdio.h&gt;\n#include &lt;unistd.h&gt;\n#include &lt;sys\/types.h&gt;\n\nint main() {\n    \/\/ Z\u00edsk\u00e1me atributy sou\u010dasn\u00e9ho procesu\n    pid_t my_pid = getpid();\n    pid_t parent_pid = getppid();\n    uid_t my_uid = getuid();\n\n    printf(&quot;[Hlavn\u00ed proces] Moje PID: %d\\n&quot;, my_pid);\n    printf(&quot;[Hlavn\u00ed proces] PID m\u00e9ho rodi\u010de (PPID): %d\\n&quot;, parent_pid);\n    printf(&quot;[Hlavn\u00ed proces] Moje u\u017eivatelsk\u00e9 UID: %d\\n&quot;, my_uid);\n\n    return 0;\n}<\/code><\/pre>\n                     <\/div>\n      <\/div>\n      \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5426473 elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"5426473\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c0e47e5 e-con-full e-flex e-con e-child\" data-id=\"c0e47e5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4e268a7 elementor-widget elementor-widget-heading\" data-id=\"4e268a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u010c\u00e1st 2: Vytvo\u0159en\u00ed nov\u00e9ho procesu pomoc\u00ed <code>fork()<\/code><\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d585fa2 elementor-widget elementor-widget-text-editor\" data-id=\"d585fa2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Nov\u00e9 procesy d\u011bd\u00ed atributy ze sv\u00e9ho rodi\u010dovsk\u00e9ho (parent) procesu. V Linuxu se nov\u00fd proces vytv\u00e1\u0159\u00ed tak, \u017ee se ten st\u00e1vaj\u00edc\u00ed \u201erozdvoj\u00ed\u201c pomoc\u00ed vol\u00e1n\u00ed <code data-path-to-node=\"8\" data-index-in-node=\"168\">fork()<\/code>.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c9dbe8c elementor-widget elementor-widget-text-editor\" data-id=\"c9dbe8c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p data-path-to-node=\"9\">Od okam\u017eiku zavol\u00e1n\u00ed <code data-path-to-node=\"9\" data-index-in-node=\"21\">fork()<\/code> b\u011b\u017e\u00ed v syst\u00e9mu dva identick\u00e9 procesy (rodi\u010d a d\u00edt\u011b). Rozli\u0161\u00edme je podle n\u00e1vratov\u00e9 hodnoty:<\/p><ul data-path-to-node=\"10\"><li><p data-path-to-node=\"10,0,0\">Rodi\u010d dostane jako v\u00fdsledek PID sv\u00e9ho nov\u00e9ho d\u00edt\u011bte.<\/p><\/li><li><p data-path-to-node=\"10,1,0\">D\u00edt\u011b dostane hodnotu <code data-path-to-node=\"10,1,0\" data-index-in-node=\"21\">0<\/code>.<\/p><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0efd97c elementor-widget elementor-widget-eael-code-snippet\" data-id=\"0efd97c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"eael-code-snippet.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t      <div class=\"eael-code-snippet-wrapper theme-dark view-mode-default\" data-language=\"cpp\" data-copy-button=\"1\" data-snippet-id=\"eael-code-snippet-0efd97c\" id=\"eael-code-snippet-0efd97c\" >\n      \n         <div class=\"eael-code-snippet-content\">\n                        <pre class=\"eael-code-snippet-code language-cpp\"><code>#include &lt;stdio.h&gt;\n#include &lt;unistd.h&gt;\n#include &lt;sys\/types.h&gt;\n\nint main() {\n    pid_t pid;\n\n    printf(&quot;P\u0159ed rozdvojen\u00edm (forkem)...\\n&quot;);\n\n    \/\/ Rozdvojen\u00ed procesu\n    pid = fork();\n\n    if (pid &lt; 0) {\n        \/\/ Pokud fork sel\u017ee\n        perror(&quot;Fork se nepovedl :(&quot;);\n        return 1;\n    } \n    else if (pid == 0) {\n        \/\/ K\u00f3d, kter\u00fd vykon\u00e1 pouze DOSP\u011aL\u00c9 D\u00cdT\u011a\n        printf(&quot;[D\u00edt\u011b] J\u00e1 jsem nov\u00fd proces! Moje PID je %d a PID m\u00e9ho rodi\u010de je %d.\\n&quot;, getpid(), getppid());\n    } \n    else {\n        \/\/ K\u00f3d, kter\u00fd vykon\u00e1 pouze RODI\u010c\n        printf(&quot;[Rodi\u010d] J\u00e1 jsem rodi\u010d. Moje PID je %d a vytvo\u0159il jsem d\u00edt\u011b s PID %d.\\n&quot;, getpid(), pid);\n    }\n\n    printf(&quot;[Proces %d] Tohle vyp\u00ed\u0161\u00ed oba procesy, proto\u017ee oba pokra\u010duj\u00ed odsud dol\u016f.\\n&quot;, getpid());\n    return 0;\n}<\/code><\/pre>\n                     <\/div>\n      <\/div>\n      \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2b32f9a elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"2b32f9a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-670d653 e-con-full e-flex e-con e-child\" data-id=\"670d653\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2385772 elementor-widget elementor-widget-heading\" data-id=\"2385772\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u010c\u00e1st 3: Skupiny proces\u016f a \u010dek\u00e1n\u00ed na d\u00edt\u011b (<code>wait<\/code>)<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6725934 elementor-widget elementor-widget-text-editor\" data-id=\"6725934\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>V t\u00e9to fin\u00e1ln\u00ed uk\u00e1zce vytvo\u0159\u00edme proces, zjist\u00edme jeho skupinu pomoc\u00ed <code data-path-to-node=\"15\" data-index-in-node=\"69\">getpgrp()<\/code> a uk\u00e1\u017eeme si, jak rodi\u010d spr\u00e1vn\u011b po\u010dk\u00e1 na ukon\u010den\u00ed sv\u00e9ho d\u00edt\u011bte pomoc\u00ed vol\u00e1n\u00ed <code data-path-to-node=\"15\" data-index-in-node=\"156\">wait()<\/code>. \u010cek\u00e1n\u00ed je d\u016fle\u017eit\u00e9, aby se z d\u00edt\u011bte po skon\u010den\u00ed nestal tzv. \u201ezombie proces\u201c.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e1e8c7f elementor-widget elementor-widget-eael-code-snippet\" data-id=\"e1e8c7f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"eael-code-snippet.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t      <div class=\"eael-code-snippet-wrapper theme-dark view-mode-default\" data-language=\"cpp\" data-copy-button=\"1\" data-snippet-id=\"eael-code-snippet-e1e8c7f\" id=\"eael-code-snippet-e1e8c7f\" >\n      \n         <div class=\"eael-code-snippet-content\">\n                        <pre class=\"eael-code-snippet-code language-cpp\"><code>#include &lt;stdio.h&gt;\n#include &lt;unistd.h&gt;\n#include &lt;sys\/types.h&gt;\n#include &lt;sys\/wait.h&gt;\n\nint main() {\n    pid_t pid;\n\n    printf(&quot;[Rodi\u010d] Moje ID skupiny (PGID) je: %d\\n&quot;, getpgrp());\n\n    pid = fork();\n\n    if (pid == 0) {\n        \/\/ Sme v d\u011btsk\u00e9m procesu\n        printf(&quot;[D\u00edt\u011b] Moje PGID je: %d (zd\u011bdil jsem ho od rodi\u010de)\\n&quot;, getpgrp());\n        printf(&quot;[D\u00edt\u011b] Te\u010f budu 2 sekundy simulovat pr\u00e1ci...\\n&quot;);\n        sleep(2);\n        printf(&quot;[D\u00edt\u011b] Kon\u010d\u00edm.\\n&quot;);\n        return 42; \/\/ D\u00edt\u011b vr\u00e1t\u00ed rodi\u010di status 42\n    } \n    else {\n        \/\/ Jsme v rodi\u010di\n        int status;\n        printf(&quot;[Rodi\u010d] \u010cek\u00e1m, a\u017e d\u00edt\u011b dokon\u010d\u00ed pr\u00e1ci...\\n&quot;);\n        \n        \/\/ Rodi\u010d se zde zastav\u00ed a \u010dek\u00e1 na sign\u00e1l o konci d\u00edt\u011bte\n        pid_t child_pid = wait(&amp;status);\n\n        if (WIFEXITED(status)) {\n            printf(&quot;[Rodi\u010d] D\u00edt\u011b %d \u00fasp\u011b\u0161n\u011b skon\u010dilo a vr\u00e1tilo k\u00f3d: %d\\n&quot;, \n                   child_pid, WEXITSTATUS(status));\n        }\n    }\n\n    return 0;\n}<\/code><\/pre>\n                     <\/div>\n      <\/div>\n      \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5541fe4 elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"5541fe4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6e64f65 e-con-full e-flex e-con e-child\" data-id=\"6e64f65\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-372a38f elementor-widget elementor-widget-text-editor\" data-id=\"372a38f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h3 data-path-to-node=\"17\">Co jsme se nau\u010dili?<\/h3><ol start=\"1\" data-path-to-node=\"18\"><li><p data-path-to-node=\"18,0,0\">Jak zjistit identitu procesu (PID) a u\u017eivatele (UID).<\/p><\/li><li><p data-path-to-node=\"18,1,0\">Jak naklonovat proces pomoc\u00ed <code data-path-to-node=\"18,1,0\" data-index-in-node=\"29\">fork()<\/code>.<\/p><\/li><li><p data-path-to-node=\"18,2,0\">\u017de procesy automaticky d\u011bd\u00ed skupinu (PGID) a rodi\u010d na n\u011b mus\u00ed po\u010dkat pomoc\u00ed <code data-path-to-node=\"18,2,0\" data-index-in-node=\"76\">wait()<\/code>.<\/p><\/li><\/ol>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u010c\u00e1st 1: Zji\u0161t\u011bn\u00ed z\u00e1kladn\u00edch atribut\u016f (PID, PPID, UID) Ka\u017ed\u00fd proces m\u00e1 sv\u00e9 unik\u00e1tn\u00ed PID a identitu u\u017eivatele (UID). Ne\u017e za\u010dneme procesy vytv\u00e1\u0159et, nau\u010d\u00edme se zjistit data o procesu, ve kter\u00e9m n\u00e1\u0161 program pr\u00e1v\u011b b\u011b\u017e\u00ed. K tomu pou\u017eijeme syst\u00e9mov\u00e1 vol\u00e1n\u00ed getpid() (vlastn\u00ed ID), getppid() (ID rodi\u010dovsk\u00e9ho procesu) a getuid() (ID u\u017eivatele, pod kter\u00fdm proces b\u011b\u017e\u00ed). #include [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":267,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-188","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-priklady"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Pr\u00e1ce s procesy - Syst\u00e9mov\u00e9 programov\u00e1n\u00ed pro blbe\u010dky<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/it2508.sspu-opava.eu\/?p=188\" \/>\n<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pr\u00e1ce s procesy - Syst\u00e9mov\u00e9 programov\u00e1n\u00ed pro blbe\u010dky\" \/>\n<meta property=\"og:description\" content=\"\u010c\u00e1st 1: Zji\u0161t\u011bn\u00ed z\u00e1kladn\u00edch atribut\u016f (PID, PPID, UID) Ka\u017ed\u00fd proces m\u00e1 sv\u00e9 unik\u00e1tn\u00ed PID a identitu u\u017eivatele (UID). Ne\u017e za\u010dneme procesy vytv\u00e1\u0159et, nau\u010d\u00edme se zjistit data o procesu, ve kter\u00e9m n\u00e1\u0161 program pr\u00e1v\u011b b\u011b\u017e\u00ed. K tomu pou\u017eijeme syst\u00e9mov\u00e1 vol\u00e1n\u00ed getpid() (vlastn\u00ed ID), getppid() (ID rodi\u010dovsk\u00e9ho procesu) a getuid() (ID u\u017eivatele, pod kter\u00fdm proces b\u011b\u017e\u00ed). #include [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/it2508.sspu-opava.eu\/?p=188\" \/>\n<meta property=\"og:site_name\" content=\"Syst\u00e9mov\u00e9 programov\u00e1n\u00ed pro blbe\u010dky\" \/>\n<meta property=\"article:published_time\" content=\"2026-06-07T21:17:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-15T17:14:23+00:00\" \/>\n<meta name=\"author\" content=\"it2508\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Napsal(a)\" \/>\n\t<meta name=\"twitter:data1\" content=\"it2508\" \/>\n\t<meta name=\"twitter:label2\" content=\"Odhadovan\u00e1 doba \u010dten\u00ed\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minuty\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188\"},\"author\":{\"name\":\"it2508\",\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/#\\\/schema\\\/person\\\/621ad95043938a11b5ecc466941e7b8b\"},\"headline\":\"Pr\u00e1ce s procesy\",\"datePublished\":\"2026-06-07T21:17:39+00:00\",\"dateModified\":\"2026-06-15T17:14:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188\"},\"wordCount\":247,\"image\":{\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/ic-proces.svg\",\"articleSection\":[\"P\u0159\u00edklady\"],\"inLanguage\":\"cs\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188\",\"url\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188\",\"name\":\"Pr\u00e1ce s procesy - Syst\u00e9mov\u00e9 programov\u00e1n\u00ed pro blbe\u010dky\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/ic-proces.svg\",\"datePublished\":\"2026-06-07T21:17:39+00:00\",\"dateModified\":\"2026-06-15T17:14:23+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/#\\\/schema\\\/person\\\/621ad95043938a11b5ecc466941e7b8b\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188#breadcrumb\"},\"inLanguage\":\"cs\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"cs\",\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188#primaryimage\",\"url\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/ic-proces.svg\",\"contentUrl\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/ic-proces.svg\",\"width\":48,\"height\":48},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?p=188#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Pr\u00e1ce s procesy\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/#website\",\"url\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/\",\"name\":\"Syst\u00e9mov\u00e9 programov\u00e1n\u00ed pro blbe\u010dky\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"cs\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/#\\\/schema\\\/person\\\/621ad95043938a11b5ecc466941e7b8b\",\"name\":\"it2508\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"cs\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/37f843df1fee828212a1c17e9c0f1888e06b2de0310b08d1a5f5f4044655f4c5?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/37f843df1fee828212a1c17e9c0f1888e06b2de0310b08d1a5f5f4044655f4c5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/37f843df1fee828212a1c17e9c0f1888e06b2de0310b08d1a5f5f4044655f4c5?s=96&d=mm&r=g\",\"caption\":\"it2508\"},\"sameAs\":[\"https:\\\/\\\/it2508.sspu-opava.eu\"],\"url\":\"https:\\\/\\\/it2508.sspu-opava.eu\\\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Pr\u00e1ce s procesy - Syst\u00e9mov\u00e9 programov\u00e1n\u00ed pro blbe\u010dky","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/it2508.sspu-opava.eu\/?p=188","og_locale":"cs_CZ","og_type":"article","og_title":"Pr\u00e1ce s procesy - Syst\u00e9mov\u00e9 programov\u00e1n\u00ed pro blbe\u010dky","og_description":"\u010c\u00e1st 1: Zji\u0161t\u011bn\u00ed z\u00e1kladn\u00edch atribut\u016f (PID, PPID, UID) Ka\u017ed\u00fd proces m\u00e1 sv\u00e9 unik\u00e1tn\u00ed PID a identitu u\u017eivatele (UID). Ne\u017e za\u010dneme procesy vytv\u00e1\u0159et, nau\u010d\u00edme se zjistit data o procesu, ve kter\u00e9m n\u00e1\u0161 program pr\u00e1v\u011b b\u011b\u017e\u00ed. K tomu pou\u017eijeme syst\u00e9mov\u00e1 vol\u00e1n\u00ed getpid() (vlastn\u00ed ID), getppid() (ID rodi\u010dovsk\u00e9ho procesu) a getuid() (ID u\u017eivatele, pod kter\u00fdm proces b\u011b\u017e\u00ed). #include [&hellip;]","og_url":"https:\/\/it2508.sspu-opava.eu\/?p=188","og_site_name":"Syst\u00e9mov\u00e9 programov\u00e1n\u00ed pro blbe\u010dky","article_published_time":"2026-06-07T21:17:39+00:00","article_modified_time":"2026-06-15T17:14:23+00:00","author":"it2508","twitter_card":"summary_large_image","twitter_misc":{"Napsal(a)":"it2508","Odhadovan\u00e1 doba \u010dten\u00ed":"3 minuty"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/it2508.sspu-opava.eu\/?p=188#article","isPartOf":{"@id":"https:\/\/it2508.sspu-opava.eu\/?p=188"},"author":{"name":"it2508","@id":"https:\/\/it2508.sspu-opava.eu\/#\/schema\/person\/621ad95043938a11b5ecc466941e7b8b"},"headline":"Pr\u00e1ce s procesy","datePublished":"2026-06-07T21:17:39+00:00","dateModified":"2026-06-15T17:14:23+00:00","mainEntityOfPage":{"@id":"https:\/\/it2508.sspu-opava.eu\/?p=188"},"wordCount":247,"image":{"@id":"https:\/\/it2508.sspu-opava.eu\/?p=188#primaryimage"},"thumbnailUrl":"https:\/\/it2508.sspu-opava.eu\/wp-content\/uploads\/2026\/06\/ic-proces.svg","articleSection":["P\u0159\u00edklady"],"inLanguage":"cs"},{"@type":"WebPage","@id":"https:\/\/it2508.sspu-opava.eu\/?p=188","url":"https:\/\/it2508.sspu-opava.eu\/?p=188","name":"Pr\u00e1ce s procesy - Syst\u00e9mov\u00e9 programov\u00e1n\u00ed pro blbe\u010dky","isPartOf":{"@id":"https:\/\/it2508.sspu-opava.eu\/#website"},"primaryImageOfPage":{"@id":"https:\/\/it2508.sspu-opava.eu\/?p=188#primaryimage"},"image":{"@id":"https:\/\/it2508.sspu-opava.eu\/?p=188#primaryimage"},"thumbnailUrl":"https:\/\/it2508.sspu-opava.eu\/wp-content\/uploads\/2026\/06\/ic-proces.svg","datePublished":"2026-06-07T21:17:39+00:00","dateModified":"2026-06-15T17:14:23+00:00","author":{"@id":"https:\/\/it2508.sspu-opava.eu\/#\/schema\/person\/621ad95043938a11b5ecc466941e7b8b"},"breadcrumb":{"@id":"https:\/\/it2508.sspu-opava.eu\/?p=188#breadcrumb"},"inLanguage":"cs","potentialAction":[{"@type":"ReadAction","target":["https:\/\/it2508.sspu-opava.eu\/?p=188"]}]},{"@type":"ImageObject","inLanguage":"cs","@id":"https:\/\/it2508.sspu-opava.eu\/?p=188#primaryimage","url":"https:\/\/it2508.sspu-opava.eu\/wp-content\/uploads\/2026\/06\/ic-proces.svg","contentUrl":"https:\/\/it2508.sspu-opava.eu\/wp-content\/uploads\/2026\/06\/ic-proces.svg","width":48,"height":48},{"@type":"BreadcrumbList","@id":"https:\/\/it2508.sspu-opava.eu\/?p=188#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/it2508.sspu-opava.eu\/"},{"@type":"ListItem","position":2,"name":"Pr\u00e1ce s procesy"}]},{"@type":"WebSite","@id":"https:\/\/it2508.sspu-opava.eu\/#website","url":"https:\/\/it2508.sspu-opava.eu\/","name":"Syst\u00e9mov\u00e9 programov\u00e1n\u00ed pro blbe\u010dky","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/it2508.sspu-opava.eu\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"cs"},{"@type":"Person","@id":"https:\/\/it2508.sspu-opava.eu\/#\/schema\/person\/621ad95043938a11b5ecc466941e7b8b","name":"it2508","image":{"@type":"ImageObject","inLanguage":"cs","@id":"https:\/\/secure.gravatar.com\/avatar\/37f843df1fee828212a1c17e9c0f1888e06b2de0310b08d1a5f5f4044655f4c5?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/37f843df1fee828212a1c17e9c0f1888e06b2de0310b08d1a5f5f4044655f4c5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/37f843df1fee828212a1c17e9c0f1888e06b2de0310b08d1a5f5f4044655f4c5?s=96&d=mm&r=g","caption":"it2508"},"sameAs":["https:\/\/it2508.sspu-opava.eu"],"url":"https:\/\/it2508.sspu-opava.eu\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/it2508.sspu-opava.eu\/index.php?rest_route=\/wp\/v2\/posts\/188","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/it2508.sspu-opava.eu\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/it2508.sspu-opava.eu\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/it2508.sspu-opava.eu\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/it2508.sspu-opava.eu\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=188"}],"version-history":[{"count":7,"href":"https:\/\/it2508.sspu-opava.eu\/index.php?rest_route=\/wp\/v2\/posts\/188\/revisions"}],"predecessor-version":[{"id":276,"href":"https:\/\/it2508.sspu-opava.eu\/index.php?rest_route=\/wp\/v2\/posts\/188\/revisions\/276"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/it2508.sspu-opava.eu\/index.php?rest_route=\/wp\/v2\/media\/267"}],"wp:attachment":[{"href":"https:\/\/it2508.sspu-opava.eu\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=188"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/it2508.sspu-opava.eu\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=188"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/it2508.sspu-opava.eu\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=188"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}