![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux编程
lengshien
这个作者很懒,什么都没留下…
展开
-
判断进程是否正常退出
#include #include #include #include int main(int argc,char* argv[]){ pid_t pid,w_pid; int sta; pid = fork(); if(pid == -1){ perror("fork error"); exit(1); }else if(pid == 0){ printf("原创 2017-08-03 00:13:34 · 1179 阅读 · 0 评论 -
Linux 获取制定目录的文件数(递归)
#include #include #include #include #include /*获取指定文件数目(absolute path)*/int getFileNum(char* root){ DIR *dir = NULL; //打开目录 dir = opendir(root); if(dir == NULL) { perror("opendir");原创 2017-08-01 09:42:10 · 593 阅读 · 0 评论 -
unlink的使用
#include #include #include #include #include #include #include /*使用unlink删除一个临时文件,先打开一个文件,当关闭文件时自动删除*/int main(int argc,char* argv[]){ int fd; //打开一个文件 fd = open("tmpfile",O_CREAT|O_R原创 2017-07-31 23:45:01 · 636 阅读 · 0 评论 -
实现stat命令
#include #include #include #include #include #include #include #include #include int main(int argc,char* argv[]){ if(argc<2) { printf("./mystat filename\n"); exit(1); } // 文件信息结构体原创 2017-07-31 21:47:44 · 533 阅读 · 0 评论 -
Linux 进程
如何输出进程ID: 当需要从 C 或 C++程序中使用进程 ID 的时候,应该始终使用中定义的pid_t 类型。程序可以通过 getpid()系统调用获取自身所运行的进程的 ID,也可以通过getppid()系统调用获取父进程 ID。例如下面一段程序输出了程序运行时的进程ID 和父进程 ID。#include #include int main(){ p原创 2017-07-15 15:43:34 · 231 阅读 · 0 评论 -
多进程实现并发服务器
#include #include #include #include #include #include #include #include #include #include #include "wrap.h"#define SERV_PORT 8888void wait_child(int signo){ while(waitpid(0,NULL,WNOHAN原创 2017-08-19 14:30:08 · 353 阅读 · 0 评论 -
TCP状态转换图
CLOSED:表示初始状态。LISTEN:该状态表示服务器端的某个SOCKET处于监听状态,可以接受连接。SYN_SENT:这个状态与SYN_RCVD遥相呼应,当客户端SOCKET执行CONNECT连接时,它首先发送SYN报文,随即进入到了SYN_SENT状态,并等待服务端的发送三次握手中的第2个报文。SYN_SENT状态表示客户端已发送SYN报文。SYN_RCVD: 该状态表示接收到原创 2017-08-19 15:55:08 · 365 阅读 · 0 评论