linux应用编程
smileQL
这个作者很懒,什么都没留下…
展开
-
linux之进程详解与操作编程
---程序终止(1)正常终止:return、exit、_exit(2)非正常终止:自己或他人发信号终止进程---atexit注册进程终止处理函数(1)实验演示(2)atexit注册多个进程终止处理函数,先注册的后执行(先进后出,和栈一样) atexit(func1);(2)return、exit和_exit的区别:return和e原创 2017-04-13 20:58:21 · 264 阅读 · 0 评论 -
linux之守护进程与操作编程
---常见守护进程(1)syslogd,系统日志守护进程,提供syslog功能。(2)cron,cron进程用来实现操作系统的时间管理,linux中实现定时执行程序的功能就要用到cron。---编写简单守护进程---任何一个进程都可以将自己实现成守护进程---create_daemon函数要素(1)子进程等待父进程退出(2)子进程使用setsid原创 2017-04-13 21:06:18 · 265 阅读 · 0 评论 -
linux信号处理之signal、sigaction、alarm、pause函数
信号相关的东西都在 /usr/include/singnal.h里各种信号的定义的都在 /usr/include/i386-linux-gnu/bits/signum.h 3.5.2.常见信号介绍(1)SIGINT 2 Ctrl+C时OS送给前台进程组中每个进程(2)SIGABRT 6 调用abort函数,进程异常终止(3)SIGPO原创 2017-04-13 21:09:54 · 1567 阅读 · 0 评论 -
并发式IO的解决方案---非阻塞式、多路复用和异步通知(异步IO)
---非阻塞式IO阻塞式读取键盘和鼠标:// 读取鼠标 int fd = -1; char buf[200]; fd = open("/dev/input/mouse1", O_RDONLY); if (fd 0) { perror("open:"); return -1; } memset(buf, 0, sizeof(buf)); printf("before原创 2017-04-13 21:12:39 · 404 阅读 · 0 评论 -
让进程不被多次重复运行(linux编程小技巧)
---让程序不能被多次运行---问题(1)因为守护进程是长时间运行而不退出,因此./a.out执行一次就有一个进程,执行多次就有多个进程。(2)这样并不是我们想要的。我们守护进程一般都是服务器,服务器程序只要运行一个就够了,多次同时运行并没有意义甚至会带来错误。(3)因此我们希望我们的程序具有一个单例运行的功能。意思就是说当我们./a.out去运行程序时,如果当前还没有这个程序的进原创 2017-04-13 21:08:00 · 8642 阅读 · 5 评论