http://www.csdn.net/ http://www.arm.com/zh/ https://www.kernel.org/ http://www.linuxpk.com/ http://www.51develop.net/ http://linux.chinaitlab.com/ http://www.embeddedlinux.org.cn http://bbs.pediy.com/
全部博文(579)
发布时间:2015-06-30 18:08:44
发布时间:2015-06-16 17:41:39
多播的程序设计使用setsockopt()函数和getsockopt()函数来实现,组播的选项是ip层的,其选项值和含义参见11.5所示。表11.5 多播相关的选项getsockopt()/setsockopt()的选项含 义ip_mu.........
发布时间:2015-06-16 16:57:16
调用system函数执行一个shell命令,返回-1,错误提示no child processes 但system可以执行成功原因是调用system之前有放置忽略sigchld的语句signal(sigchld, sig_ign);如果sigchld信号行为被设置为sig_ign时,waitpid()函数有可能因为找不到子进程而报echild错误。似乎我们找到了问题的凯发app官方网站的解决方案:在调用syste.........
发布时间:2015-06-12 19:40:47
ioctl函数 本函数影响由fd参数引用的一个打开的文件。 #includeint ioctl( int fd, int request, .../* void *arg */ );返回0:成功 -1:出错 第三个参数总是一个指针,但指针的类型依赖于request参数。.........
发布时间:2015-05-29 16:35:05
前言: 在实际使用中,很多设备都需要用到wifi模块,但是如何使设备智能的连接到热点上。 其中一种方法是:先把设备的wifi模块设置为ap模式,客户端先搜索到这个设备的热点,然后连接它,再把设备真正需要连接的热点发送给设备,从而使设备可以连接到指定的热点上。一,设置为ap模式后,如.........
发布时间:2015-05-29 11:46:39
fget函数的原型如下:char *fgets(char *buf, int n, file *fp)功能:从文件流读取一行,送到缓冲区,使用时注意以下几点:1.当遇到换行符或者缓冲区已满,fgets就会停止,返回读到的数据,值得注意的是不能用fgets读二进制文件,因为fgets会把二进制文件当成文本文件来处理,这势必会产生乱码。2.每次调用,.........
发布时间:2015-05-25 19:42:45
1.先从%*s解释起,printf的%后面的格式是:%[flags] [width] [.precision] [{h | l | ll | i | i32 | i64}]type这些参数的详细用法请参考msdn: http://msdn2.microsoft.com/en-us/library/56e442dc(vs.80).aspx这里我只说重点:其中参数[width]和参数[.precision]如果用*表示,代表这两个值是一个输入参数,因为本例中是%*s.........
发布时间:2015-05-18 16:06:50
系统中的一个模块需要频繁的获取系统时间,使用linux中内置的函数开销过大,因为需要的精度不是很高(毫秒级),索性用signal函数配合setitimer实现了个简易的全局时钟。但是后来发现,sigalrm的中断信号回终止sleep,因为sleep就是用sigalrm信号量实现的,得另想方案。这个替代方案就是posix中内置的定时器:tim.........
发布时间:2015-05-16 18:43:26
信号是与一定的进程相联系的。也就是说,一个进程可以决定在进程中对哪些信号进行什么样的处理。例如,一个进程可以忽略某些信号而只处理其他一些信号;另外,一个进程还可以选择如何处理信号。总之,这些总与特定的进程相联系的。因此,首先要建立其信号和进程的对应关系,这就是信号的安装登记。linux主要有两个.........
发布时间:2015-05-15 20:11:26
传统的unix实现在内核中设有缓冲区高速缓存或页面高速缓存,大多数磁盘i/o都通过缓冲进行。当将数据写入文件时,内核通常先将该数据复制到其中一个缓冲区中,如果该缓冲区尚未写满,则并不将其排入输出队列,而是等待其写满或者当内核需要重用该缓冲区以便存放其他磁盘块数据时,再将该缓冲排入输出队列,然后待其到达队.........
发布时间:2015-05-15 18:26:51
在服务端程序设计中,与时间有关的常见任务有:获取当前时间,计算时间间隔;定时操作,比如在预定的时间执行一项任务,或者在一段延时之后执行一项任务。linux 时间函数linux 的计时函数,用于获得当前时间:time(2) / time_t (秒)ftime(3) / struct timeb (毫秒)gett.........
发布时间:2015-05-04 17:34:16
进行多线程编程,最应该注意的就是那些共享的数据,因为无法知道哪个线程会在哪个时候对它进行操作,也无法得知哪个线程会先运行,哪个线程会后运行。所以,要对这些资源进行合理的分配和正确的使用。在linux下,提供了互斥锁、条件变量和信号量来对共享资源进行保护。一、互斥锁互斥锁,是一种信号量,常用来防止两.........
发布时间:2015-02-03 20:48:40
linux下进程重命名的方法:使用系统函数prctl(),声明如下:#include int prctl(int option, unsigned long arg2, unsigned long arg3, unsigned long arg4, unsigned long arg5);具体用法请参考http://www.kernel.org/doc/man-pages/online/pages/man2/prctl.2.html 进程重命名代.........
发布时间:2015-01-26 16:13:58
linux提供了一套api来动态装载库。下面列出了这些api:- dlopen,打开一个库,并为使用该库做些准备。- dlsym,在打开的库中查找符号的值。- dlclose,关闭库。- dlerror,返回一个描述最后一次调用dlopen、dlsym,或dlclose的错误信息的字符串。c语言用户需要包含头文件dlfcn.h才能使用上述api。glibc还增加了两个p.........
发布时间:2015-01-26 16:09:39
在linux中,可以利用stat()函数来获取一个文件的状态[cpp] view plaincopy#include #include int stat(const char *file_name, struct stat *.........
发布时间:2015-01-26 16:02:12
linux提供了daemon函数用于创建守护进程,实现原理如下:#include int daemon(int nochdir, int noclose);1. daemon()函数主要用于希望脱离控制台,以守护进程形式在后台运行的程序。2. 当nochdir为0时,daemon将更改进城的根目录为root(“/”)。3. 当noclose为0是,daemon将.........
发布时间:2015-01-26 14:53:31
access():判断是否具有存取文件的权限相关函数 stat,open,chmod,chown,setuid,setgid表头文件 #include定义函数 int access(const char * pathname, int mode);函数说明 access()会检查是否可.........
发布时间:2014-11-18 12:12:23
name syscall - 间接系统调用synopsis #define _gnu_source &n.........
发布时间:2014-11-15 17:14:24
popen() 函数 用 创建管道 的 方式启动一个 进程, 并调用 shell. 因为 管道是被定义成单向的, 所以 type 参数 只能定义成 只读或者 只写, 不能是 两者同时, 结果流也相应的 是只读 或者 只写.command 参数 是 一个 字符串指针, 指向的是一个 以 null 结束符 结尾的字符串, 这个字符串包含 一个 shell 命令. 这个.........
发布时间:2014-11-15 16:47:00
点击(此处)折叠或打开表头文件 #i nclude 定义函数 int system(const char * string); 函数说明 system()会调用fork()产生子进程,由子进程来调用/bin/sh-c string来执行参数string字符串所代表的命令,此命>.........
发布时间:2014-10-14 10:19:22
信号 ( signal ) 机制是 unix 系统中最为古老的进程间通信机制,很多条件可以产生一个信号.信号的产生: 1,当用户按下某些按键时,产生信号. 2,硬件异常产生信号:除数为 0 ,无效的存储访问等等.这些情况通常由硬件检测到.........
发布时间:2014-10-14 10:16:13
signal(sigpipe, sig_ign);tcp是全双工的信道, 可以看作两条单工信道, tcp连接两端的两个端点各负责一条. 当对端调用close时, 虽然本意是关闭整个两条信道, 但本端只是收到fin包. 按照tcp协议的语义, 表示对端只是关闭了其所负责的那一条单工信道, 仍然可以继续接收数据. 也就是说, 因为tcp协议的限制,&nb.........
发布时间:2014-10-14 10:11:11
signal(sigchld, sig_ign);因为并发服务器常常fork很多子进程,子进程终结之后需要服务器进程去wait清理资源。如果将此信号的处理方式设为忽略,可让内核把僵尸子进程转交给init进程去处理,省去了大量僵尸进程占用系统资源。(linux only)对于某些进程,特别是服务器进程往往在请求到来时生成子进程处理请求.........
发布时间:2014-09-27 14:21:34
在编译配置一下库时,需要设置一些环境变量。解决方法如下: 假设对 pck_config_default 环境变量进行赋值: export pck_config_default=/usr/lib......
发布时间:2014-09-05 16:47:02
6.3. poll 和 select上一页 第 6 章 高级字符驱动操作 下一页6.3. poll 和 select使用非阻塞 i/o 的应用程序常常使用 poll, select, 和 epoll 系统调用. poll, sel.........
dafanzi2016-12-05 17:20
大佬,在你这篇讲解内存池的博文(http://blog.chinaunix.net/uid-28458801-id-4254501.html)中,list.h源文件没有提供啊。你能提供这个博文的完整代码我学习学习吗?能的话发给我邮箱可以吗?brottfan@163.com谢谢啦