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

Linux 下共享内存建立时需要注意的问题

在linux下使用共享内存时,照着书上或者网上的方法,使用shmat函数时,老是会碰到一个问题
提示:
shmat error
permission denied
每次需要sudo一下才能够正常运行,并且如果普通用户使用ipcs查看的话,是看不见已经分配的共享内存的,需要在root用户下才能看见, 最开始以为是shmat需要root用户的权限,后来发现不是这样。
造成这个问题的成因是在使用shget的时候,没有赋于开辟的共享内存对应的读写权限。
shget函数原型如下
int shmget( key_t shmkey , int shmsiz , int flag );
注意最后一个形参 flag,表示当前内存的模式
(mode)以及权限标识。
可以取如下的值
模式可取如下值: 新建:IPC_CREAT
如果标识符以存在,则返回错误值:IPC_EXCL
然后将“模式” 和“权限标识”进行“或”运算,做为第三个参数。
如: IPC_CREAT | IPC_EXCL | 0666

shmid = shmget( shmkey , sizeof(in_data) , IPC_CREAT |
0666 ) ;
这样,一切ok. 不需要root权限,用ipcs也能看到当前用户建立的共享内存信息


相关文档:

linux驱动之 led驱动

练手, 第一个字符驱动.
用模块加载方法
华清远见<嵌入式linux设备驱动开发详解>的代码拿来改的.  
编译过程发现很多错误.
最后发现 这本书带的驱动代码都是基于linux2.4的...目前我用的linux2.6, 代码部分需要做修改.
我的板子是 友善之臂的 2410.  vmware+ubuntu  nfs交叉编译
首先
lin ......

linux下tomcat自动启动简便方式


修改配置文件,使tomcat自动启动
(假设tomcat的安装路径位于 /opt/apache-tomcat5.5.26目录下)
在root根目录下,输入 vi /etc/profile
在profile文件中加入下面几句话
   cd /opt/apache-tomcat5.5.26/bin
   chmod 777 *  // 把bin目录下的所有文件的权限设置最大,否则将不能运行
  ......

总结邮件服务器配置过程(Red Hat Enterprise Linux 4)

…………………………………………总结邮件服务器配置过程(Red Hat Enterprise Linux 4)
Red Hat Enterprise Linux提供了Sendmail和Posfix两种STMP邮件服务软件.
默认情况已经安装Sendmail.如果要使用Postfix,就必须先 ......

ubuntu linux ppp 拨号 GPRS

一 首先安装ppp, 用sudo apt-get install ppp
二 拨号上网, 一共有3种方式
1.使用命令 pppd call somescript 的方式
- 在 /etc/ppp目录下,建立3个文件:pap-secrets,chap-secrets,gprs-connect-chat
  和一个目录:peers
  在peers目录下建立一个文件gprs
这4个文件的内容如下:
---------------------- ......

linux进程调度浅析


操作系统要实现多进程,进程调度必不可少。
有人说,进程调度是操作系统中最为重要的一个部分。我觉得这种说法说得太绝对了一点,就像很多人动辄就说"某某函数比某某函数效率高XX倍"一样,脱离了
实际环境,这些结论是比较片面的。
而进程调度究竟有多重要呢? 首先,我们需要明确一点:进程调度是对TASK_R ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号