整数二分 发表于 2023-07-01 更新于 2024-11-28 分类于 算法学习 本文字数: 1.7k 阅读时长 ≈ 2 分钟 整数二分可以划分为满足某种性质与不满足某种性质的两个区间,用二分法可以找到两区间边界的左右两个点。如图中红色和绿色区间,可以通过二分找到这个区间边界。这里需要注意的是利用单调性二分只是其中一种,其他性质其实也可以二分,不过我们掌握单调性进行二分查找就行。 阅读全文 »
使用muduo编写webserver 发表于 2023-02-13 更新于 2024-11-28 分类于 Linux 本文字数: 16k 阅读时长 ≈ 15 分钟 使用muduo编写webserver因为学习了muduo库,想通过muduo库写一个webserver作为项目,在muduo和tinyWebserver的基础上改了一下,简单的把他们融合了一下。 阅读全文 »
从0开始构建muduo(三) 发表于 2023-02-03 更新于 2024-11-28 分类于 Linux 本文字数: 2.6k 阅读时长 ≈ 2 分钟 从0开始构建muduo(三)加入net模块相关代码,net模块相关代码是muduo库的精髓,后面看了一下其实也比较简洁,容易看懂。 首先是将之前main中大大的while循环进行封装,编程EventLoop 阅读全文 »
从0开始构建muduo(二) 发表于 2023-02-03 更新于 2024-11-28 分类于 Linux 本文字数: 5.5k 阅读时长 ≈ 5 分钟 从0开始构建muduo(二)加入base模块下相关的代码,主要是和进程线程相关的操作封装,包括:原子类操作、线程操作、互斥锁、条件变量、日志类。这些原版都是是使用pthread相关实现的,自己实现的话可以通过C++11进行实现一下。 加入base模块之后,可以将echo的处理改成多线程(使用线程池)。 我这里实现是将接收到的消息进行了一个简单的翻转。 阅读全文 »
从0开始构建muduo(一) 发表于 2023-01-03 更新于 2024-11-28 分类于 Linux 本文字数: 5.2k 阅读时长 ≈ 5 分钟 从0开始构建muduo(一)学习了陈硕老师的《Linux 多线程服务端编程:使用 muduo C++ 网络库》,想自己动手写一个玩具,模仿陈硕老师的muduo库。muduo库大概10000行,本人自己写的肯定简略很多(毕竟只是玩具),只是为了自己熟悉这个网络库的实现。 阅读全文 »
电脑推荐软件 发表于 2022-10-26 更新于 2024-11-28 分类于 其他 本文字数: 408 阅读时长 ≈ 1 分钟 电脑推荐软件记录一下电脑上使用的频率比较高的软件 1.Snipaste超级好用的截图软件,按下F1就可以截图。 下载地址:https://zh.snipaste.com/ 阅读全文 »
深入理解计算机系统第3章练习题 发表于 2022-10-25 更新于 2024-11-28 分类于 深入理解计算机系统 本文字数: 27k 阅读时长 ≈ 24 分钟 深入理解计算机系统第3章练习题练习题3.1假设下面的值存放在指明的内存地址和寄存器中: 操作数 值 %rax 0x100 0x104 0xAB $0x108 0x108 (%rax) 0xFF 4(%rax) 0xAB 9(%rax,%rdx) 0x11 260(%rcx,%rdx) 0x13 0xFC(,%rcx,4) 0xFF (%rax,%rdx,4) 0x11 阅读全文 »
深入理解计算机系统第2章练习题 发表于 2022-10-09 更新于 2024-11-28 分类于 深入理解计算机系统 本文字数: 17k 阅读时长 ≈ 16 分钟 深入理解计算机系统第2章练习题练习题2.1完成下面的数字转换:A.将0x39A7F8转换为二进制。 B.将二进制1100100101111011转换为十六进制。 C.将0xD5E4C转换为二进制。 D.将二进制1001101110011110110101转换为十六进制。 阅读全文 »
系统监测工具 发表于 2022-09-29 更新于 2024-11-28 分类于 Linux 本文字数: 3.1k 阅读时长 ≈ 3 分钟 系统检测工具学习《Linux高性能服务器编程》第十七章多线程编程,里面介绍了各种Linux中提供给开发人员调试和测评的服务器程序,为了印象深刻一些,多动手多实践,所以记下这个笔记。 阅读全文 »