Hardwere

来源:互联网 发布:丽姬网络歌手 编辑:程序博客网 时间:2024/05/17 07:01

ISA是基于 PC/AT总线的由IEEE(美国电气电子工程师协会)1987年正式确立的标准。ISA槽是一个黑色的62+36线插槽,其中62线的一段基于8位的PC总线,可以独立使用,插接8位的扩展卡,而62线与36线相加后就扩展成标准的16位ISA,插接16位的扩展卡。ISA工作频率定在8.33MHz,数据传输率为8.33MB/s。随着系统工作频率的迅速提高,其配用的扩展卡也逐渐被淘汰,现在最新的主板已开始取消ISA槽。

PCI(外围部件互连)1993年Intel发表PCI2.0版,PCI开始走进主板,对应的PCI扩展槽是一条白色的与ISA平行的插槽。PCI有32位和64位两种,32位PCI槽124线,64位槽188线,目前常用的是32位插槽。PCI槽的时钟频率为33.3MHz,32位PCI的数据传输率为133MB/s,大大高于ISA。所以PCI问世后迅速成了扩展总线的主流,流行的扩展卡也都转移到PCI上,如显示卡、声卡、网卡、MODEM卡等等。

 

AGP(加速图形端口)1996年Intel公司在PCI的基础上专为显示卡接口提出AGP标准。AGP槽是主板上的一条咖啡色的插槽。AGP使用32位数据总线,工作频率为66.6MHz,AGP 1×的数据传输率可达266MB/s,AGP 2×在一个时钟周期的上升沿和下降沿各传输一次资料,其数据传输率可达到533MB/s,而AGP 4×的理论传输率为1.066GB/s。 AGP有如此高的带宽,使得显示卡与主存储器之间能直接进行数据传输,即所谓的DIME(直接内存执行)。

 

lspci: lspci - list all PCI devices

rcc-pok-idg-2318:/proc # lspci --help
lspci: invalid option -- '-'
Usage: lspci [<switches>]

Basic display modes:
-mm   Produce machine-readable output (single -m for an obsolete format)
-t   Show bus tree

Display options:
-v   Be verbose (-vv for very verbose)
-k   Show kernel drivers handling each device
-x   Show hex-dump of the standard part of the config space
-xxx  Show hex-dump of the whole config space (dangerous; root only)
-xxxx  Show hex-dump of the 4096-byte extended config space (root only)
-b   Bus-centric view (addresses and IRQ's as seen by the bus)
-D   Always show domain numbers

Resolving of device ID's to names:
-n   Show numeric ID's
-nn   Show both textual and numeric ID's (names & numbers)
-q   Query the PCI ID database for unknown ID's via DNS
-qq   As above, but re-query locally cached entries
-Q   Query the PCI ID database for all ID's via DNS

Selection of devices:
-s [[[[<domain>]:]<bus>]:][<slot>][.[<func>]] Show only devices in selected slots
-d [<vendor>]:[<device>]      Show only devices with specified ID's

Other options:
-i <file>  Use specified ID database instead of /usr/share/pci.ids.gz
-p <file>  Look up kernel modules in a given file instead of default modules.pcimap
-M   Enable `bus mapping' mode (dangerous; root only)

PCI access options:
-A <method> Use the specified PCI access method (see `-A help' for a list)
-O <par>=<val> Set PCI access parameter (see `-O help' for a list)
-G   Enable PCI access debugging
-H <mode>  Use direct hardware access (<mode> = 1 or 2)
-F <file>  Read PCI configuration dump from a given file

 

 

例子: lspci

00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.2 USB Controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II] (rev 01)#USB
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Cirrus Logic GD 5446#//显卡
00:03.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 20)#网卡
00:04.0 SCSI storage controller: Qumranet, Inc. Virtio block device
00:05.0 RAM memory: Qumranet, Inc. Device 1002

 

ACPI:多半是和高级电源管理相关的,现代的计算机你不需要按机器面板上的电源按钮了,系统都能自动帮你把电源断掉,早期的机器都需要手工关电源的喔。



VGA/SVGA:你把系统装在vmware里了,因为我看到你的显示适配器是vmware提供的虚拟显卡驱动。VGA/SVGA就是显示相关的芯片执行标准。



SCSI:小型计算机系统接口,你的硬盘在vmware里设置的是scsi模式。scsi接口在服务器上有scsi卡卖的,一般用来接硬盘,但是也可以接其它东西,比如说扫描仪,磁带机等等。





Ethernet Controller:以太网接口控制器,就是你的网卡

 

如果是非root用户可以使用/sbin/lspci查看。

 

查看IO Port:

rcc-pok-idg-2318:/proc # cat /proc/ioports
0000-001f : dma1
0020-0021 : pic1
0040-0043 : timer0
0050-0053 : timer1
0060-0060 : keyboard
.....

 

dmesg命令:

NAME
       dmesg - print or control the kernel ring buffer

SYNOPSIS
       dmesg [ -c ] [ -n level ] [ -s bufsize ]

DESCRIPTION
       dmesg is used to examine or control the kernel ring buffer.

       The program helps users to print out their bootup messages.  Instead of
       copying the messages by hand, the user need only:
              dmesg > boot.messages
       and mail the boot.messages file to whoever can debug their problem.

 

 


 

转载一篇关于linux下proc目录小解的文章:

/proc/cpuinfo文件
这个文件提供了有关系统CPU的多种信息。这些信息是从内核里对CPU的测试代码中得到的。文件列出了CPU的普通型号(386,486,586,686等),以及能得到的更多特定信息(制造商,型号和版本)。文件还包含了以bogomips表示的处理器速度,而且如果检测到CPU的多种特性或者bug,文件还会包含相应的标志。这个文件的格式为:文件由多行构成,每行包括一个域名称,一个冒号和一个值。
示例:
[root@localhost proc]# cat cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 6
model : 8
model name : AMD Athlon(tm) XP 1800+
stepping : 1
cpu MHz : 1530.165
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow
bogomips : 2998.27

--------------------------------------------------------------------------------
/proc/devices文件
这个文件列出字符和块设备的主设备号,以及分配到这些设备号的设备名称。
示例:
[root@localhost /]# cat /proc/devices
Character devices:
1 mem
4 /dev/vc/0
4 tty
4 ttyS
5 /dev/tty
5 /dev/console
5 /dev/ptmx
6 lp
7 vcs
10 misc
13 input
14 sound
29 fb
36 netlink
116 alsa
128 ptm
136 pts
180 usb

 

Block devices:
1 ramdisk
2 fd
3 ide0
9 md
22 ide1
253 device-mapper
254 mdp

 

--------------------------------------------------------------------------------
/proc/dma文件
这个文件列出由驱动程序保留的DMA通道和保留它们的驱动程序名称。casade项供用于把次DMA控制器从主控制器分出的DMA行所使用;这一行不能用于其它用途。
示例:
[root@localhost ~]# cat /proc/dma
4: cascade

 

--------------------------------------------------------------------------------
/proc/filesystems文件
这个文件列出可供使用的文件系统类型,一种类型一行。虽然它们通常是编入内核的文件系统类型,但该文件还可以包含可加载的内核模块加入的其它文件系统类型。
示例:
[root@localhost proc]# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev sockfs
nodev binfmt_misc
nodev usbfs
nodev usbdevfs
nodev futexfs
nodev tmpfs
nodev pipefs
nodev eventpollfs
nodev devpts
ext2
nodev ramfs
nodev hugetlbfs
iso9660
nodev mqueue
nodev selinuxfs
ext3
nodev rpc_pipefs
nodev autofs

 

--------------------------------------------------------------------------------
/proc/interrupts文件
这个文件的每一行都有一个保留的中断。每行中的域有:中断号,本行中断的发生次数,可能带有一个加号的域(SA_INTERRUPT标志设置),以及登记这个中断的驱动程序的名字。可以在安装新硬件前,像查看/proc/dma和/proc/ioports一样用cat命令手工查看手头的这个文件。这几个文件列出了当前投入使用的资源(但是不包括那些没有加载驱动程序的硬件所使用的资源)。
示例:
[root@localhost SPECS]# cat /proc/interrupts
CPU0
0: 7039406 XT-PIC timer
1: 6533 XT-PIC i8042
2: 0 XT-PIC cascade
3: 0 XT-PIC uhci_hcd
5: 108 XT-PIC VIA8233, uhci_hcd
8: 1 XT-PIC rtc
9: 0 XT-PIC acpi
10: 0 XT-PIC ehci_hcd
11: 17412 XT-PIC uhci_hcd, eth0
12: 140314 XT-PIC i8042
14: 37897 XT-PIC ide0
15: 60813 XT-PIC ide1
NMI: 0
ERR: 1

 

--------------------------------------------------------------------------------
/proc/ioports文件
这个文件列出了诸如磁盘驱动器,以太网卡和声卡设备等多种设备驱动程序登记的许多I/O端口范围。
示例:
[root@localhost SPECS]# cat /proc/ioports
0000-001f : dma1
0020-0021 : pic1
0040-0043 : timer0
0050-0053 : timer1
0060-006f : keyboard
0070-0077 : rtc
0080-008f : dma page reg
00a0-00a1 : pic2
00c0-00df : dma2
00f0-00ff : fpu
0170-0177 : ide1
01f0-01f7 : ide0
0376-0376 : ide1
0378-037a : parport0
037b-037f : parport0
03c0-03df : vga+
03f6-03f6 : ide0
03f8-03ff : serial
0800-0803 : PM1a_EVT_BLK
0804-0805 : PM1a_CNT_BLK
0808-080b : PM_TMR
0810-0815 : ACPI CPU throttle
0820-0823 : GPE0_BLK
0cf8-0cff : PCI conf1
dc00-dcff : 0000:00:12.0
dc00-dcff : via-rhine
e000-e0ff : 0000:00:11.5
e000-e0ff : VIA8233
e400-e41f : 0000:00:10.0
e400-e41f : uhci_hcd
e800-e81f : 0000:00:10.1
e800-e81f : uhci_hcd
ec00-ec1f : 0000:00:10.2
ec00-ec1f : uhci_hcd
fc00-fc0f : 0000:00:11.1
fc00-fc07 : ide0
fc08-fc0f : ide1

 

--------------------------------------------------------------------------------
/proc/kcore文件
这个文件是系统的物理内存以core文件格式保存的文件。例如,GDB能用它考察内核的数据结构。它不是纯文本,而是/proc目录下为数不多的几个二进制格式的项之一。
示例:
暂无
--------------------------------------------------------------------------------

 

/proc/kmsg文件
这个文件用于检索用printk生成的内核消息。任何时刻只能有一个具有超级用户权限的进程可以读取这个文件。也可以用系统调用syslog检索这些消息。通常使用工具dmesg或守护进程klogd检索这些消息。
示例:
暂无

 

--------------------------------------------------------------------------------
/proc/ksyms文件
这个文件列出了已经登记的内核符号;这些符号给出了变量或函数的地址。每行给出一个符号的地址,符号名称以及登记这个符号的模块。程序ksyms,insmod和kmod使用这个文件。它还列出了正在运行的任务数,总任务数和最后分配的PID。
示例:
暂无

 

--------------------------------------------------------------------------------
/proc/loadavg文件
这个文件给出以几个不同的时间间隔计算的系统平均负载,这就如同uptime命令显示的结果那样。前三个数字是平均负载。这是通过计算过去1分钟,5分钟,15分钟里运行队列中的平均任务数得到的。随后是正在运行的任务数和总任务数。最后是上次使用的进程号。

 

示例:
[root@localhost ~]# cat /proc/loadavg
0.11 0.16 0.14 3/126 3912

 

--------------------------------------------------------------------------------
/proc/locks文件
这个文件包含在打开的文件上的加锁信息。文件中的每一行描述了特定文件和文档上的加锁信息以及对文件施加的锁的类型。内核也可以需要时对文件施加强制性锁。
示例:
[root@localhost redhat]# cat /proc/locks
1: POSIX ADVISORY READ 3822 03:0a:1067117 0 EOF
2: POSIX ADVISORY READ 3822 03:0a:1067138 0 EOF
3: POSIX ADVISORY WRITE 3326 03:0a:2326540 0 EOF
4: POSIX ADVISORY WRITE 2639 03:0a:2966595 0 EOF
5: FLOCK ADVISORY WRITE 2591 03:0a:2966586 0 EOF
6: POSIX ADVISORY WRITE 2540 03:0a:2966578 0 EOF
7: POSIX ADVISORY WRITE 2530 03:0a:2966579 0 EOF
8: POSIX ADVISORY WRITE 2402 03:0a:2966563 0 EOF
9: POSIX ADVISORY WRITE 2371 03:0a:2966561 0 EOF
--------------------------------------------------------------------------------

 

/proc/mdstat文件
这个文件包含了由md设备驱动程序控制的RAID设备信息。
示例:
[root@localhost ~]# cat /proc/mdstat
Personalities :
unused devices: <none>

 

--------------------------------------------------------------------------------
/proc/meminfo文件
这个文件给出了内存状态的信息。它显示出系统中空闲内存,已用物理内存和交换内存的总量。它还显示出内核使用的共享内存和缓冲区总量。这些信息的格式和free命令显示的结果类似。
示例:
[root@localhost ~]# cat /proc/meminfo
MemTotal:       223812 kB
MemFree:          3764 kB
Buffers:          9148 kB
Cached:          92112 kB
SwapCached:        364 kB
Active:         183640 kB
Inactive:        17196 kB
HighTotal:           0 kB
HighFree:            0 kB
LowTotal:       223812 kB
LowFree:          3764 kB
SwapTotal:      626524 kB
SwapFree:       620328 kB
Dirty:              12 kB
Writeback:           0 kB
Mapped:         142880 kB
Slab:            12668 kB
Committed_AS:   376732 kB
PageTables:       2336 kB
VmallocTotal:  3907576 kB
VmallocUsed:      2968 kB
VmallocChunk:  3904224 kB
HugePages_Total:     0
HugePages_Free:      0
Hugepagesize:     4096 kB

 

--------------------------------------------------------------------------------
/proc/misc文件
这个文件报告用内核函数misc_register登记的设备驱动程序。
示例:
[root@localhost ~]# cat /proc/misc
63 device-mapper
175 agpgart
135 rtc

 

--------------------------------------------------------------------------------
/proc/modules文件
这个文件给出可加载内核模块的信息。lsmod程序用这些信息显示有关模块的名称,大小,使用数目方面的信息。
示例:
[root@localhost /]# cat /proc/modules
md5 4033 1 - Live 0x10a7f000
ipv6 232577 8 - Live 0x10b0c000
parport_pc 24705 1 - Live 0x10a8b000
lp 11565 0 - Live 0x10a7b000
parport 41737 2 parport_pc,lp, Live 0x10a55000
autofs4 24005 0 - Live 0x10a74000
i2c_dev 10433 0 - Live 0x109d2000
i2c_core 22081 1 i2c_dev, Live 0x10a6d000
sunrpc 160421 1 - Live 0x10a9d000
ipt_REJECT 6465 1 - Live 0x109da000
ipt_state 1857 5 - Live 0x109eb000
ip_conntrack 40693 1 ipt_state, Live 0x10a62000
iptable_filter 2753 1 - Live 0x10896000
ip_tables 16193 3 ipt_REJECT,ipt_state,iptable_filter, Live 0x109ed000
dm_mod 54741 0 - Live 0x109f8000
button 6481 0 - Live 0x10905000
battery 8517 0 - Live 0x109d6000
ac 4805 0 - Live 0x10908000
uhci_hcd 31449 0 - Live 0x109dd000
ehci_hcd 31557 0 - Live 0x10949000
snd_via82xx 27237 2 - Live 0x10953000
snd_ac97_codec 64401 1 snd_via82xx, Live 0x10912000
snd_pcm_oss 47609 0 - Live 0x1093c000
snd_mixer_oss 17217 2 snd_pcm_oss, Live 0x1090c000
snd_pcm 97993 2 snd_via82xx,snd_pcm_oss, Live 0x10923000
snd_timer 29765 1 snd_pcm, Live 0x108ec000
snd_page_alloc 9673 2 snd_via82xx,snd_pcm, Live 0x108bd000
gameport 4801 1 snd_via82xx, Live 0x108a6000
snd_mpu401_uart 8769 1 snd_via82xx, Live 0x108b9000
snd_rawmidi 26725 1 snd_mpu401_uart, Live 0x108e4000
snd_seq_device 8137 1 snd_rawmidi, Live 0x1083b000
snd 54053 11 snd_via82xx,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer,snd_mpu401_uart,snd_rawmidi,snd_seq_device, Live 0x108f6000
soundcore 9889 2 snd, Live 0x1089b000
via_rhine 23497 0 - Live 0x1089f000
mii 4673 1 via_rhine, Live 0x10893000
floppy 58609 0 - Live 0x108a9000
ext3 116809 1 - Live 0x10875000
jbd 74969 1 ext3, Live 0x10861000

 


lsmod命令显示结果如下:
[root@localhost /]# lsmod
Module                  Size  Used by
md5                     4033  1
ipv6                  232577  8
parport_pc             24705  1
lp                     11565  0
parport                41737  2 parport_pc,lp
autofs4                24005  0
i2c_dev                10433  0
i2c_core               22081  1 i2c_dev
sunrpc                160421  1
ipt_REJECT              6465  1
ipt_state               1857  5
ip_conntrack           40693  1 ipt_state
iptable_filter          2753  1
ip_tables              16193  3 ipt_REJECT,ipt_state,iptable_filter
dm_mod                 54741  0
button                  6481  0
battery                 8517  0
ac                      4805  0
uhci_hcd               31449  0
ehci_hcd               31557  0
snd_via82xx            27237  2
snd_ac97_codec         64401  1 snd_via82xx
snd_pcm_oss            47609  0
snd_mixer_oss          17217  2 snd_pcm_oss
snd_pcm                97993  2 snd_via82xx,snd_pcm_oss
snd_timer              29765  1 snd_pcm
snd_page_alloc          9673  2 snd_via82xx,snd_pcm
gameport                4801  1 snd_via82xx
snd_mpu401_uart         8769  1 snd_via82xx
snd_rawmidi            26725  1 snd_mpu401_uart
snd_seq_device          8137  1 snd_rawmidi
snd                    54053  11 snd_via82xx,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer,snd_mpu401_uart,snd_rawmidi,snd_seq_device
soundcore               9889  2 snd
via_rhine              23497  0
mii                     4673  1 via_rhine
floppy                 58609  0
ext3                  116809  1
jbd                    74969  1 ext3

 


--------------------------------------------------------------------------------
/proc/mounts文件
这个文件以/etc/mtab文件的格式给出当前系统所安装的文件系统信息。这个文件也能反映出任何手工安装从而在/etc/mtab文件中没有包含的文件系统。
示例:
[root@localhost /]# cat /proc/mounts
rootfs / rootfs rw 0 0
/proc /proc proc rw,nodiratime 0 0
none /dev tmpfs rw 0 0
/dev/root / ext3 rw 0 0
none /dev tmpfs rw 0 0
none /selinux selinuxfs rw 0 0
/proc /proc proc rw,nodiratime 0 0
/proc/bus/usb /proc/bus/usb usbfs rw 0 0
/sys /sys sysfs rw 0 0
none /dev/pts devpts rw 0 0
none /dev/shm tmpfs rw 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0
sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0

 

--------------------------------------------------------------------------------
/proc/pci文件
这个文件给出PCI设备的信息。用它可以方便地诊断PCI问题。你可以从这个文件中检索到的信息包括诸如IDE接口或USB控制器这样的设备,总线,设备和功能编号,设备延迟以及IRQ编号。
示例:
[root@localhost /]# cat /proc/pci
PCI devices found:
  Bus  0, device   0, function  0:
    Class 0600: PCI device 1106:3116 (rev 0).
      Master Capable.  Latency=8.
      Prefetchable 32 bit memory at 0xe0000000 [0xe7ffffff].
  Bus  0, device   1, function  0:
    Class 0604: PCI device 1106:b091 (rev 0).
      Master Capable.  No bursts.  Min Gnt=12.
  Bus  0, device  16, function  2:
    Class 0c03: PCI device 1106:3038 (rev 12.
      IRQ 5.
      Master Capable.  Latency=32.
      I/O at 0xec00 [0xec1f].
  Bus  0, device  16, function  1:
    Class 0c03: PCI device 1106:3038 (rev 12.
      IRQ 3.
      Master Capable.  Latency=32.
      I/O at 0xe800 [0xe81f].
  Bus  0, device  16, function  0:
    Class 0c03: PCI device 1106:3038 (rev 12.

 

  IRQ 11.
      Master Capable.  Latency=32.
      I/O at 0xe400 [0xe41f].
  Bus  0, device  16, function  3:
    Class 0c03: PCI device 1106:3104 (rev 130).
      IRQ 10.
      Master Capable.  Latency=32.
      Non-prefetchable 32 bit memory at 0xdfffff00 [0xdfffffff].
  Bus  0, device  17, function  0:
    Class 0601: PCI device 1106:3177 (rev 0).
  Bus  0, device  17, function  1:
    Class 0101: PCI device 1106:0571 (rev 6).
      IRQ 255.
      Master Capable.  Latency=32.
      I/O at 0xfc00 [0xfc0f].
  Bus  0, device  17, function  5:
    Class 0401: PCI device 1106:3059 (rev 80).
      IRQ 5.
      I/O at 0xe000 [0xe0ff].
  Bus  0, device  18, function  0:
    Class 0200: PCI device 1106:3065 (rev 116).
      IRQ 11.
      Master Capable.  Latency=32.  Min Gnt=3.Max Lat=8.
      I/O at 0xdc00 [0xdcff].
      Non-prefetchable 32 bit memory at 0xdffffe00 [0xdffffeff].
  Bus  1, device   0, function  0:
    Class 0300: PCI device 5333:8d04 (rev 0).
      IRQ 11.
      Master Capable.  Latency=32.  Min Gnt=4.Max Lat=255.
      Non-prefetchable 32 bit memory at 0xdfe80000 [0xdfefffff].
      Prefetchable 32 bit memory at 0xd0000000 [0xd7ffffff].

 

--------------------------------------------------------------------------------
/proc/stat文件
这个文件包含的信息有CPU利用率,磁盘,内存页,内存对换,全部中断,接触开关以及赏赐自举时间(自1970年1月1日起的秒数)。
示例:
[root@localhost /]# cat /proc/stat
cpu  31994 3898 7161 381600 15254 451 0
cpu0 31994 3898 7161 381600 15254 451 0
intr 4615930 4404290 3364 0 0 12 0 7 0 2 0 0 12618 112114 0 44142 39381
ctxt 1310498
btime 1148891913
processes 4249
procs_running 4
procs_blocked 0

 

--------------------------------------------------------------------------------
/proc/uptime文件
这个文件给出自从上次系统自举以来的秒数,以及其中有多少秒处于空闲。这主要供uptime程序使用。比较这两个数字能够告诉你长期来看CPU周期浪费的比例。
示例:
[root@localhost /]# cat /proc/uptime
4477.04 4021.10

 

--------------------------------------------------------------------------------
/proc/version文件
这个文件只有一行内容,说明正在运行的内核版本。可以用标准的编程方法进行分析获得所需的系统信息。
示例:
[root@localhost /]# cat /proc/version
Linux version 2.6.9-1.667 (bhcompile@tweety.build.redhat.com) (gcc version 3.4.2 20041017 (Red Hat 3.4.2-6.fc3)) #1 Tue Nov 2 14:41:25 EST 2004

 

--------------------------------------------------------------------------------
/proc/net子目录
此目录下的文件描述或修改了联网代码的行为。可以通过使用arp,netstat,route和ipfwadm命令设置或查询这些特殊文件中的许多文件。
示例:
[root@localhost /]# ls /proc/net
anycast6       ip_conntrack         mcfilter6  rt6_stats     tcp
arp            ip_conntrack_expect  netlink    rt_acct       tcp6
dev            ip_mr_cache          netstat    rt_cache      udp
dev_mcast      ip_mr_vif            packet     snmp          udp6
dev_snmp6      ip_tables_matches    psched     snmp6         unix
if_inet6       ip_tables_names      raw        sockstat      wireless
igmp           ip_tables_targets    raw6       sockstat6
igmp6          ipv6_route           route      softnet_stat
ip6_flowlabel  mcfilter             rpc        stat
--------------------------------------------------------------------------------
以下摘要介绍此目录下文件的功能:
arp
转储每个网络接口的arp表中dev包的统计
dev
来自网络设备的统计
dev_mcast
列出二层(数据链路层)多播组
igmp
加入的IGMP多播组
netlink
netlink套接口的信息
netstat
网络流量的多种统计。第一行是信息头,带有每个变量的名称。接下来的一行保存相应变量的值
raw
原始套接口的套接口表
route
静态路由表
rpc
包含RPC信息的目录
rt_cache
路由缓冲
snmp
snmp agent的ip/icmp/tcp/udp协议统计;各行交替给出字段名和值
sockstat
列出使用的tcp/udp/raw/pac/syc_cookies的数量
tcp
TCP连接的套接口
udp
UDP连接的套接口表
unix
UNIX域套接口的套接口表
--------------------------------------------------------------------------------

 

示例:[root@localhost /]# cat /proc/net/route
Iface   Destination     Gateway         Flags   RefCnt  Use     Metric  Mask   MTU      Window  IRTT
eth0    0035C2DA        00000000        0001    0       0       0       80FFFFF0
eth0    0000FEA9        00000000        0001    0       0       0       0000FFF0
eth0    00000000        0135C2DA        0003    0       0       0       00000000
--------------------------------------------------------------------------------

 

[root@localhost /]# cat /proc/net/tcp
  sl  local_address rem_address   st tx_queue rx_queue tr tm->when retrnsmt   uid  timeout inode
   0: 00000000:8000 00000000:0000 0A 00000000:00000000 00:00000000 00000000    29        0 9525 1 0dde7500 3000 0 0 2 -1
   1: 00000000:006F 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0        0 9484 1 0dde79e0 3000 0 0 2 -1
   2: 0100007F:0277 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0        0 10049 1 0a8e3a00 3000 0 0 2 -1
   3: 0100007F:14D7 00000000:0000 0A 00000000:00000000 00:00000000 00000000    99        0 9847 1 0dde7020 3000 0 0 2 -1
   4: 0100007F:0019 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0        0 10286 1 0a8e3520 3000 0 0 2 -1
--------------------------------------------------------------------------------
[root@localhost /]# cat /proc/net/arp
IP address       HW type     Flags       HW address            Mask     Device
218.194.53.1     0x1         0x2         00:0D:BC:78:07:3F     *        eth0
--------------------------------------------------------------------------------
[root@localhost /]# cat /proc/net/udp
  sl  local_address rem_address   st tx_queue rx_queue tr tm->when retrnsmt   uid  timeout inode
   0: 00000000:8000 00000000:0000 07 00000000:00000000 00:00000000 00000000    29        0 9520 2 0b4ef7c0
105: 00000000:14E9 00000000:0000 07 00000000:00000000 00:00000000 00000000    99        0 10284 2 0b4ef040
111: 00000000:006F 00000000:0000 07 00000000:00000000 00:00000000 00000000 0        0 9483 2 0b4efcc0
116: 00000000:02F4 00000000:0000 07 00000000:00000000 00:00000000 00000000 0        0 9511 2 0b4efa40
119: 00000000:0277 00000000:0000 07 00000000:00000000 00:00000000 00000000 0        0 10050 2 0b4ef2c0

 

--------------------------------------------------------------------------------
/proc/scsi子目录
此目录下包含一个列出了所有检测到的SCSI设备的文件,并且为每种控制器驱动程序提供一个目录,在这个目录下又为已安装的此种控制器的每个实例提供一个子目录。
示例:
由于本人的机器没有SCSI设备,顾暂时无法提供示例。

 

--------------------------------------------------------------------------------
/proc/sys子目录
在此目录下有许多子目录。此目录中的许多项都可以用来调整系统的性能。这个目录包含信息太多,无法介绍全部。只在示例中展示目录下的一些文件。
示例:[root@localhost /]# ls /proc/sys
debug  dev  fs  kernel  net  proc  sunrpc  vm
--------------------------------------------------------------------------------
[root@localhost ~]# ls /proc/sys/fs
aio-max-nr   dentry-state       file-nr      lease-break-time  overflowgid
aio-nr       dir-notify-enable  inode-nr     leases-enable     overflowuid
binfmt_misc  file-max           inode-state  mqueue            quota
--------------------------------------------------------------------------------
[root@localhost ~]# ls /proc/sys/kernel
acct                   hotplug      panic                   sem
cad_pid                modprobe     panic_on_oops           shmall
cap-bound              msgmax       pid_max                 shmmax
core_pattern           msgmnb       print-fatal-signals     shmmni
core_uses_pid          msgmni       printk                  sysrq
ctrl-alt-del           ngroups_max  printk_ratelimit        tainted
domainname             osrelease    printk_ratelimit_burst  threads-max
exec-shield            ostype       pty                     vdso
exec-shield-randomize  overflowgid  random                  version
hostname               overflowuid  real-root-dev
--------------------------------------------------------------------------------
[root@localhost ~]# ls /proc/sys/net
core  ethernet  ipv4  ipv6  unix
--------------------------------------------------------------------------------

 

[root@localhost sys]# ls /proc/sys/vm
block_dump                 laptop_mode            nr_pdflush_threads
dirty_background_ratio     legacy_va_layout       overcommit_memory
dirty_expire_centisecs     lower_zone_protection  overcommit_ratio
dirty_ratio                max_map_count          page-cluster
dirty_writeback_centisecs  min_free_kbytes        swappiness
hugetlb_shm_group          nr_hugepages           vfs_cache_pressure
--------------------------------------------------------------------------------

 

[root@localhost sys]# ls /proc/sys/net/ipv4
conf                               tcp_fack
icmp_echo_ignore_all               tcp_fin_timeout
icmp_echo_ignore_broadcasts        tcp_frto
icmp_ignore_bogus_error_responses  tcp_keepalive_intvl
icmp_ratelimit                     tcp_keepalive_probes
icmp_ratemask                      tcp_keepalive_time
igmp_max_memberships               tcp_low_latency
igmp_max_msf                       tcp_max_orphans
inet_peer_gc_maxtime               tcp_max_syn_backlog
inet_peer_gc_mintime               tcp_max_tw_buckets
inet_peer_maxttl                   tcp_mem
inet_peer_minttl                   tcp_moderate_rcvbuf
inet_peer_threshold                tcp_no_metrics_save
ip_autoconfig                      tcp_orphan_retries
ip_conntrack_max                   tcp_reordering
ip_default_ttl                     tcp_retrans_collapse
ip_dynaddr                         tcp_retries1
ip_forward                         tcp_retries2
ipfrag_high_thresh                 tcp_rfc1337
ipfrag_low_thresh                  tcp_rmem
ipfrag_secret_interval             tcp_sack
ipfrag_time                        tcp_stdurg
ip_local_port_range                tcp_synack_retries
ip_nonlocal_bind                   tcp_syncookies
ip_no_pmtu_disc                    tcp_syn_retries
neigh                              tcp_timestamps
netfilter                          tcp_tso_win_divisor
route                              tcp_tw_recycle
tcp_abort_on_overflow              tcp_tw_reuse
tcp_adv_win_scale                  tcp_vegas_alpha
tcp_app_win                        tcp_vegas_beta
tcp_bic                            tcp_vegas_cong_avoid
tcp_bic_fast_convergence           tcp_vegas_gamma
tcp_bic_low_window                 tcp_westwood
tcp_dsack                          tcp_window_scaling
tcp_ecn                            tcp_wmem
--------------------------------------------------------------------------------
[root@localhost sys]# cat /proc/sys/kernel/shmall
2097152
--------------------------------------------------------------------------------
[root@localhost sys]# cat /proc/sys/kernel/osrelease
2.6.9-1.667

 

--------------------------------------------------------------------------------
总结:/proc文件系统包含了大量的有关当前系统状态的信息。proc的手册页中也有对这些文件的解释文档。把文件和分析这些文件的工具产生的输出进行比较能够更加清晰地了解这些文件。

 

 

SCSI硬盘即采用SCSI接口的硬盘。它由于性能好、稳定性高,因此在服务器上得到广泛应用。同时其价格也不菲,正因它的价格昂贵,所以在普通PC上很少见到它的踪迹。

 

说到SCSI硬盘必须提到SCSI接口,SCSI是Small Computer System Interface(小型计算机系统接口)的缩写,使用50针接口,外观和普通硬盘接口有些相似。SCSI硬盘和普通IDE硬盘相比有很多优点:接口速度快,并且由于主要用于服务器,因此硬盘本身的性能也比较高,硬盘转速快,缓存容量大,CPU占用率低,扩展性远优于IDE硬盘,并且支持热插拔。

 

现在生产SCSI硬盘的厂商主要为:Seagate(希捷)、Quantum(昆腾)、IBM及WD(西部数据)。SCSI硬盘的价格较贵,同样容量的SCSI硬盘价格会比IDE硬盘贵80%以上,所以SCSI硬盘主要应用于中、高端服务器和高档工作站。

 

为了使硬盘能够适应大数据量、超长工作时间的工作环境,服务器一般采用高速、稳定、安全的SCSI硬盘。

 

现在的硬盘从接口方面分,可分为IDE硬盘与SCSI硬盘(目前还有一些支持PCMCIA接口、IEEE 1394接口、SATA接口、USB接口和FC-AL(FibreChannel-Arbitrated Loop)光纤通道接口的产品,但相对来说非常少);IDE即我们日常所用的硬盘,它由于价格便宜而性能也不差,因此在PC上得到了广泛的应用。不过现在SATA逐渐取代IDE硬盘的地位,成为PC市场的主流。

 

目前个人电脑上使用的硬盘绝大多数均为此类型硬盘。另一类硬盘就是SCSI硬盘了(SCSI即Small Computer System Interface小型计算机系统接口),由于其性能好,因此在服务器上普遍均采用此类硬盘产品,但同时它的价格也不菲,所以在普通PC上不常看到 SCSI的踪影。

 

同普通PC机的硬盘相比,服务器上使用的硬盘具有如下四个特点。

  1、速度快

  服务器使用的硬盘转速快,可以达到每分钟7200或10000转,甚至更高;它还配置了较大(一般为2MB或4MB)的回写式缓存;平均访问时间比较短;外部传输率和内部传输率更高,采用Ultra Wide SCSI、Ultra2 Wide SCSI、Ultra160 SCSI、Ultra320 SCSI等标准的SCSI硬盘,每秒的数据传输率分别可以达到40MB、80MB、160MB、320MB。

  2、可靠性高

  因为服务器硬盘几乎是24小时不停地运转,承受着巨大的工作量。可以说,硬盘如果出了问题,后果不堪设想。所以,现在的硬盘都采用了 S.M.A.R.T技术(自监测、分析和报告技术),同时硬盘厂商都采用了各自独有的先进技术来保证数据的安全。为了避免意外的损失,服务器硬盘一般都能承受300G到1000G的冲击力。

  3、多使用SCSI接口

  多数服务器采用了数据吞吐量大、CPU占有率极低的SCSI硬盘。SCSI硬盘必须通过SCSI接口才能使用,有的服务器主板集成了SCSI接口,有的安有专用的SCSI接口卡,一块SCSI接口卡可以接7个SCSI设备,这是IDE接口所不能比拟的。

  4、可支持热插拔

  热插拔(Hot Swap)是一些服务器支持的硬盘安装方式,可以在服务器不停机的情况下,拔出或插入一块硬盘,操作系统自动识别硬盘的改动。这种技术对于24小时不间断运行的服务器来说,是非常必要的。

 

我们衡量一款服务器硬盘的性能时,主要应该参看以下指标:

  主轴转速

  主轴转速是一个在硬盘的所有指标中除了容量之外,最应该引人注目的性能参数,也是决定硬盘内部传输速度和持续传输速度的第一决定因素。如今硬盘的转速多为5400rpm、7200rpm、10000rpm和15000rpm。从目前的情况来看,10000rpm的SCSI硬盘具有性价比高的优势,是目前硬盘的主流,而7200rpm及其以下级别的硬盘在逐步淡出硬盘市场。

  内部传输率

  内部传输率的高低才是评价一个硬盘整体性能的决定性因素。硬盘数据传输率分为内外部传输率和外部传输率。外部传输率也为突发数据传输率(Burstdata Transfer Rate)或接口传输率,指从硬盘的缓存中向外输出数据的速度。

 

目前采用Ultra 160 SCSI技术的外部传输率已经达到了160MB/s;内部传输率也称最大或最小持续传输率(Sustained Transfer Rate),是指硬盘在盘片上读写数据的速度,现在的主流硬盘大多在30MB/s到60MB/s之间。由于硬盘的内部传输率要小于外部传输率,所以只有内部传输率才可以作为衡量硬盘性能的真正标准

 

 

原创粉丝点击