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

Linux下设置端口权限的系统调用有两个:ioperm和iopl

Linux
下设置端口权限的系统调用有两个:
ioperm

iopl

 
一、
ioperm

iopl
介绍。
1.ioperm
功能描述:
为调用进程设置
I/O
端口访问权能。
ioperm
的使用需要具有超级用户的权限,只有低端的
[0-0x3ff] I/O
端口可被设置,要想指定更多端口的权能,可使用
iopl
函数。这一调用只可用于
i386
平台。

用法:
#include <unistd.h> /* for libc5 */
#include <sys/io.h> /* for glibc */
int ioperm(unsigned long from, unsigned long num, int turn_on);
      
参数:
from
:起始端口地址。
num
:需要修改权能的端口数。
turn_on
:端口的新权能位。
1
为开启,
0
为关闭。
返回说明:

成功执行时,返回
0
。失败返回
-1

errno
被设为以下的某个值

EINVAL
:参数无效
EIO
:这一调用不被支持
EPERM
:调用进程权能不足。

2. iopl
功能描述:该调用用于修改当前进程的操作端口的权限。可以用于所有
65536
个端口的权限。因此,
ioperm
相当于该调用的子集。和
ioperm
一样,这一调用仅适用于
i386
平台。

用法:
#include <sys/io.h>
  
int iopl(int level);
参数:
level


端口的权限级别
。为
3
时可以读写端口。默认权能级别为
0
,用户空间不可读写。
返回说明:成功执行时,返回
0
。失败返回
-1

errno
被设为以下的某个值
EINVAL

level
值大于
3
ENOSYS
:未实现该调用
EPERM
:调用进程权能不足。

二、程序示例
1. ioperm.c
操作低于
0x3FF
的端口
该程序首先设置
0x3FF
端口的读写权限,然后读出原先的值,然后将原值的
LSB
翻转并写回端口,并在此读取端口值。
/*Godbach. Dec 18, 2008
Description:This function is used to test ioperm()*/
#include <stdio.h>
#include <unistd.h>
#include <sys/io.h>

#define PORT_ADDR 0x3FF

int main(void)
{
     
int ret;
     
char port_val;

     
/*set r/w permission of port_addr on, only one port*/
     
ret = ioperm(PORT_ADDR, 1, 1);
     
if(ret < 0){


相关文档:

linux pppoe

手头有个ep9315的板,今天突然想起跑一下adsl上网。晚上回来就开始搞。
从10点到现在,终于能够跑起来。
给大家借鉴一下。
1.编译内核,把ppp的那些选项选上。 (我用2.6.8.1的kernel,cirrus 的patch)
2.libpcap-0.9.1 这个包是pppd需要的。
./configure CC=arm-linux-gcc CFLAGS=-msoft-float --target=arm-linu ......

Linux 无线网络技术: WLAN

当今,不考虑 Linux 和无线网络技术的话,就无法谈到计算机和网络。在这篇文章中,Sreekrishnan Venkateswaran 用
Linux 观点阐释了通过 WLAN、Bluetooth、GPRS、GSM 以及 IrDA
实现无线联网。他使用各种不同的无线设备和相应的内核层,以及用户空间工具来示范它们在 Linux 下如何工作。
无线技术,例如
WLAN (Wireles ......

linux find 命令实例

·find  path  -option  [  -print ]  [ -exec  -ok  command ]  {} \;
#-print 将查找到的文件输出到标准输出
#-exec  command  {} \;     -----将查到的文件执行command操作,{} 和 \;之间有空格
#-ok 和-exec相同,只不过在操作前要询 ......

在linux下使用gtk的gdk

aishen944-163.com
转贴请注明出处,谢谢!!
其实透明贴图的原理就是进行xor运算,
基本公式:A  xor A = 0    A xor 0 = A   A xor A xor B  = B
假如现在有两张图片,一张是我们要对其进行贴图的图片A, 另外一张是要被贴图的图片B
1, 复制图片B的一份拷贝为C
2, 将C中指定 ......

oracle RAC 9.2.0.4 for linux x86升级到9.2.0.8

oracle RAC 9.2.0.4升级到9.2.0.8
   操作系统平台:Red Hat Enterprise Linux AS release 3
   准备工作:
            1. Check Tablespace Sizes and Set Parameter Values
            
   &nb ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号