- 博客(9)
- 资源 (1)
- 收藏
- 关注
原创 libevent开源网络库安装与使用
libevent库 开源。精简。跨平台(Windows、Linux、maxos、unix)。专注于网络通信。 源码包安装: 参考 README、readme ./configure 检查安装环境 生成 makefile make 生成 .o 和 可执行文件 sudo make install 将必要的资源cp置系统指定目录。 进入 sample 目录,运行demo验证库安装使用情况。 编译使用库的 ....
2021-08-27 16:33:19 237
原创 XiyouLinux兴趣小组2020年纳新面试题
请试着解释其输出。 int main(int argc , char *argv[]) { unsigned char a = 255; char ch = 128; a -= ch; printf("a = %d ch = %d\n", a, ch); } 结果 解析:a为无符号其二进制 11111111 减去b :01111111 为1000000 其值为127 所以第一个打印出的数字为127 ch=128 char类型最高只能存127 128的补码等同-128 所以第二个打印的数字.
2021-08-27 16:20:32 145
原创 LinuxC线程——线程控制和设置属性
线程概念: 进程:有独立的 进程地址空间。有独立的pcb。 分配资源的最小单位。 线程:有独立的pcb。没有独立的进程地址空间。 最小单位的执行。 ps -Lf 进程id ---> 线程号。LWP --》cpu 执行的最小单位。 线程共享: 独享 栈空间(内核栈、用户栈) 共享 ./text./data ./rodataa ./bsss heap ---> 共享【全局变量】(errno) 线程控制原语: p...
2021-08-10 21:35:52 200
原创 Linux网络编程——epoll反应堆模型
epoll 反应堆模型: epoll ET模式 + 非阻塞、轮询 + void *ptr。 原来: socket、bind、listen -- epoll_create 创建监听 红黑树 -- 返回 epfd -- epoll_ctl() 向树上添加一个监听fd -- while(1)-- -- epoll_wait 监听 -- 对应监听fd有事件产生 -- 返回 监听满足数组。 -- 判断返回数组元素 -- lfd满足 -- Accept -- cfd 满足...
2021-07-25 21:55:58 159
原创 LinuxC进程——信号(Signal)
信号共性: 简单、不能携带大量信息、满足条件才发送。 信号的特质: 信号是软件层面上的“中断”。一旦信号产生,无论程序执行到什么位置,必须立即停止运行,处理信号,处理结束,再继续执行后续指令。 所有信号的产生及处理全部都是由【内核】完成的。 信号相关的概念: 产生信号: 1. 按键产生 2. 系统调用产生 3. 软件条件产生 4. 硬件异常产生 5. 命令产生 概...
2021-07-24 21:06:36 606
原创 LinuxC进程——进程通信(PIPE/FIGO管道,mmap内存映射)
pipe管道: 用于有血缘关系的进程间通信。 ps aux | grep ls | wc -l 父子进程间通信: 兄弟进程间通信: fifo管道:可以用于无血缘关系的进程间通信。 命名管道: mkfifo 无血缘关系进程间通信: 读端,open fifo O_RDONLY 写端,open fifo O_WRONLY 文件实现进程间通信: 打开的文件是内核中的一块缓冲区。多个无血缘关...
2021-07-23 18:13:55 96
原创 LinuxC进程——进程相关知识
进程: 程序:死的。只占用磁盘空间。 ——提前写好的剧本 进程;活的。运行起来的程序。占用内存、cpu等系统资源。 ——正在演出的剧 PCB进程控制块: 进程id 文件描述符表 进程状态: 初始态、就绪态、运行态、挂起态、终止态。 进程工作目录位置 *umask掩码 信号相关信息资源。 用户id和组id fork函数: pid_t fork(void) 创建子进程。父子...
2021-07-23 18:11:00 98
原创 LinuxC 进程——进程回收与管道通信
这里写自定义目录标题 exec函数族: 使进程执行某一程序。成功无返回值,失败返回 -1 int execlp(const char *file, const char *arg, ...); 借助 PATH 环境变量找寻待执行程序 参1: 程序名 参2: argv0 参3: argv1 ...: argvN 哨兵:NULL int execl(const char *path, const char *arg, ...); 自己指定待执行程序路径。 int execvp();
2021-07-20 08:28:38 126
原创 Linux环境Myls制作前瞻
文件与目录查看—ls命令详解 ls命令用于查看文件或目录的详情信息,众所周知,ls命令有很多参数,下面为大家详解一下各个常用参数的用法 -a 列出全部文件(包括隐藏文件) -A 列出全部文件(包括隐藏文件但不包括.或…子目录) -d 列出目录本身 -f 列出全部但不排序 -F 根据文件目录等信息,给予附加的数据结构 *:代表可执行文件; /:代表目录=:代表socket文件; |:代表FIFO(有名管道)文件 -h 列出文件容量,human人性化KB/MB/GB等等… -R 和子目录文件一并列出 -l 列
2021-03-22 21:42:57 193 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人