上一页 1 ··· 5 6 7 8 9 10 11 12 13 14 下一页

《深入剖析ngx》——数据结构

摘要: 1. ngx_str_t 2. ngx_list_t 3. ngx_array_t 4. ngx_queue_t 5. ngx_pool_t 6. ngx_hash_t 7. ngx_radix_tree_t 阅读全文
posted @ 2022-03-11 13:58 开心种树 阅读(37) 评论(0) 推荐(0) 编辑

《深入剖析ngx》——进程模型

摘要: 1. 进程工作 ngx是多进程模型:work进程,master进程,cache进程。 ngx还使用 upstream等模块实现和 其他服务器通信 master和worker进程工作流程如下 可以看出 用户使用信号控制 监控进程,监控进程 控制工作进程 监控进程主要处理 用户的信号, 监控进程使用 s 阅读全文
posted @ 2022-03-11 13:54 开心种树 阅读(1004) 评论(0) 推荐(0) 编辑

《深入剖析ngx》——调试

摘要: 1. gdb调试 编译带调试信息的ngx ./configure --with-cc-opt='-g -O0' CFLAGS='-g -O0' ./configure make CFLAGS='-g -O0' gdb -p 3333 (gdb)attach 3333 若要gdb支持查看宏定义,需要 阅读全文
posted @ 2022-03-10 15:20 开心种树 阅读(111) 评论(0) 推荐(0) 编辑

开发工具——gdb

摘要: 1. 启动gdb 1.1 vim 使用gdb 需要vim8+ gdb7+ vi main.c :packadd termdebug :Termdebug ./a.out 2. 设置断点 break function break linenum break filename:function brea 阅读全文
posted @ 2022-03-08 10:28 开心种树 阅读(64) 评论(0) 推荐(0) 编辑

ramfs

摘要: initramfs的作用 1. 作为启动跳板 kernel挂载initramfs,运行init程序,该程序会探测硬件,加载驱动,最后挂载真正的文件系统,执行文件系统上的init程序,进而切换到用户空间, 真正的文件系统挂载后,initramfs使命完成,释放其占用空间。 2. 作为最终文件系统 ra 阅读全文
posted @ 2022-03-07 09:46 开心种树 阅读(1915) 评论(0) 推荐(0) 编辑

kernel——module

摘要: 模块机制让kernel有伸缩性,既保有宏内核的高效,又有一定微内核的稳定性。 1. 单个模块 1.1 模块的编译 1.1.1 源码树内编译 在源码树内添加模块 linux-5.16.2# touch drivers/char/hello.c #include <linux/init.h> #incl 阅读全文
posted @ 2022-02-21 23:23 开心种树 阅读(404) 评论(0) 推荐(0) 编辑

v4l2

摘要: 介绍 v4l2 是 用户 从设备获取 音视频数据的方法。 用户通过 v4l2 可以知道 设备支持 哪些操作 和 支持 哪些数据格式。 通常使用 内存映射,传输数据。 用户预先建立多个内存映射,将空内存输队,等待kernel将数据填充到空内存块,装有数据的内存块出队,用户操作数据。 操作逻辑 设置设备 阅读全文
posted @ 2022-02-15 17:06 开心种树 阅读(1013) 评论(0) 推荐(0) 编辑

vim

摘要: 符号查找和跳转 gtags gtags加载数据库,先找当前目录,若没有则找上层目录,所以当写模块程序需要内核GTAGS时,可以如下整理, 把kernel目录和module目录分开放,为避免gtags把其他无关文件扫描,使用find命令找到需要扫描的kernel源文件放到 linux-file-lis 阅读全文
posted @ 2022-01-12 10:56 开心种树 阅读(119) 评论(0) 推荐(0) 编辑

docker

摘要: docker 命令 安装 ubuntu16 sudo apt-get update sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common curl -fsSL https 阅读全文
posted @ 2022-01-05 14:55 开心种树 阅读(48) 评论(0) 推荐(0) 编辑

ss5——1.使用

摘要: 1. 服务端ss5 下载代码,编译安装 yum -y install openldap-devel pam-devel tar zxvf ss5-3.8.9-8.tar.gz cd ss5-3.8.9-8 ./configure make && make install 配置验证方式 vi /etc 阅读全文
posted @ 2021-12-31 16:14 开心种树 阅读(273) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 13 14 下一页