通用技术知识
包含比较通用的技术知识笔记,比如操作系统、计算机组成原理等等
duoyasong5907
这个作者很懒,什么都没留下…
展开
-
Joplin笔记软件配置同步机制 WebDav
笔者的Joplin无法连上dropbox,且onedrive被冻结了,解冻要30天。所以只能考虑用其他方法配置同步机制,最后笔者用WebDav配置好了。原创 2024-05-19 01:23:16 · 219 阅读 · 0 评论 -
如何理解opencv的HSV值
然后设置S和V值为100,从左到右拖动H值,观察RGB数轴的变化,发现RGB的全部值域都被涵盖了。得出结论:H值是包含了所有RGB值的组合。建议搜索并下载SAI绘画软件,https://www.sai2.com.cn/,打开软件,勾选RGB和HSV模块。具体的转换公式也在文章开头的链接有提到。原创 2023-06-02 15:49:00 · 178 阅读 · 0 评论 -
使用nuscenes-devkit读取nuscenes的视频文件并输出为mp4视频
访问 https://github.com/nutonomy/nuscenes-devkit,下载依赖。原创 2023-06-16 17:23:06 · 284 阅读 · 0 评论 -
outlook如何添加联系人群组?
以后在outlook写邮件时,就能联想使用你创建的群组了。如下图所示,新增联系人组。从通讯录选择组内用户。原创 2023-07-08 11:16:55 · 2087 阅读 · 0 评论 -
windows截图软件 snagit 可以标序号步骤
如何能向图中一样,能截屏的同时,给出序号标注步骤呢?答案是。原创 2023-07-08 11:27:34 · 1152 阅读 · 0 评论 -
企业构建知识库方案
AI模型理解误区:百万成本微调垂直行业达模型VS低成本建立企业专属知识库或ai助理_哔哩哔哩_bilibili原创 2023-07-02 00:19:26 · 194 阅读 · 0 评论 -
bd签到脚本
贴吧原创 2022-11-16 03:07:23 · 222 阅读 · 0 评论 -
小视频管理软件stash
stash原创 2022-11-11 15:56:07 · 2193 阅读 · 0 评论 -
hydra 配置类库 入门
hydra原创 2022-10-22 01:48:19 · 175 阅读 · 0 评论 -
latex图片识别
无原创 2022-10-18 03:15:18 · 994 阅读 · 0 评论 -
大端、小端存储
大小端存储原创 2022-06-01 11:23:04 · 76 阅读 · 0 评论 -
页置换算法-时钟策略(clock algorithm)
根据geeksforgeeks页面所说,时钟策略指的是维护一个顺时针的时钟指针,并为每个页附加一个访问位。文中展示了下图,图的上方是页号访问序列,绿色箭头是时钟指针指向的位置,每个小图下方的文字"Pf=1", "2nd chance"等等是指对该图发生事件的描述。结合该图阅读文中的例子解释,即可理解算法流程:总结该算法有如下特点:时钟指针首先指向开始处,之后一直顺时针转动,循环往复。当需要进行页面置换时,时钟指针开始转动寻找可置换页面,直到遇到访问位为0的页号为止。在这个过程中,将遇到的访原创 2021-08-15 17:37:09 · 4029 阅读 · 0 评论 -
磁盘换页 存储位置
《现代操作系统》P.52提到了换页的换入、换出、缺页异常,并提到预取机制(与程序访问内存的时空局部性的关系)、按需页分配。并提到了按照虚拟内存区域(VMA)判断虚拟页的状态属于未分配还是已分配但未映射状态。但是,并没提到换出的内存在磁盘何处,以及换入时如何知道从磁盘哪里换入。...原创 2021-08-16 04:20:52 · 393 阅读 · 0 评论 -
页置换算法-工作集模型(Working Set Strategy)
工作集模型假设假设认为,一个应用程序在一段时间x内使用的内存页集合,也会在下一段时间x内使用。因此,在每个时间段x内,工作集应当保存在物理内存中。早期实现早期工作集的实现是all-or-nothing,即要么将工作集都加载入物理内存,要么全部换出。现在很少用这种原则,但工作集的概念依然指导者操作系统的换页策略,即优先将非工作集中的页换出。如何追踪工作集常见做法是“工作集时钟算法”。操作系统利用定时器周期运行一个时间追踪函数,假设时间间隔为T。该函数为每个内存页维护两个状态上次使用时间和访问位,均初原创 2021-08-15 19:45:15 · 3126 阅读 · 2 评论 -
内存管理-伙伴系统 SLAB分配器 空闲链表 为什么要分配连续物理内存页
作为原书《现代操作系统》的补充伙伴系统与分页/分段算法的关系我们已经了解了分页算法、虚拟页表、页置换算法。这时候又了解到伙伴系统,那它与分页、分段算法有什么关系呢?是平级关系吗?SLAB分配器有SLAB、SLUB、SLOB三种分配器,统称SLAB分配器。linux slub实现 kmem_cache 根据书中描述,SLAB会为每个大小维护一个内存资源池(大小通常为2n2^n2n字节)。每个内存资源池会维护多个slab,而每个slab都由一个/多个连续的物理页组成,从伙伴系统申请而来。维护了cu原创 2021-08-16 00:41:49 · 504 阅读 · 0 评论 -
进程与线程
《现代操作系统》称,写一个cpp demo并用cat /proc/PID/maps查看内存分布,会查到data、code等空间。本人在win10的ubuntu WSL上编译运行发现不完全相同:rasak@KMNW4D2L9ATRJSV:/mnt/e/codes/cpp-learn$ cat /proc/296/maps7fa1e2a70000-7fa1e2a72000 rw-p 00000000 00:00 07fa1e2a80000-7fa1e2a82000 rw-p 00000000 00:00原创 2021-08-16 19:21:44 · 72 阅读 · 0 评论 -
调度算法CFS
参考首先应当理解步幅算法,以及用vruntime衡量运算时间的做法(结合原书最好)。孙孟越的博客提出并解决了4个问题。其中第四个问题的答案是,会防止抢占当前进程,并鼓励阻塞唤醒的进程能占有CPU。蜗窝科技邓博沿着几个问题思考,剖析CFS总结其实最难理解是围绕着vruntime上使用的各种trick,比如:新创建的进程vruntime不应为0,防止一直抢占CPU进程在CPU间迁移时,vruntime应调整睡眠唤醒后的进程vruntime要补偿甚至还有:vruntime溢出问题,原创 2021-08-18 03:42:10 · 181 阅读 · 0 评论 -
linux进程通信 管道、消息队列、信号量、共享内存
管道匿名管道、命名管道凯玲之恋的博客给出了管道在父子进程间传递的示意图,以及实现细节示意图。可以阅读。abcfy2指出管道的几个特点:管道连接的几个命令是并行执行的,而不是串行管道中有任意一个命令退出时,整个管道连接的所有命令将全部退出管道的退出码是最后一条命令的退出码ty-chen分析了匿名管道的原理是利用文件系统,并给出了管道创建后的示意图:linux之dup和dup2函数解析代码的案例Schwarzeni给出了代码的案例,其中用到了STDOUT_FILENO。还给出了命名管原创 2021-08-19 05:19:01 · 200 阅读 · 0 评论 -
linux 信号 使用与实现
参考Linux中的信号处理机制 [一]Linux中的信号处理机制 [二]Linux中的信号处理机制 三 信号的接收、阻塞、屏蔽Linux中的信号处理机制 [四]信号接口旧版接口 signalsignal的简单示例、signal简单说明有三种预制的回调函数,SIG_DFL、SIG_IGN和SIG_ERR,分别代表默认行为、忽略信号、失败。#define SIG_DFL ((void (*) (int)) 0)#define SIG_IGN ((void (*) (int)) 1)原创 2021-08-20 18:54:43 · 98 阅读 · 0 评论 -
Peterson‘s Algorism皮特森算法详解
本文将flag比作进入临界区的意向,turn比作访问请求。对于线程0,turn=j表达了访问请求。flag[i] = TRUE将自身的访问位置为1,turn = j 向对方发出访问请求;对于线程0,while循环的条件为,对方有访问意向,且通过设置turn=i应答了自己。while中的循环条件即阻塞条件为,若对方需要访问且对方未应答访问请求。转载于Peterson’s Algorism皮特森算法详解...转载 2021-08-22 07:03:53 · 1272 阅读 · 1 评论 -
python heapq 有序队列
python库 heapq算法本例是heapq的简易用法, heapq默认建立了小根堆>>> h = []>>> heappush(h, (5, 'write code'))>>> heappush(h, (7, 'release product'))>>> heappush(h, (1, 'write spec'))>>> heappush(h, (3, 'create tests'))>>原创 2021-01-31 08:51:04 · 569 阅读 · 1 评论