![](https://img-blog.csdnimg.cn/20190927151117521.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Lniux开发
Lniux开发
HenryTien
爱编程、爱科技、爱生活、爱自己
展开
-
Linux Signal 信号量的使用
信号量是什么? 信号量是用在不同进程之间或者是不同进程的线程之间用来同步会用到的源语。用于保护代码段,只能被一个进程或者是线程执行,这种工作需要一个二进制的开关。 获得共享资源进程需要执行的步骤 (1)测试控制该资源的信号 量。 (2)如果信号量为正,表示可以使用当前的信号量,信号量值减1,使用完成后,对值加1,便于其他进程使用。 (3)若信号量=0,就进入休息状态,信号量值>0,进程可以原创 2017-02-05 21:54:19 · 1910 阅读 · 0 评论 -
Linux 相关笔记记录1
C++11/C++14 7. Threads with Shared Memory and Mutex - 2017[IPC:Shared Memory]int shmget(key_t key, size_t size, int shmflg);int shmctl(int shmid, int cmd, struct shmid_ds *buf);void *shmat(int shmid, c原创 2017-08-21 15:49:41 · 212 阅读 · 0 评论 -
Linux C 多进程下载文件demo
1、使用多进程,实现多个客户端同时下载文件目录: 头文件#include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <stdio.h> #include <stdlib.h> #include <sys/uio.h> #include <sys/socket.h> #inc原创 2017-02-17 20:48:42 · 1813 阅读 · 0 评论 -
mysql 学习笔记
mysql 学习笔记本查看: show databases;// if exists 判断数据库是否存在,不存在也不产生错误 mysql> drop database if exists drop_database; Query OK, 0 rows affected (0.00 sec)使用数据库mysql> use test Database changed 1.显示版本 mysql>原创 2017-02-14 23:19:58 · 419 阅读 · 0 评论 -
Linux 孤儿、僵尸、服务进程创建
#include"func.h" // 头文件 #include<unistd.h> #include<stdlib.h> #include<fcntl.h> #include<limits.h> #include<sys/types.h> #include<sys/stat.h> #include<stdio.h> #include<string.h> #include<sys/select.h>原创 2017-01-25 19:57:09 · 194 阅读 · 0 评论 -
Linux 编译与调试
动态链接创建和编译gcc -E test.c -o test.i //预处理define NUM 1+2int a=NUM*NUM =1+2*1+2 NUM*NUM gcc -S test.i -o test.s 、、编译 出来为汇编代码as test.s -o test.o 链接: gcc test.o -o gcc test.c -o test ./testgcc *.c -原创 2017-01-20 21:13:29 · 256 阅读 · 0 评论 -
Linux 文件符操作
2.3 读写文件fd = open(); write(); // Linux 读int fd; fd=open(argv[1],O_RDWR); if(-1==fd){ perror("open"); return -1; } int ret; ret = read(); // 返回0 if(ret<=0){ perror("read"); } puts(); //原创 2017-01-23 21:52:57 · 275 阅读 · 0 评论 -
牛客网 Linux
linux nowcoderusermod -| new_name old_name -| 修改名称Orphan Process 孤儿进程 会被init进程接管,不浪费资源在父进程没有调用wait()或者waitpid()情况下退出–僵尸进程,浪费资源fork 计算 fork() i=0 ans= 2 ans=2^i+…+2^i(i>=1) 累加int main(){ fork()||原创 2017-01-21 22:59:18 · 451 阅读 · 0 评论 -
Linux 文件 操作
文件指针操作文件的创建 fp=fopen(argv[1],”wb”) if(fp==NULL){ perror(“fopen”); }fclose(fp);sprintf(* buffer,); 读写文件1.3 目录操作#include<sys/stat.h> #include<stdio.h> int ret=0; int main(int argc, char *argv[1]){原创 2017-01-21 22:46:08 · 195 阅读 · 0 评论 -
my Linux 命令学习笔记
sudo passwd root 更改root账户密码沙茶的话,O(∩_∩)O~请忽略 玩学习最大的快乐不是去完成什么成就,而是玩着玩着很快乐,能够解决一些好玩的问题,这些问题永远不是学习掌握的,而是通过思考获得,多思考多分析,自己的运行模式,存在哪些问题,不断自我的修正,直到离开这个世界。请活在另外一个世界吧, 不要在被这个世界浮躁而影响。2017年1月17日su root su切换 2.原创 2017-01-17 22:39:24 · 348 阅读 · 0 评论 -
Linux 多线程笔记
1.Linux多线程概述 为了进一步减少处理器的空转时 间支持多处理器和减少上下文切换开销,也就出现了线程。每个进程至少都有一个main线程。它 与同进程中的其他线程共享进程空间{堆代码 数据 文件描述符 信号等},只拥有自己的栈空间,大大减少了上下文切换的开销。看看优缺点: 线程开销小,占用CPU小,线程之间切换快,但是不利于资源保护。进程相反,从可移植性来说,进程的移植性要好。1.2.线程原创 2017-02-08 15:10:08 · 245 阅读 · 0 评论 -
Linux 进程通信-信号的使用
信号概念 信号(signal)是Linux进程间通信的一种机制,全称为软中断信号,也被称为软中断。信号本质上是在软件层次上 对硬件中断机制的一种模拟。信号由内核管理产生的方式: 可以由内核自身产生,比如出现 硬件错误、内存读取错误,分母为0的除法等,内核需要通知相应进程。 也可以由其他进程产生并发送给内核,再由内核传递给目标进程。什么信号不能捕捉也不能忽略? SIGKILL(终止进程)原创 2017-02-06 14:07:20 · 229 阅读 · 0 评论 -
O_NONBLOCK vs O_NDELAY
O_NONBLOCK vs O_NDELAY in particular things like a read with O_NDELAY can in some situations return a 0 instead of an error and EAGAIN… Since 0 normally means EOF… you have to be aware of this b原创 2017-08-22 17:01:29 · 413 阅读 · 0 评论