![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LSD学习笔记
xfliulinux
这个作者很懒,什么都没留下…
展开
-
setjmp 与 longjmp
这两个函数是非局部返回,但是前提是都在一个栈中,利用setjmp设置一个跳转点,当程序运行到longjmp时就会返回setjmp 此时栈中的环境和刚设置跳转点时一样#include #include int k;jmp_buf env;int fun1(void){ ++k; longjmp(env,1);}int fun2(void){ --k; longjmp(en原创 2016-07-31 00:48:47 · 211 阅读 · 0 评论 -
编写一个孤儿进程,这个进程可以同时创建100僵尸进程
#include #include #include #include #include int main(void){ pid_t pid2=1; pid_t pid=fork(); int k=0; char *s=NULL; if(pid< 0){ perror("fork error"); exit(1); }else if(pid>0){//parent原创 2016-07-31 20:48:12 · 1052 阅读 · 0 评论 -
自己的myshell
#include #include #include #include int main(void){ while(1){ char buff[20]="\n"; putchar('>'); fflush(stdout); fgets(buff,20,stdin);//end\n\0\0 if(strcmp(buff,"end\n")==0){ return原创 2016-07-31 21:38:45 · 200 阅读 · 0 评论 -
进程扇
#include #include #include int main(int argc, char *argv[]){ int counter = 0; if(argc < 2) counter = 2; else counter = atoi(argv[1]); int i = 1; pid_t pid; for(; i < counter; i++){ p原创 2016-07-31 21:48:00 · 324 阅读 · 0 评论 -
守护进程
待续原创 2016-08-04 14:35:56 · 205 阅读 · 0 评论 -
信号基本概念
信号原创 2016-08-04 16:44:25 · 5270 阅读 · 0 评论 -
signal函数
signal注册函数原创 2016-08-04 17:36:42 · 437 阅读 · 0 评论 -
避免僵尸进程的三种方法
一、让僵尸进程的父进程来回收,父进程每隔一段时间来查询子进程是否结束并回收,调用wait()或者waitpid(),通知内核释放僵尸进程/*让僵尸进程的父进程来回收,父进程每隔一段时间来查询子进程是否结束并回收,调用wait()或者waitpid(),通知内核释放僵尸进程*/#include#include#include#include#includeint main(v原创 2016-07-31 12:59:10 · 13296 阅读 · 0 评论 -
信号发送函数kill raise alarm setitimer abort
kill raise alarm /*注册SIGALRM信号处理函数,到时间处理*/#include #include #include void signal_alarm(int i)//运行完进程结束{ printf("time out\n");}int main(void){ if(signal(SIGALRM,signal_alarm原创 2016-08-04 21:35:59 · 327 阅读 · 0 评论 -
线程的创建,退出清理
linux线程的创建退出清理原创 2016-08-02 02:30:02 · 402 阅读 · 0 评论 -
进程l链
#include #include #include int main(int argc, char *argv[]){ int counter = 0; if(argc < 2) counter = 2; else counter = atoi(argv[1]); int i = 1; pid_t pid; for(; i < counter; i++){ p原创 2016-07-31 21:53:16 · 395 阅读 · 0 评论 -
网络基本概念之TCP, UDP, 单播(Unicast), 多播(组播)(Multicast)
这篇文章相当低级,但相当重要!我们周围一切几乎都依赖于把事情抽象成低等级,并在某一点把它具体化,在一些设计概念中,接口层十分清晰并且目标很集中,应用程序不用考虑操作系统如何工作,操作系统也不用考虑硬件如何工作,OSI模型的第4层不需要考虑第三层如何工作。所以我们只需要集中精力在某一层,就当下面的层正常工作,但这样能行吗?如果你写一个应用,你最好知道OS是怎么样工作的,并且要考虑转载 2016-11-21 21:13:49 · 588 阅读 · 0 评论 -
: linux 查进程、杀进程、起进程
关键字: linux查进程、杀进程、起进程1.查进程 ps命令查找与进程相关的PID号: ps a 显示现行终端机下的所有程序,包括其他用户的程序。 ps -A 显示所有程序。 ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。 ps -e 此参数的效果和指定"A"参数相同。 ps e 列出程序转载 2016-11-28 14:27:19 · 318 阅读 · 0 评论 -
lsd面试题
1.Linux下用ifconfig命令设置IP、掩码、网关?设置IP和掩码ifconfig eth0 192.168.5.40 netmask 255.255.255.0设置网关route add default gw 192.168.5.12.新创建一个进程,这个进程的初始状态为?就绪状态3.tty1(代表某终端)设备是什么设备文件?字符设备文件原创 2016-11-28 15:20:46 · 496 阅读 · 0 评论 -
进程其他概念
原创 2016-07-31 19:48:46 · 141 阅读 · 0 评论 -
获取可执行文件的绝对路径
Linux:获取当前进程的执行文件的绝对路径 - Linuxest - 博客频道 - CSDN.NEThttp://blog.csdn.net/ddk3001/article/details/49175929转载 2016-07-31 16:28:04 · 831 阅读 · 0 评论 -
进程资源限制
#include#includeint main(void){ int resource[11]={ RLIMIT_AS,//进程可用存储区大小 RLIMIT_CORE,//core文件最大字节数 RLIMIT_CPU,//CPU时间的最大值 RLIMIT_DATA,//数据段最大长度 RLIMIT_FSIZE,//可创建文件的最大长度 RLIMIT_LOCKS,原创 2016-07-31 02:28:46 · 633 阅读 · 0 评论 -
环境变量操作函数笔记
#include #include #include extern char **environ;int main(void){ if(putenv("caohanghang=101")==-1){ perror("putenv"); }else{ perror("putenv"); }/////////////////////////////////////原创 2016-07-30 22:26:14 · 218 阅读 · 0 评论 -
进程
#include#include#includeint main(void){ printf("getpid %d\n",getpid());//获得当前进程ID printf("getuid %d\n",getuid());//获得当前进程实际用户ID printf("geteuid %d\n",geteuid());//获得当前进程有效用户ID printf("getg原创 2016-07-31 04:09:39 · 191 阅读 · 0 评论 -
创建进程
#include#include#includeint main(void){ pid_t pid=fork(); if(pid<0){ perror("fork creat "); }else if(pid>0){//父进程 printf("this is parent process\n"); }else{//pid=0//子进程 printf("this is原创 2016-07-31 04:22:26 · 267 阅读 · 0 评论 -
孤儿进程与僵尸进程
孤儿进程和僵尸进程 - 青青的专栏--C/C++ OOA/D Design Pattern - 博客频道 - CSDN.NEThttp://blog.csdn.net/metasearch/article/details/2498853转载 2016-07-31 11:44:15 · 305 阅读 · 0 评论 -
exec系列函数(待续)
一、execl 函数二、execlv 函数三、execle 函数四、execve 函数五、execlp 函数六、execvp 函数原创 2016-07-31 13:48:29 · 290 阅读 · 0 评论 -
读写锁
读写锁原创 2016-08-02 20:59:48 · 233 阅读 · 0 评论 -
互斥锁
互斥锁原创 2016-08-02 20:27:03 · 246 阅读 · 0 评论 -
线程同步——条件变量
原创 2016-08-02 21:21:43 · 214 阅读 · 0 评论 -
线程信号量
原创 2016-08-02 21:23:57 · 185 阅读 · 0 评论 -
死锁
原创 2016-08-02 21:24:46 · 160 阅读 · 0 评论 -
线程和信号
原创 2016-08-02 21:25:24 · 154 阅读 · 0 评论 -
进程临界问题
http://blog.csdn.net/speedme/article/details/175958211. 背景转载 2016-08-04 03:05:24 · 884 阅读 · 0 评论 -
osi七层模型简单理解
OSI七层模式简单通俗理解OSI七层模式简单通俗理解 这个模型学了好多次,总是记不住。今天又看了一遍,发现用历史推演的角度去看问题会更有逻辑,更好记。本文不一定严谨,可能有错漏,主要是抛砖引玉,帮助记性不好的人。总体来说,OSI模型是从底层往上层发展出来的。 这个模型推出的最开始,是是因为美国人有两台机器之间进行通信的需求。 需求1: 科学家要解决的第一个问题是原创 2016-11-28 15:22:06 · 1031 阅读 · 1 评论