标题：proc
Linux文件系统
基本介绍proc文件系统是一个伪文件系统，它只存在内存当中，而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息，并可以改变内核的某些参数。由于系统的信息，如进程，是动态改变的，所以用户或应用程序读取proc文件时，proc文件系统是动态从系统内核读出所需信息并提交的。目录结构目录名称     目录内容  
apm 　　　 高级电源管理信息  
cmdline     内核命令行  
Cpuinfo　　　　关于Cpu信息  
Devices　　 可以用到的设备（块设备/字符设备）  
Dma　　　　Used DMS channels  
Filesystems    支持的文件系统  
Interrupts     中断的使用  
Ioports　　　 I/O端口的使用  
Kcore　　　　内核核心印象  
Kmsg　　　　 内核消息  
Ksyms　　　　内核符号表  
Loadavg　　　　 负载均衡  
Locks　　　　　内核锁  
Meminfo　　　　 内存信息  
Misc　　　　Miscellaneous  
Modules　　　　加载模块列表  
Mounts　　　 加载的文件系统  
Partitions     系统识别的分区表  
Rtc　　　　Real time clock  
Slabinfo Slab pool info  
Stat　　　　全面统计状态表s  
Swaps　　　 对换空间的利用情况  
Version　　　　 内核版本  
Uptime　　　 系统正常运行时间  
并不是所有这些目录在你的系统中都有，这取决于你的内核配置和装载的模块。另外，在/proc下还有三个很重要的目录：net，scsi和sys。Sys目录是可写的，可以通过它来访问或修改内核的参数（见下一部分），而net和scsi则依赖于内核配置。例如，如果系统不支持scsi，则scsi目录不存在。进程目录除了以上介绍的这些，还有的是一些以数字命名的目录，它们是进程目录。系统中当前运行的每一个进程都有对应的一个目录在/proc下，以进程的PID号为目录名，它们是读取进程信息的接口。而self目录则是读取进程本身的信息接口，是一个link。Proc文件系统的名字就是由之而起。进程目录的结构如下：  
目录名称 目录内容  
Cmdline　　　　命令行参数  
Environ　　　　环境变量值  
Fd　　一个包含所有文件描述符的目录  
Mem　　　 进程的内存被利用情况  
Stat　　　　进程状态  
Status　　 Process status in human readable form  
Cwd　　　当前工作目录的链接  
Exe　　　Link to the executable of this process  
Maps　　　　内存印象  
Statm　　　 进程内存状态信息  
Root　　　 链接此进程的root目录  
用户如果要查看系统信息，可以用cat命令。例如：  
>; cat /proc/interrupts  
CPU0　　　  
0:　 8728810　　　　 XT-PIC　timer  
1:　　　 895　　　　 XT-PIC　keyboard  
2:　　　　 0　　　　 XT-PIC　cascade  
3:　　 531695　　　　 XT-PIC　aha152x  
4:　 2014133　　　　 XT-PIC　serial  
5:　　 44401　　　　 XT-PIC　pcnet_cs  
8:　　　　 2　　　　 XT-PIC　rtc  
11:　　　　 8　　　　 XT-PIC　i82365  
12:　　 182918　　　　 XT-PIC　Mouse  
13:　　　　 1　　　　 XT-PIC　fpu PS/2  
14:　 1232265　　　　 XT-PIC　ide0  
15:　　　　 7　　　　 XT-PIC　ide1  
NMI:　　　　　0  
2、 修改内核参数  
在/proc文件系统中有一个有趣的目录：/proc/sys。它不仅提供了内核信息，而且可以通过它修改内核参数，来优化你的系统。但是你必须很小心，因为可能会造成系统崩溃。最好是先找一台无关紧要的机子，调试成功后再应用到你的系统上。  
要改变内核的参数，只要用vi编辑或echo参数重定向到文件中即可。下面有一个例子：  
# cat /proc/sys/fs/file-max  
4096  
# echo 8192 >; /proc/sys/fs/file-max  
# cat /proc/sys/fs/file-max  
8192  
如果你优化了参数，则可以把它们写成脚本文件，使它在系统启动时自动完成修改。  
××××××××××××××××××××××××××××××××× 
/proc 文件系统是一个假的文件系统。它不存在在磁盘某个磁盘上。而是由核心在内存中产生。用于提供关于系统的信息(originally about processes, hence the name)。下面说明一些最重要的文件和目录。 /proc 文件系统在proc man页中有更详细的说明。  
/proc/1   
关于进程1的信息目录。每个进程在/proc 下有一个名为其进程号的目录。  
/proc/cpuinfo   
处理器信息，如类型、制造商、型号和性能。  
/proc/devices   
当前运行的核心配置的设备驱动的列表。  
/proc/dma   
显示当前使用的DMA通道。  
/proc/filesystems   
核心配置的文件系统。  
/proc/interrupts   
显示使用的中断，and how many of each there have been.  
/proc/ioports   
当前使用的I/O端口。  
/proc/kcore   
系统物理内存映象。与物理内存大小完全一样，但不实际占用这么多内存；it is generated on the fly as programs access it. (记住：除非你把它拷贝到什么地方，/proc 下没有任何东西占用任何磁盘空间。)  
/proc/kmsg   
核心输出的消息。也被送到syslog 。  
/proc/ksyms   
核心符号表。  
/proc/loadavg   
系统"平均负载"；3个没有意义的指示器指出系统当前的工作量。  
/proc/meminfo   
存储器使用信息，包括物理内存和swap。  
/proc/modules   
当前加载了哪些核心模块。  
/proc/net   
网络协议状态信息。  
/proc/self   
到查看/proc 的程序的进程目录的符号连接。当2个进程查看/proc 时，是不同的连接。这主要便于程序得到它自己的进程目录。  
/proc/stat   
系统的不同状态，such as the number of page faults since the system was booted.  
/proc/uptime   
系统启动的时间长度。  
/proc/version   
核心版本。  
注意所有上述文件给出易读的文本文件，有时可能是不易读的格式。有许多命令做了些格式化以更容易读。例如，free 程序读/proc/meminfo  并将给出的字节数转换为千字节(并增加了一些信息)。
赛普拉斯半导体
.赛普拉斯半导体公司推出其下一代可编程片上射频系统PRoC LP。该产品把WirelessUSB LP 2.4GHz收发器与enCoRe II 8位闪存微控制器集成在一颗单芯片上。PRoC LP简化了编码和电路板布局，旨在缩减设计时间，并降低诸如鼠标、演示工具和RF遥控器等创新、小型无线人机接口设备的板级空间要求。
SQL语句
PROCEDURE（存储过程）的简写：实例：　　alter proc
alter pro [dbo].[sp_test]
@nick varchar=null,
@userid varchar=null
as
declare @count int
if @nick is not null
begin
print '搜索条件满足执行搜索昵称过程......   搜索变量：' +@nick
select * from db_carduser where  f_nickname like '%'+@nick+'%'
select @count= (select count(*) from db_carduser where  f_nickname like '%'+@nick+'%')
end
else 
begin 
print 'userid有值执行查询......     userid:'+@userid
select * from db_carduser where f_userid=@userid
select @count=(select count(*) from db_carduser where f_userid=@userid)
end
create table #tab_temp (tab1 varchar,tab2 varchar)
insert into #tab_temp(tab1) values (@count)
select * from #tab_temp
drop table #tab_temp
PROC过程定义伪操
其格式为：
过程名　PROC　过程属性
…
过程名　ENDP
CALL和RET指令都有NEAR和FAR的属性，段内调用使用NEAR属性，段间调用使用FAR属性。出于方便，80x86的汇编程序用PROC伪操作的类型属性来确定确定CALL和RET指令的属性。