读书笔记
看过的一些书
smile_sa
菜鸡OS轮子爱好者
展开
-
STL源码剖析学习
一、STL概论1、临时对象的使用刻意制造临时对象的方法,在型别名称之后直接加一堆小括号,并指定初值。如int(8)、vector<int>等。2、迭代器的前闭后开区间表示法3、仿函数的使用仿函数可以起到取代函数指针的作用。函数指针的缺点是无法持有自己的状态,也无法达到组件技术中的可适配性,也就是无法再将某些修饰条件加诸于其上而改变其状态。所谓的仿函数就是使用起来想函数一样...原创 2020-02-05 14:41:38 · 239 阅读 · 0 评论 -
UNP学习
1、TCP、UDP、SCTP使用16位的端口号来区分进程。原创 2020-01-06 20:33:20 · 297 阅读 · 0 评论 -
APUE学习
1、fork函数父进程pid>0,子进程pid=0。2、execlp函数可以执行从标准输入读入的命令。原创 2019-12-23 21:25:40 · 212 阅读 · 0 评论 -
Linux库函数学习
fork()函数:创建子进程。https://www.cnblogs.com/dongguolei/p/8086346.html原创 2019-10-25 21:41:19 · 179 阅读 · 0 评论 -
Linux 0.11
switch_to原创 2020-08-31 10:49:49 · 127 阅读 · 0 评论 -
nginx知识点
nginx是多进程任务,分为master进程和worker进程。worker进程主要对网络事件进行处理,master进程不处理网络事件,只会管理worker子进程实现重启服务、平滑升级、更换日志等。master通过信号进行管理worker进程,worker进程设置信号处理函数设置标志位,实现优雅或强制关闭进程。nginx实现了自己的内存池、连接池。时间是缓存在内存中的。定时器的时间保存在红黑树,一定的时间周期内看是否会超时。惊群效应的解决:规定同一时刻只能由唯一一个worker子进程监听web端.原创 2020-08-01 11:05:19 · 162 阅读 · 0 评论 -
CSAPP学习
对象本质是位+上下文。处理器正常的加载和存储都要经过寄存器。显示器也是内存经寄存器才能显示。针对主存和处理器的运算差异,采用cache进行高速缓存。CPU包括高速缓存、寄存器文件以及、ALU。文件是对IO设备的抽象,虚拟内存是对主存和磁盘的抽象,进程是处理器、主存和IO设备的抽象。补码的必要性:原码和反码对0有不同解释。...原创 2020-05-23 20:14:33 · 367 阅读 · 0 评论 -
Effective C++笔记
万一编译器不允许static整数型class常量完成in class初值设定,可改用所谓的the enum hack补偿做法。取一个enum的地址是不合法的。关键字const出现在星号左边,表示被指物是常量;如果出现在星号右边,表示指针自身是常量。c++以by value返回对象其实是一个副本而不是其自身。mutable关键字:表明成员变量可能总是会更改,即使在const成员函数内。当const和non-const成员函数有着实质等价的是现实,令non-const调用const版本可避免代码重复.原创 2020-05-10 11:26:19 · 168 阅读 · 0 评论 -
深度探索C++对象模型
第一章原创 2020-05-09 10:58:32 · 130 阅读 · 0 评论 -
Redis设计与实现笔记
一、数据结构与对象1、SDS结构包含len、free、buf。len表示当前大小、free表示剩余大小,buff为内容。c字符串再增长和缩短操作都会内存重分配,需要系统调用,耗时。分配原则:修改后长度小于1M,多分配和len同样大小的未使用空间;大于时多分配1M空间。使得连续增长n次字符串所需的内存重分配次数从必定n次到至多n次。惰性空间释放:缩短时不会重分配内存。提供api手动释放。...原创 2020-03-27 18:27:18 · 145 阅读 · 0 评论