会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
fainli
博客园
首页
新随笔
联系
订阅
管理
2024年2月24日
TLS握手证书链的校验
摘要: 看一遍忘一遍,还是自己写一遍,看看这次能记多久。 在TLS握手过程中,通过证书校验认证服务端的身份和交换加密秘钥,握手完成之后后续就可以进行加密数据传输。 在浏览器地址栏上点击锁的图标,能打开查看证书的详细信息。 首先可以看到证书包含了多个层级,最下层的是我们直接访问的网站的服务证书,最上层是根证书
阅读全文
posted @ 2024-02-24 16:36 fainli
阅读(65)
评论(0)
推荐(0)
2022年5月2日
ubuntu21.10搭建ebpf环境,BCC和bpftrace
摘要: 1. 安装虚拟机 虽说centos是生产环境中的标准系统,但是从个人学习角度还是推荐ubuntu,各种软件安装包都能方便地找到,操作界面时也很漂亮。之前一直在centos7.6上折腾,自己升级内核版本,自己安装各种高版本依赖,有一段时间被折磨得放弃了很久。这次决定直接从最新版的ubuntu21.10
阅读全文
posted @ 2022-05-02 12:31 fainli
阅读(167)
评论(0)
推荐(0)
2022年4月14日
centos7安装bcc和简单测试
摘要: 系统环境 uname -r 5.10.2-1.el7.elrepo.x86_64 cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) 升级内核版本 https://www.cnblogs.com/xzkzzz/p/9627658.
阅读全文
posted @ 2022-04-14 23:14 fainli
阅读(28)
评论(0)
推荐(0)
2022年3月5日
golang 使用下标复制切片的踩坑记录
摘要: 最近排查了一个问题,最后发现是由于对golang的切片实现不熟悉导致踩了坑。 切片的底层结构由数组指针,切片容量cap,切片当前长度len组成。 一、切片的三种初始化方式的区别 字面值 会根据传入的字面值初始化底层数组并创建切片 例子 arr := []int{1, 2, 3} 下标初始化 会创建一
阅读全文
posted @ 2022-03-05 00:09 fainli
阅读(16)
评论(0)
推荐(0)
2021年6月19日
APUE学习笔记(十七)高级进程间通信
摘要: 17.1 Unix域套接字 UNIX 域套接字用于在同一台计算机上运行的进程之间的通信。UNIX 域套接字就像是套接字和管道的混合。一对相互连接的UNIX域套接字可以起到全双工管道的作用。 和网络套接字相比: 在同一计算机上使用,效率更高;仅复制数据,不进行协议处理;域套接字提供流和数据报两种接口,
阅读全文
posted @ 2021-06-19 22:11 fainli
阅读(11)
评论(0)
推荐(0)
APUE学习笔记(十六)网络IPC
摘要: 16.1 套接字描述符 套接字是通信端点的抽象,用套接字描述符访问套接字。套接字描述符本质上是一个文件描述符,但是不是所有接受文件描述符的函数都接受套接字描述符。 为创建一个套接字,调用socket函数。 套接字通信是双向的,可以采用shutdown函数来禁止一个套接字的I/O。 套接字类型描述SO
阅读全文
posted @ 2021-06-19 22:10 fainli
阅读(12)
评论(0)
推荐(0)
APUE学习笔记(十五)进程间通信
摘要: 管道和FIFO仍能有效引用于大量应用程序,但是在新程序中要避免使用消息队列和信号量,而应当考虑使用全双工管道和记录锁。 15.1 管道 管道的局限性: 半双工只能在具有公共祖先的两个进程之间使用管道是通过调用pipe函数创建的 当读一个写端已被关闭的管道时,在所有数据都被读取后read返回0,表示文
阅读全文
posted @ 2021-06-19 22:09 fainli
阅读(15)
评论(0)
推荐(0)
APUE学习笔记(十二)线程控制
摘要: 12. 1 线程属性 如果在创建线程时就知道不需要了解线程的终止状态,就可以使用pthread_attr_setdetachstatepthread_attr_init对线程属性进行初始化,pthread_attr_destroy执行清理工作。对于进程来说虚地址空间的大小是固定的,但对于线程来说,同
阅读全文
posted @ 2021-06-19 22:06 fainli
阅读(8)
评论(0)
推荐(0)
APUE学习笔记(十三/十四)守护进程和高级IO
摘要: 13. 守护进程 要创建一个守护进程需要遵循一个固定的步骤,可以参考下面的例子。 例子 #include <fcntl.h> #include "apue.h" #include <sys/resource.h> #include <syslog.h> void daemonize(const ch
阅读全文
posted @ 2021-06-19 17:30 fainli
阅读(15)
评论(0)
推荐(0)
APUE学习笔记(十一)线程
摘要: 11. 1 线程概念 进程可以有多个控制线程,每个线程处理各自独立的任务。一个进程的所有信息对该进程的所有线程都是共享的,包括可执行程序的代码、程序的全局内存和堆内存、栈以及文件描述符。 1. 多个进程必须使用操作系统提供的复杂机制才能实现内存和文件描述符的共享,而多个线程共享相同的存储地址空间和文
阅读全文
posted @ 2021-06-19 01:07 fainli
阅读(8)
评论(0)
推荐(0)
下一页
公告