易截截图软件、单文件、免安装、纯绿色、仅160KB

linux中的outb、outw、inb、inw

在linux的驱动程序中,都会使用大量的outb、outw、inb、inw等等宏来访问硬件或寄存器。这些宏的定义都在相应处理器体系下的include\asm目录下的io.h中定义。追究下去,这些宏最终就是一个volatile变量的的赋值:
      #define __arch_putb(v,a)      (*(volatile unsigned char *)(a) = (v))
      #define __raw_writeb(v,a)     __arch_putb(v,a)
      #define outb(v,p)                 __raw_writeb(v,__io(p))
      在(*(volatile unsigned char *)(a) = (v))中,a是一个物理地址(实地址,多数是特殊功能寄存器地址)。(volatile unsigned char *)对a进行类型转换,成为一个指向该地址指针,最后*(volatile unsigned char *)(a)引用该指针对该地址赋值v。这样就可以达到访问底层硬件的目的了。


相关文档:

Linux中如何查看服务及监听端口和修改防火墙端口整理

################## 修改防火墙端口 #################
当Linux打开防火墙后,你会发现,从本机登录23端口是没有问题的,但是如果从另一台pc登录该linux系统后,你会发现提示这样的错误:
不能打开到主机的连接, 在端口 23: 连接失败
查看端口情况:service iptables status
因为linux防火墙默认是关闭23端口的 ......

创建linux的服务程序

创建linux服务,使得test client可以开机启动,步骤如下:
 
1.创建目录/usr/local/test/
2.复制testc到/usr/local/test/
3.编写文件/etc/init.d/testc.sh
testc.sh
--------------------begin(not included)-----------------------
 
#! /bin/sh
#
### BEGIN INIT INFO
# Provides:  &nbs ......

Linux Shell 下的输出重定向


Linux Shell 环境中支持输入输出重定向,用符号<和>来表示。0、1和2分别表示标准输入、标准输出和标准错误信息输出,可以用来指定需要重定向的标准输入或输出,比如 2>a.txt 表示将错误信息输出到文件a.txt中。
同时,还可以在这三个标准输入输出之间实现重定向,比如将错误信息重定向到标准输出,可以用 2> ......

Linux下文件的操作(zt)

 
1.文件的创建和读写
  当我们需要打开一个文件进行读写操作的时候,我们可以使用系统调用函数open.使用完成以后我们调用另外一个close函数进行关闭操作.
    int open(const char *pathname,int flags);
    int open(const char *pathname,int flags,mode_t mode);
    int close(int fd); ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号