<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fi">
	<id>https://www.linux.fi/w/index.php?action=history&amp;feed=atom&amp;title=Zombie-prosessi</id>
	<title>Zombie-prosessi - Muutoshistoria</title>
	<link rel="self" type="application/atom+xml" href="https://www.linux.fi/w/index.php?action=history&amp;feed=atom&amp;title=Zombie-prosessi"/>
	<link rel="alternate" type="text/html" href="https://www.linux.fi/w/index.php?title=Zombie-prosessi&amp;action=history"/>
	<updated>2026-05-02T02:34:13Z</updated>
	<subtitle>Tämän sivun muutoshistoria</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://www.linux.fi/w/index.php?title=Zombie-prosessi&amp;diff=48532&amp;oldid=prev</id>
		<title>Lahtis: [[]]</title>
		<link rel="alternate" type="text/html" href="https://www.linux.fi/w/index.php?title=Zombie-prosessi&amp;diff=48532&amp;oldid=prev"/>
		<updated>2019-02-03T22:33:36Z</updated>

		<summary type="html">&lt;p&gt;[[]]&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fi&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Vanhempi versio&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Versio 4. helmikuuta 2019 kello 01.33&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l14&quot;&gt;Rivi 14:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Rivi 14:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Zombien luominen ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Zombien luominen ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Zombie-prosesseja voidaan luoda C&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;:llä &lt;/del&gt;esimerkiksi näin:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Zombie-prosesseja voidaan luoda &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;C&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]-kielellä &lt;/ins&gt;esimerkiksi näin:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;c&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;c&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Lahtis</name></author>
	</entry>
	<entry>
		<id>https://www.linux.fi/w/index.php?title=Zombie-prosessi&amp;diff=46951&amp;oldid=prev</id>
		<title>Oselotti: Ak: Uusi sivu: &#039;&#039;&#039;Zombie-prosessi&#039;&#039;&#039; on prosessi, joka on lopettanut suorituksen, mutta on yhä prosessitaulussa. Zombie-prosessit ovat &#039;&#039;eläviä kuolleita&#039;&#039;, mistä metafora &#039;&#039;wikipedia:fi:Zo...</title>
		<link rel="alternate" type="text/html" href="https://www.linux.fi/w/index.php?title=Zombie-prosessi&amp;diff=46951&amp;oldid=prev"/>
		<updated>2016-08-18T14:04:54Z</updated>

		<summary type="html">&lt;p&gt;Ak: Uusi sivu: &amp;#039;&amp;#039;&amp;#039;Zombie-prosessi&amp;#039;&amp;#039;&amp;#039; on prosessi, joka on lopettanut suorituksen, mutta on yhä prosessitaulussa. Zombie-prosessit ovat &amp;#039;&amp;#039;eläviä kuolleita&amp;#039;&amp;#039;, mistä metafora &amp;#039;&amp;#039;wikipedia:fi:Zo...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Uusi sivu&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Zombie-prosessi&amp;#039;&amp;#039;&amp;#039; on prosessi, joka on lopettanut suorituksen, mutta on yhä prosessitaulussa. Zombie-prosessit ovat &amp;#039;&amp;#039;eläviä kuolleita&amp;#039;&amp;#039;, mistä metafora &amp;#039;&amp;#039;[[wikipedia:fi:Zombi|Zombie]]&amp;#039;&amp;#039; on alun perin nimeksi annettu.&lt;br /&gt;
&lt;br /&gt;
Prosessin päättyessä sen resurssit vapautetaan muiden prosessien käyttöön. Prosessi kuitenkin säilyy prosessitaulussa, jotta äitiprosessi voi lukea sen paluuarvon &amp;lt;tt&amp;gt;wait()&amp;lt;/tt&amp;gt;-järjestelmäkutsulla. &amp;lt;tt&amp;gt;wait()&amp;lt;/tt&amp;gt;-järjestelmäkutsun yhteydessä prosessin [[PID|tunnistenumero]] vapautetaan, jotta se voidaan käyttää myöhemmin uudelleen. Mikäli prosessin vanhempi ei koskaan suorita &amp;lt;tt&amp;gt;wait()&amp;lt;/tt&amp;gt;-järjestelmäkutsua, jää lapsiprosessi roikkumaan järjestelmään ja siitä tulee zombie.&lt;br /&gt;
&lt;br /&gt;
== Zombien etsiminen ==&lt;br /&gt;
Zombie-prosesseja voidaan etsiä [[ps]]- ja [[grep]]-ohjelmien avulla.&lt;br /&gt;
 $ ps axo user,pid,ppid,command,s | grep -w Z$&lt;br /&gt;
&lt;br /&gt;
== Zombien poistaminen ==&lt;br /&gt;
Zombie-prosessia ei voida tappaa, koska se on jo kuollut. Zombie-prosessit voidaan kuitenkin poistaa järjestelmästä lähettämällä niiden äitiprosessille &amp;lt;tt&amp;gt;SIGCHLD&amp;lt;/tt&amp;gt;-signaali.&lt;br /&gt;
 $ kill -CHLD &amp;lt;vanhemman_PID&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Toisinaan vanhempi ei kuitenkaan suostu kuuntelemaan signaalia, vaan se täytyy kylmästi [[kill|tappaa]]. Tässä tapauksessa zombie-prosessi jää orvoksi ja se siirretään &amp;lt;tt&amp;gt;init&amp;lt;/tt&amp;gt;-prosessin (PID 1) lapseksi. &amp;lt;tt&amp;gt;init&amp;lt;/tt&amp;gt; siivoaa säännöllisin väliajoin sen lapsina olevat zombie-prosessit.&lt;br /&gt;
&lt;br /&gt;
== Zombien luominen ==&lt;br /&gt;
Zombie-prosesseja voidaan luoda C:llä esimerkiksi näin:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;lt;unistd.h&amp;gt;&lt;br /&gt;
#include &amp;lt;sys/types.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
    pid_t p;&lt;br /&gt;
    for (;;) {&lt;br /&gt;
        p = fork();&lt;br /&gt;
        if (p &amp;gt; 0)&lt;br /&gt;
            sleep(1);&lt;br /&gt;
        else&lt;br /&gt;
            exit(0);&lt;br /&gt;
    }&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Luokka:Järjestelmä]]&lt;br /&gt;
[[Luokka:Käsitteet]]&lt;/div&gt;</summary>
		<author><name>Oselotti</name></author>
	</entry>
</feed>