1 Processen en het pseudo bestands systeem /proc
De kernel heeft een methode nodig om informatie op te kunnen vragen over actieve processen.
Hiervoor maakt de kernel het pseudo-bestands systeem /proc aan.
Dit bestands systeem staat niet op de vaste schijf van de computer, maar is volledig in het werkgeheugen
van de computer aanwezig.
Om die reden wordt voor de meeste bestanden in /proc een lengte van 0 bytes aangegeven.
Proc voorziet in een directory structuur waarin elk process een subdirectory heeft waarvan de naam de PID
van het proces is.
In deze subdirectories houdt de kernel dynamische infomatie over het proces bij. Deze informatie kan ook
voor de systeem beheerder van belang zijn.
De volgende tabel belicht enkele subdirectories en hun betekenis:
cmdline | Hierin staat de volledige opdracht regel waarmee het proces is opgestart. Als het gehele proces uit het geheugen is geswapt, of als het een zombie proces betreft, is dit bestand leeg |
---|---|
fd | In de subdirectory fd bestaat een entry voor elk bestand dat door het proces wordt gebruikt. Elke entry die voorkomt in deze directory is een symbolic link naar het echte bestand dat door het proces in gebruik is. |
maps | In het bestand maps staan de adressen van de geheugen gebieden die door het proces worden gebruikt |
stat | (status) Het bestand stat geeft status-informatie over het proces. De opdracht ps gebruikt deze informatie. Een meer leesbare variant op dit bestand bestaat soms als het bestand status. |
cpuinfo | Het bestand cpuinfo bevat uitgebreide informatie over de processor |
devices | In het bestand devices wordt een overzicht gegeven van device-drivers die in de kernel zijn geconfigureerd. |
dma | Toont welke DMA channels op dit moment in gebruik zijn |
filesystems | Het bestand filesystems bevat een lijst van alle bestands systemen die momenteel bij de kernel in gebruik zijn |
interrupts | Het bestand interrupts geeft een overzicht van de interrupt die in gebruik zijn Ook staat er voor elke interrupt genoemd hoe zwaar de processor belasting door de betreffende interrupt is |
ioports | geeft een lijst van de I/O-ports die op dit moment in gebruik zijn voor iedere poort is vermeld door welke processen de poort gebruikt wordt |
kcore | Dit bestand vertegenwoordigd het fysieke geheugen op de computer De grootte komt overeen met de totale hoeveelheid geheugen in de computer. Wanneer het bestand echter alleen voorkomt in de directory /proc, neemt het geen ruimte op de harddisk in beslag. Dit bestand kan worden gebruikt als coredump wanneer het gecopieerd wordt naar een ander medium |
kmsg | Dit bestand bewaart berichten die door de kernel worden gegenereerd. Deze berichten worden ook gerouteerd naar systemroutine syslog. De inhoud van dit bestand wordt uitgelezen met het programma dmesg |
loadavg | Houdt de werklast van het systeem bij. Hierin staat het aantal jobs dat in de afgelopen 1, 5, en 15 minuten in de queue is geplaatst. Opdrachten als uptime maken gebruik van dit bestand |
meminfo | houdt bij hoeveel gebruikt en vrij geheugen er is in het fysieke geheugen en het swap geheugen. Ook staat aangegeven hoeveel buffers de kernel in beslag neemt. De gegevens in dit bestand worden gebruikt door de opdracht free |
modules | de lijst met modules door het systeem geladen |
net | bevat infomatie over de netwerk protocollen die worden ingezet. De informatie in dit bestand kan worden uitgelezen met netstat |
pci | Een lijst van alle PCI devices die in het systeem voorkomen en hun configuratie |
scsi | Een directory waarin informatie staat over alle SCSI-devices die in het systeem voorkomen |
stat | statistische gegevens over de kernel en het systeem, zoals het aantal interrupts dat ontvangen is sinds het opstarten van het systeem |
sys | Bevat een aantal bestanden en directory's die verwijzen naar kernel-variabelen. Zo komt er een bestand /proc/sys/kernel/hostname voor, waarin de naam van de host wordt bewaard. Sommige variabelen die hier voorkomen kunnen gewijzigd worden door de inhoud van het bestand te wijzigen. Men kan bv. het maximum aantal bestanden dat tegelijkertijd kan geopend zijn met de opdracht echo 4096 > /proc/sys/fs/filemax |