[lkml]   [2000]   [Feb]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: What /proc should contain [was: /proc/driver/microcode]
    Hi there.

    >> Nope, most /proc access is does via programs written in C.

    > That varies a lot from file to file. E.g. I haven't seen any
    > programs that are specificly designed to read /proc/atm/* yet,
    > and I know of only one (fuser) that reads /proc/mounts,
    > extracting only partial information (just to pick two examples
    > that I'm quite familiar with).

    As a point of reference, here's a slightly tweaked analysis of the
    programs on the system I'm reading your mail on. Basically, I ran the
    following script...

    Q> #!/bin/bash
    Q> function use() {
    Q> for Z in $* ; do
    Q> strings $Z | grep /proc | sed "s=^=$Z ="
    Q> done
    Q> }
    Q> use /{,s}bin/* /usr/{,s}bin/* | sort -u | tee proc-usage

    ...and then went through it removing comments and print format
    strings. Replace /proc with /dev and you'd soon have an equivalent
    list for that - although I can report that such is MUCH larger...

    There are three programs therein that refer to /proc/mounts ...


    ...and, as you stated, none that refer to /proc/atm on this system.
    However, as this is a RedHat Linux 5.0 based system, that's not
    necessarily an up to date reference thereto...

    Here's the list anyway...

    /bin/kill /proc/%d/cmdline
    /bin/kill /proc/%d/stat

    /bin/mount /proc/devices
    /bin/mount /proc/filesystems
    /bin/mount /proc/mounts

    /bin/netstat /proc/net
    /bin/netstat /proc/net/appletalk
    /bin/netstat /proc/net/ax25
    /bin/netstat /proc/net/ax25_route
    /bin/netstat /proc/net/dev
    /bin/netstat /proc/net/ip_masquerade
    /bin/netstat /proc/net/ipx
    /bin/netstat /proc/net/ipx_route
    /bin/netstat /proc/net/netstat
    /bin/netstat /proc/net/nr
    /bin/netstat /proc/net/nr_neigh
    /bin/netstat /proc/net/nr_nodes
    /bin/netstat /proc/net/raw
    /bin/netstat /proc/net/route
    /bin/netstat /proc/net/rt_cache
    /bin/netstat /proc/net/snmp
    /bin/netstat /proc/net/tcp
    /bin/netstat /proc/net/udp
    /bin/netstat /proc/net/unix

    /bin/umount /proc/devices
    /bin/umount /proc/mounts

    /sbin/arp /proc/net/appletalk
    /sbin/arp /proc/net/arp
    /sbin/arp /proc/net/ax25
    /sbin/arp /proc/net/ipx
    /sbin/arp /proc/net/nr
    /sbin/arp /proc/net/unix

    /sbin/cardctl /proc/devices

    /sbin/cardmgr /proc/devices

    /sbin/fdisk /proc/ide/%s/media
    /sbin/fdisk /proc/scsi/scsi

    /sbin/getty /proc/version

    /sbin/ifconfig /proc/net
    /sbin/ifconfig /proc/net/appletalk
    /sbin/ifconfig /proc/net/ax25
    /sbin/ifconfig /proc/net/dev
    /sbin/ifconfig /proc/net/ipx
    /sbin/ifconfig /proc/net/nr
    /sbin/ifconfig /proc/net/unix

    /sbin/ifup /proc/sys/kernel/modprobe

    /sbin/ipchains /proc/net/ip_fwchains
    /sbin/ipchains /proc/net/ip_fwnames
    /sbin/ipchains /proc/net/ip_masquerade
    /sbin/ipchains /proc/sys/net/ipv4/ip_forward

    /sbin/ipmaddr /proc/net/dev_mcast
    /sbin/ipmaddr /proc/net/igmp
    /sbin/ipmaddr /proc/net/igmp6

    /sbin/iptunnel /proc/net/dev

    /sbin/killall5 /proc/%s/cmdline
    /sbin/killall5 /proc/%s/exe
    /sbin/killall5 /proc/%s/stat
    /sbin/killall5 /proc/version

    /sbin/klogd /proc/kmsg

    /sbin/lsmod /proc/modules

    /sbin/modprobe /proc/modules

    /sbin/pidof /proc/%s/cmdline
    /sbin/pidof /proc/%s/exe
    /sbin/pidof /proc/%s/stat
    /sbin/pidof /proc/version

    /sbin/probe /proc/pci

    /sbin/rarp /proc/net/ax25
    /sbin/rarp /proc/net/nr
    /sbin/rarp /proc/net/rarp

    /sbin/rmmod /proc/modules

    /sbin/rmmod.static /proc/modules

    /sbin/route /proc/net/appletalk
    /sbin/route /proc/net/ax25
    /sbin/route /proc/net/ax25_route
    /sbin/route /proc/net/ipx
    /sbin/route /proc/net/ipx_route
    /sbin/route /proc/net/nr
    /sbin/route /proc/net/nr_neigh
    /sbin/route /proc/net/nr_nodes
    /sbin/route /proc/net/route
    /sbin/route /proc/net/rt_cache
    /sbin/route /proc/net/unix

    /sbin/scsi_info /proc/scsi
    /sbin/scsi_info /proc/scsi/%s
    /sbin/scsi_info /proc/scsi/scsi

    /sbin/slattach /proc/net/ax25
    /sbin/slattach /proc/net/nr

    /sbin/swapoff /proc/swaps

    /sbin/swapon /proc/swaps

    /sbin/uugetty /proc/version

    /usr/bin/dig /proc/
    /usr/bin/dig /proc/interrupts
    /usr/bin/dig /proc/meminfo
    /usr/bin/dig /proc/rtc
    /usr/bin/dig /proc/self/status
    /usr/bin/dig /proc/stat

    /usr/bin/dnsquery /proc/
    /usr/bin/dnsquery /proc/interrupts
    /usr/bin/dnsquery /proc/meminfo
    /usr/bin/dnsquery /proc/rtc
    /usr/bin/dnsquery /proc/self/status
    /usr/bin/dnsquery /proc/stat

    /usr/bin/eject /proc/mounts

    /usr/bin/emacs /proc/loadavg

    /usr/bin/fetchmail /proc/net/dev

    /usr/bin/free /proc/meminfo

    /usr/bin/gmake /proc/loadavg

    /usr/bin/gpm-root /proc/loadavg
    /usr/bin/gpm-root /proc/meminfo

    /usr/bin/host /proc/
    /usr/bin/host /proc/interrupts
    /usr/bin/host /proc/meminfo
    /usr/bin/host /proc/rtc
    /usr/bin/host /proc/self/status
    /usr/bin/host /proc/stat

    /usr/bin/hoststat /proc/loadavg

    /usr/bin/hwdiag /proc/cpuinfo
    /usr/bin/hwdiag /proc/pci
    /usr/bin/hwdiag /proc/scsi/scsi
    /usr/bin/hwdiag /proc/version

    /usr/bin/lsdev /proc/dma
    /usr/bin/lsdev /proc/interrupts
    /usr/bin/lsdev /proc/ioports

    /usr/bin/mailq /proc/loadavg

    /usr/bin/make /proc/loadavg

    /usr/bin/mcookie /proc/loadavg
    /usr/bin/mcookie /proc/stat

    /usr/bin/newaliases /proc/loadavg

    /usr/bin/nslookup /proc/
    /usr/bin/nslookup /proc/interrupts
    /usr/bin/nslookup /proc/meminfo
    /usr/bin/nslookup /proc/rtc
    /usr/bin/nslookup /proc/self/status
    /usr/bin/nslookup /proc/stat

    /usr/bin/nsupdate /proc/
    /usr/bin/nsupdate /proc/interrupts
    /usr/bin/nsupdate /proc/meminfo
    /usr/bin/nsupdate /proc/rtc
    /usr/bin/nsupdate /proc/self/status
    /usr/bin/nsupdate /proc/stat

    /usr/bin/pgp /proc/version
    /usr/bin/pgpe /proc/version
    /usr/bin/pgpk /proc/version
    /usr/bin/pgps /proc/version
    /usr/bin/pgpv /proc/version

    /usr/bin/procinfo /proc/cmdline
    /usr/bin/procinfo /proc/devices
    /usr/bin/procinfo /proc/dma
    /usr/bin/procinfo /proc/filesystems
    /usr/bin/procinfo /proc/interrupts
    /usr/bin/procinfo /proc/loadavg
    /usr/bin/procinfo /proc/meminfo
    /usr/bin/procinfo /proc/modules
    /usr/bin/procinfo /proc/stat
    /usr/bin/procinfo /proc/uptime
    /usr/bin/procinfo /proc/version

    /usr/bin/purgestat /proc/loadavg

    /usr/bin/screen /proc/loadavg

    /usr/bin/strace /proc/%d/stat

    /usr/bin/top /proc/cpuinfo
    /usr/bin/top /proc/meminfo
    /usr/bin/top /proc/stat

    /usr/bin/vmstat /proc/%s/stat
    /usr/bin/vmstat /proc/meminfo
    /usr/bin/vmstat /proc/stat

    /usr/sbin/atd /proc/loadavg

    /usr/sbin/dnskeygen /proc/
    /usr/sbin/dnskeygen /proc/interrupts
    /usr/sbin/dnskeygen /proc/meminfo
    /usr/sbin/dnskeygen /proc/rtc
    /usr/sbin/dnskeygen /proc/self/status
    /usr/sbin/dnskeygen /proc/stat

    /usr/sbin/fuser /proc/%d/stat
    /usr/sbin/fuser /proc/net/%s
    /usr/sbin/fuser /proc/net/unix

    /usr/sbin/in.identd /proc/net/tcp

    /usr/sbin/irpd /proc/
    /usr/sbin/irpd /proc/interrupts
    /usr/sbin/irpd /proc/meminfo
    /usr/sbin/irpd /proc/rtc
    /usr/sbin/irpd /proc/self/status
    /usr/sbin/irpd /proc/stat

    /usr/sbin/named /proc/
    /usr/sbin/named /proc/interrupts
    /usr/sbin/named /proc/meminfo
    /usr/sbin/named /proc/rtc
    /usr/sbin/named /proc/self/status
    /usr/sbin/named /proc/stat

    /usr/sbin/named-xfer /proc/
    /usr/sbin/named-xfer /proc/interrupts
    /usr/sbin/named-xfer /proc/meminfo
    /usr/sbin/named-xfer /proc/rtc
    /usr/sbin/named-xfer /proc/self/status
    /usr/sbin/named-xfer /proc/stat

    /usr/sbin/readprofile /proc/profile

    /usr/sbin/rwhod /proc/loadavg
    /usr/sbin/rwhod /proc/uptime

    /usr/sbin/sendmail /proc/loadavg

    /usr/sbin/setconsole /proc/openprom/options
    /usr/sbin/setconsole /proc/openprom/options/${console}-mode
    /usr/sbin/setconsole /proc/openprom/options/input-device
    /usr/sbin/setconsole /proc/openprom/options/output-device

    Best wishes from Riley.

    * Copyright (C) 1999, Memory Alpha Systems.
    * All rights and wrongs reserved.

    | There is something frustrating about the quality and speed of Linux |
    | development, ie., the quality is too high and the speed is too high, |
    | in other words, I can implement this XXXX feature, but I bet someone |
    | else has already done so and is just about to release their patch. |

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:56    [W:0.042 / U:23.504 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site