|
由于这些文件不是普通的文件,所以我们不能用ANSI C(标准C)的fopen、fclose等来操作文件,而应该使用系统文件I/O处理函数(open、read、write、lseek和close)来 处理这些设备文件。ioctl()或许是Linux下最庞杂的函数,它可以控制各种文件的属性,在Linux声音设备编程中,最重要的就是使用此函数正确 设置必要的参数。 (09月29日) [查看全文] Linux下类库主要有静态库和动态库两种库。其中,静态库在程序连接的时候会自动的连接到程序里,所以一但编译完成,静态库也就不需要了。静态库通常以.a结尾。例如:libutil.a libuuid.a libz.a等。而动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。通常以.so结尾。如:libz.so。因此,静态库相对于共享库来说有更高的效率但是也要消耗更多的空间。值得注意的是,如果既有静态库又有动态库,在编译时默认的使用动态库。本文主要讨论静态库的创建和使用。 (09月28日) [查看全文] Linux系统日常检查的shell #!/bin/bash echo "$HOSTNAME" >datereport echo "----------------------------------------------------">>datereport #检查超过75%分区 echo "over 75%" >>datereport echo "---------------------------------------------------">>datereport df -h |grep '[7-9][5-9]%'>>datereport echo -e "-----------------------------------------------\n">>datereport #检查服务启动情况 echo "service status">>datereport (09月27日) [查看全文] Linux下数据流重导向是指根据命令的输出不打印在屏幕上而是直接输入到其他设备比如文件或打印机或垃圾箱 命令 command [option] 参数 > | >> | 1> | 2> | 2>> 文件或打印装置 >表示重导向输出到那里 比如 ls /tmp/man.config > /tmp/out.txt ls结果本来应该在屏幕上输出 但是使用了> 信息知道输出到out.txt文件里了 如果out.txt文件不存在则会自动建立 (09月26日) [查看全文] ##文件说明,编译2.6.x的Linux驱动的makefile文件 # 作者:wyj # 创建时间:2008-09-23 ##使用说明: # 变量DRI_NAME MOD_NAME NOD_NAME 分别设置伪驱动程序的名称,生成模块的名称和设备节点的名称 # 使用make install进行安装驱动 需要root权限 # 使用make uninstall进行卸载驱动 需要root权限 # 使用make clean清除多余的文件,包括生成的模块代码 (09月25日) [查看全文] 经常遇到在Linux下的tomcat配置中出现JAVA生成的图片无法显示的问题,下面给出一种解决办法。 %TOMCAT_HOME%/bin/catalina.sh 找到这样一段: 1echo "Using CATALINA_BASE: $CATALINA_BASE" (09月24日) [查看全文] accept(2)是可以接受一个sockaddr指针来返回一个远端主机的地址,但是,实际情况是,如果这个连接是这个程序第一次发生的时候,是没有获得任何数据的,从第二次开始就没有这个问题,也就是紧跟这accept函数使用一个getpeername(2),即可以得到连接的主机的IP地址,从这以后开始的连接都没有这个问题。可是,如果accept中如果用accept(sock_fd,NULL,NULL)这样的形式,来使accept(2)不返回远端主机地址的情况下,第一次getperrname函数也是什么都得不到的。 (09月24日) [查看全文] Linux vi中移动光标命令 移动光标 (09月24日) [查看全文] 最近需要使用红黑树,在网上查找资料的时候无意中发现linux内核中有个红黑树的实现,并且其代码非常的独立,现把它摘录出来。我摘录自2.6.24的内核,分为两个文件rbtree.h和rbtree.c,rbtree.h位于内核源码的include/linux目录中,rbtree.c位于内核源码的lib目录中。 rbtree.h中删除#include 和#include 两行,添加#include (09月23日) [查看全文] Linux 无法执行SHELL命令的 处理方法: export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.1.2:/usr/kde/3.5/sbin:/usr/kde/3.5/bin:/usr/qt/3/bin" (09月23日) [查看全文] 我目前使用的是Ubuntu的8.04,因为最近一直在升级Linux,导致目前我的GCC也变高了,目前是4.2.3。当我编译以前手头上的CROSSTOOL时出现这样的提示: checking for a BSD-compatible install... /usr/bin/install -c (09月22日) [查看全文] 在Linux AS4上安裝VNC 4.0 1. 由www.realvnc.com 下載VNC 4.0 for Linux 2. cd root --> tar -zxvf vnc-4.0-x86_linux.tar.gz 3. cd vnc-4.0-x86_linux 4. ./vncinstall /usr/local/bin /usr/local/man (09月21日) [查看全文] |
内容分类
本周热门内容
赞助商连接
|