操作系统磁盘管理小测复盘:从LBA寻址到调度算法与缓冲机制
这学期操作系统课讲到设备管理章节的时候老师突然在课程平台上挂了一张随堂小测标题是“设备管理之磁盘”。我一开始真没当回事觉得磁盘嘛从文件系统到分区到格式化平时都接触过考不出什么花来。结果卷子发到手才发现这套题不是让你背“磁盘是什么”而是让你在限定时间里说清楚操作系统到底怎么跟磁盘协作七八道题里至少有三四道让我犹豫了半天还有一道手算题直接算错了。课后我对着错题重新翻教材、做手推演才发现这块知识点比你想象的要深。这篇文章就是那场小测的完整复盘我不打算只贴标准答案而是把每一道题背后的原理、我踩的坑、以及后来我自己补上但课堂没考的部分都串起来。无论是期末复习冲刺还是想真正搞懂设备管理这章的同学应该都能从中拿到比分数更有用的东西。1. 打开小测卷子才发现磁盘管理考的不是记忆而是模型这张卷子一共就八道题题型一半是选择判断、一半是手算与简答时间二十分钟。听起来很轻松实际做起来完全不是那么回事。我做完之后的直观感受是这章真正的难度不在“知道磁盘有哪些概念”而在你能不能在一个具体的I/O场景里把概念用起来。1.1 考点分布其实很集中翻来覆去就这五块我复盘的时候把八道题按考点做了个归类发现出题人思路很清晰基本没跑出下面这五个方向考点模块题目表现我当时的状态磁盘访问时间组成给转速和寻道时间算单扇区读取时间公式背了单位换算卡了半天地址寻址方式CHS与LBA的换算、磁盘容量计算感觉会其实没吃透逻辑块的妙处磁盘调度算法判断SCAN和C-SCAN行为差异把“单向服务”和“到头掉头”搞混了缓冲区管理单缓冲双缓冲对I/O路径的影响误以为双缓冲是缓存实际考的是重叠磁盘缓存与回写策略write-through和write-back的适用场景能说出区别但解释不清原因这么一看小测虽然叫“课堂小测”覆盖面却相当完整它就是设备管理这章的一个缩影。1.2 那道手算题7200转到底意味着什么卷子里有一道题我记得特别清楚某机械硬盘转速为7200 RPM平均寻道时间8毫秒每磁道64个扇区每个扇区512字节求读取一个扇区的平均时间大概是多少。很多人看到这种题就开始忙乱其实拆开就是三个部分。寻道时间题目直接给了8毫秒。旋转延迟要看转速7200 RPM意味着磁盘转一圈需要60除以7200秒约8.33毫秒平均半圈就是4.17毫秒这是磁头等目标扇区转过来的平均时间。传输时间更小扇区是512字节每磁道64个扇区磁头扫过一个扇区大约就是8.33除以64约0.13毫秒。三者相加平均读取时间就是8加4.17加0.13大约12.3毫秒。我当时错在哪我忘了把“平均旋转延迟”算成半圈。如果你直接写8.33毫秒等于默认糟糕到每次都要等整整一圈才能读到数据那相当于假设磁头永远刚好错过目标扇区这是概念性错误。小测之后我自己的经验是凡是涉及旋转延迟的题目先问自己“最坏要等多久平均要等多久”最坏是一整圈平均就是半圈。还有个更值得品味的引申点如果要求连续读多个扇区寻道和旋转的等待时间是可以摊薄的真正的大头在前面的寻道和旋转延迟。这就解释了为什么“顺序读比随机读快得多”——不是玄学是物理。这也是后来文件系统设计里预读机制的根本原因。2. 从CHS到LBA再往下挖一层那道地址计算题的逻辑链才完整第二道让我冒汗的题是给出一组磁盘几何参数要求计算容量并判断某一块的逻辑地址对应物理位置。这种题在学校里属于基本功但我发现如果只是套公式很容易忽略操作系统压根不直接面对CHS这件事。2.1 CHS为什么会被LBA取代早期的磁盘用柱面、磁头、扇区三个参数来描述一个物理扇区也就是CHS寻址。软件读写时要告诉硬盘“我在第几个柱面、第几个磁头、第几个扇区”容量等于柱面数乘磁头数乘每磁道扇区数乘每扇区字节数。这套寻址在磁盘容量小的时候还可以但后来磁盘内部几何参数越来越复杂柱面数、磁头数这种物理概念跟操作系统的块设备抽象已经不匹配了。于是出现了LBA逻辑块地址。简单说就是把整个磁盘上的扇区从0开始线性编号操作系统只需要告诉设备“请给我第LBA 100000号块”设备固件再把逻辑块翻译成内部的物理位置。这个设计很像操作系统里的虚拟地址空间上层看到的是简单的线性地址底层怎么映射是设备自己的事。题目里如果是这样一个参数某磁盘有1024个柱面、8个磁头、每磁道64个扇区、每扇区512字节那容量就是1024乘以8再乘以64再乘以512字节算出来是256MB。如果要由CHS转LBA公式就是把柱面号乘以“磁头数乘每磁道扇区数”再加上磁头号乘以每磁道扇区数最后加上扇区号减一。本质上就是一个三维坐标压成一维坐标的过程。2.2 逻辑地址这个抽象越往后越值钱我当时只把LBA当成一个换算公式在背后来才意识到这套抽象的价值远远不止是省事。它让操作系统不必依赖某个硬盘厂商的物理几何也让SSD这类没有“柱面磁头扇区”概念的设备能被当做普通块设备来用。SSD内部的闪存物理布局复杂得多但对外仍然以逻辑扇区提供服务靠的就是类似LBA的统一接口固件自己去映射。这道题里出题人其实埋了一个后手如果一个小测验只考察算数那太单调了。它更想让你理解“地址从三维变一维”背后的工程动机。后来看文件系统和磁盘分区表的时候我体会更深——MBR分区表之所以只能搞4个主分区本质上是分区表项固定数量而GPT换成了基于LBA、64位入口的现代结构能支持的分区和磁盘大小就完全不在一个量级。这些内容课堂小测没展开但理解CHS到LBA的演变之后再接触GPT就觉得顺理成章了。2.3 我再补充一个容易忽略的边界扇区大小老师在小测里没有单独考扇区大小这个变量但容量计算里它一定会出现。传统磁盘大多用512字节扇区新的大容量磁盘很多用4K原生扇区。一个4K扇区等于八个512字节扇区如果你在文件系统层面还是按512字节逻辑块去做分区对齐没有对齐到4K边界就很容易出现一个跨物理扇区的读写请求性能损耗虽然不大但积累起来很可观。现在装系统时分区工具默认都会做对齐处理底层就是这套逻辑。3. 磁盘调度算法那几道题我是在“电梯”这个比喻上翻车的小测里连续出了三道调度算法相关的选择题我本来还觉得稳结果对完答案发现翻车最狠的就在这一块原因是我把“SCAN到端点掉头”和“C-SCAN单向服务后回程”搞混了。这必须单独拿出来拆开说。3.1 调度的本质机械臂是物理运动的顺序就是钱机械硬盘读一个块最大的开销在于移动磁头臂。如果访问请求乱七八糟磁头就会在盘面上来回奔波I/O吞吐直接崩。磁盘调度算法的目标就是安排这些请求的执行顺序让磁头总移动距离尽量小同时还要兼顾公平、不能饿死远端请求。这和CPU调度很像但也有区别CPU调度切换时间相对固定而磁盘调度的代价完全取决于磁头当前位置和目标位置之间的距离。所以“先来先服务”虽然公平在随机负载下效率往往很低。3.2 六种调度算法一张表说清楚差异为了揪出我到底哪里混淆我重新把六种常见算法放在同一张表里做对比算法核心思路饥饿情况磁头移动特征我的理解误区FCFS按请求到达顺序服务不会饥饿可能来回大幅移动太简单低估了它效率低下的程度SSTF每次选离当前位置最近的请求远端请求可能长期等待短视选择整体不一定最优以为它总比SCAN快其实不一定SCAN电梯算法沿当前方向服务到头再掉头较公平到达边界才换方向我把“到头”理解成“到最后一个请求”其实经典定义是到最内/最外磁道C-SCAN只沿一个方向服务回程不处理请求公平性最好回程直接快速移动到另一端我以为回程也会服务其实不会LOOKSCAN但边界按请求来反向到最远请求即可较公平不硬冲边界效率更高和SCAN的边界差异没扣清C-LOOKC-SCAN但回程到最远请求后反向服务公平性好移动量通常最小总觉得它就是C-SCAN的简化版没抓住跳跃特征这道题的陷阱就在于电梯算法只是SCAN的通俗叫法但“电梯”本身就有两个版本。家用电梯到顶层会换方向这就是SCAN有些高速电梯在回程时不停靠直接下到另一端再开始上这就是C-SCAN。小测里问的恰恰是“回程是否提供服务”我按家用电梯的逻辑去答自然就错了。3.3 手算一遍才真正理解SCAN和LOOK差在哪光看定义还是不够我后来拿着教材里的经典访问序列自己从53号磁道开始手算了一遍。访问请求是98、183、37、122、14、124、65、67假定磁盘最大磁道号为199、最小为0各算法总移动距离如下算法总移动距离平均值处理顺序示例FCFS64080.0053到98再到183……SSTF23629.5053到65到67到37到14到98……SCAN34543.1353到65到67到98到122到124到183到199掉头再到37到14C-SCAN38247.7553到65到67到98到122到124到183回程跳回0再到14到37LOOK29937.3853到65到67到98到122到124到183掉头到37到14C-LOOK32240.2553到65到67到98到122到124到183回程跳到14到37手算完之后我悟了SCAN一定会跑到199或0那种真正的端点才换方向LOOK只跑到当前方向上的最远请求就够C-SCAN回程只是“搬家”不干活C-LOOK连搬家都只搬到最远请求。这个差别对平均寻道距离影响不小出题人特别喜欢拿其中任意两个对比来考。我还顺手写了个小脚本用来验证不同调度算法的总移动距离省得每次手算def fcfs(head, seq): total abs(head - seq[0]) for i in range(len(seq) - 1): total abs(seq[i1] - seq[i]) return total def sstf(head, seq): seq seq.copy() total 0 while seq: nearest min(seq, keylambda x: abs(x - head)) total abs(head - nearest) head nearest seq.remove(nearest) return total requests [98, 183, 37, 122, 14, 124, 65, 67] print(fcfs(53, requests)) print(sstf(53, requests))代码虽然简单但每一步“当前磁头在哪、下一个选谁”都看得清清楚楚比光背结论牢靠得多。4. 缓冲区管理那道“送分题”考的其实是I/O路径上的重叠小测第五题是判断对错双缓冲相对于单缓冲主要是为了提高磁盘转速。我一看就知道错但让我说清楚原因我一开始也只能说出“双缓冲更好”这种车轱辘话。复盘时我才慢慢把这块的模型理顺。4.1 单缓冲为什么会等待生产者与消费者共用一张桌子教科书里的经典模型是这样磁盘把数据读入一个缓冲区读完之前用户进程不能取走用户取走期间磁盘又不能写下一个块。整个过程就像只有一个位子的吧台厨师上一道菜客人吃完厨师才能上下一道。如果厨师做菜和客人吃饭都很快那每个周期都有相当一部分时间花在“等对方腾地方”上设备利用率上不去。在磁盘I/O里DMA把数据搬到内存缓冲区需要时间CPU或用户进程处理这块数据也需要时间单缓冲强行把这两段时间串行化了。4.2 双缓冲的核心是重叠不是多备一块缓存双缓冲是准备两块缓冲区磁盘往A缓冲写数据的时候用户进程可以从B缓冲读数据下一个回合再互换。这样DMA的准备时间和用户处理时间就重叠了起来只要用户处理时间小于磁盘填充时间外设就可以不间断地搬运数据。我复盘时的最大收获是双缓冲解决的不是“数据缓存够不够”而是“两条流水线之间能不能并行”。它把单缓冲里的交接等待消除了。小测考这个判断目的就是想看你能不能区分“缓冲”和“缓存”。缓冲是协调速度不匹配的数据暂存区域侧重生产消费节奏匹配缓存是把常用数据靠近处理器侧重减少慢速设备的访问次数。这两个词平时总混着讲课程里却是两个完全不同的机制。4.3 从课堂到Linux页缓存与回写策略缓冲区这题往下延伸自然就到了磁盘缓存。Linux页缓存是最典型的一层读文件时先看页缓存命中就直接返回写文件时数据先落到页缓存后台再找机会回写磁盘。回写策略有write-through和write-back两种路数。write-through是数据同时写缓存和磁盘掉电不丢但每次写都要等磁盘性能一般write-back是数据只写缓存由后台脏页回写机制批量落盘性能好但机器突然断电会丢未落盘的数据。小测里有一道简答就是这个我答得还算顺利但后来我补充思考了一层为什么数据库系统往往偏保守倾向于更接近write-through的策略因为数据库把事务日志的持久性看得比吞吐量更重丢失一条日志可能破坏整个一致性。这个例子说明回写策略不是单纯地选快而是在性能和可靠性之间按需平衡。这也是我踩过的坑以前总把双缓冲、页缓存、write-back当成可以混在一起说的“缓解磁盘慢的手段”。实际上缓冲区的尺寸、位置和生命周期都不同缓冲区是内存在I/O路径上的接力空间页缓存是内核用空闲内存换I/O次数的策略回写策略又决定了数据什么时候真正落到磁盘。一层一层分开来看整个I/O栈就清晰了。5. 课堂上没考但我自己补上的内容机械盘调度之后是SSD的世界小测结束那天我顺手把教材往后翻了几页发现后面还有关于固态硬盘和磁盘冗余阵列的内容。老师课堂上讲到设备管理之磁盘重点是机械盘那一套但作为从业者视角我觉得这部分不补上前面的调度算法就有种“学完即过时”的错觉。5.1 SSD让“电梯算法”的用武之地变小了但没让I/O调度消失固态硬盘没有磁头、没有机械臂随机读写的成本和顺序读写相差比机械盘小得多所以SCAN这类基于寻道距离优化的算法在纯SSD场景下意义大幅下降。这不是说SSD不需要调度而是调度目标变了闪存不能原地覆盖写要先擦除再写入擦除按块进行频繁小写会造成严重的垃圾回收压力。因此SSD内的FTL层会把逻辑块地址映射到闪存物理页通过磨损均衡让每个块被擦除的次数尽量平均。这里有一个和LBA呼应的地方SSD对操作系统暴露的还是线性逻辑块接口操作系统下发写请求固件决定写到哪里。你就知道为什么前面我们强调CHS到LBA的抽象了——这套逻辑块设计让存储介质从机械盘进化到闪存盘时操作系统的块设备接口几乎不需要变。5.2 TRIM指令和Linux I/O调度器两个值得自学的延伸点机械盘删除文件只是改元数据旧数据还在盘片上下次直接覆盖没问题。SSD不一样直接覆盖意味着要先做耗时的擦除。操作系统通过TRIM指令告诉SSD哪些逻辑块页已经无效SSD可以在垃圾回收时主动回收这些页提前备好干净可用空间。如果一台跑虚拟机或数据库的机器开了大量随机写却不支持TRIM长时间运行后SSD性能和寿命都会明显下跌。Linux的I/O调度器那边也值得一提。早期内核用CFQ按进程公平分配磁盘带宽后来我实际使用中发现现代内核里SSD场景更多用none或deadline因为重新排序和合并带来的收益在高速NVMe上远没有调度开销大。而机械盘场景或者混合存储阵列里bfq或多队列的deadline仍然有价值。这个东西课堂小测完全没考但它能帮你把磁盘调度从“考试算法”拉回“真实系统里的选择”。5.3 RAID相关的小测外思考冗余不是备份小测没有覆盖磁盘阵列但设备管理之磁盘这个话题绕不开RAID。最基础的是RAID0条带化两块盘合起来容量翻倍但坏一块全完RAID1镜像容错能力强但写放大RAID5用分布在各盘的奇偶校验信息用一块盘的容量换取容错能力至少需要三块盘RAID10是镜像加条带企业里常见。我个人建议把RAID理解成“可靠性设计”而不是“备份”。备份是文件级的、可粒度管理的副本RAID保护的是物理介质故障导致的中断和瞬时数据丢失它不防误删、不防勒索病毒、不防逻辑损坏。很多人在真实环境里把RAID当备份用出事才追悔莫及。这个认知上的区分比记住几个RAID级别更重要。最后再分享一个小习惯那次小测之后我给自己定了一个复习规矩凡是设备管理这章的概念都先想一遍“如果现在要处理一个真实I/O请求它在整个路径上会经过哪些环节”。磁盘访问时间题就对应寻道、旋转、传输三次物理等待地址题就对应LBA到固件映射的接口逻辑调度题就对应I/O引擎里的排队与排序缓冲题就对应DMA到内核再到用户态的数据接力回写题就对应掉电风险与性能的权衡。这样想一遍之后很多题目哪怕换个数字、换个问法也不会被带偏。这张小测卷子本身只有二十分钟但它让我把设备管理这一章真正读厚了。

相关新闻

Zemax实战:单模光纤耦合效率如何从估算到精准仿真

Zemax实战:单模光纤耦合效率如何从估算到精准仿真

简介:这是一份Zemax模拟单模光纤光束耦合的完整范例文档,主要面向从事光纤通信、光器件设计的光学工程师,也适合正在学习Zemax软件的分析人员。文档以SUSS MicroOptics FC-Q-250微透镜阵列作为核心元件,演示如何将两根康宁SMF-28e…

2026/10/13 11:52:33 阅读更多 →
Android面试实战复盘:从核心技术到项目表达的系统指南

Android面试实战复盘:从核心技术到项目表达的系统指南

1. 先聊聊我对Android面试的整体认知做了这么多年Android开发,大大小小的面试参加过不少,也以面试官的身份坐在桌子对面看过形形色色的候选人。说实话,我越来越觉得,有开发经验的人去面试,和应届生去面试,完…

2026/10/13 11:52:33 阅读更多 →
EmguCV单目相机标定与畸变校正实战:从棋盘格到参数应用

EmguCV单目相机标定与畸变校正实战:从棋盘格到参数应用

做机器视觉项目的人,十有八九会在第一步被镜头畸变坑一回。标定板明明贴得很正,拍出来的直线却带着弧度;视野中心量得好好的,一到画面边缘工件形状就走样。这个问题的标准解法,就是用棋盘格做一次相机标定,…

2026/10/13 11:51:32 阅读更多 →

最新新闻

打破园区数据孤岛:统一数字平台与智慧园区落地实践

打破园区数据孤岛:统一数字平台与智慧园区落地实践

简介:面向园区管理者、物业运营方与智慧城市方案设计人员,这份《华为智慧园区通用场景解决方案》以“平台生态”为主线,针对管理对象多、运营成本高、服务体验差、应用重复建设等痛点,给出分层分场景的数字化转型路径,…

2026/10/13 12:41:45 阅读更多 →
Elasticsearch集群搭建实战:节点角色、核心配置与健康检查

Elasticsearch集群搭建实战:节点角色、核心配置与健康检查

1. 先搞明白:这个集群到底要解决什么问题我最初接触ELK的时候,对Elasticsearch集群的理解特别肤浅:以为把ES多装几台,启动起来就算集群了。结果在测试环境里把三台机器都配成了默认角色,数据全挤在一台机器的磁盘上&am…

2026/10/13 12:41:45 阅读更多 →
Java Word占位符替换:Apache POI与docx4j选型及跨run处理避坑指南

Java Word占位符替换:Apache POI与docx4j选型及跨run处理避坑指南

1. 为什么“替换Word占位符”这件事,远比想象中麻烦做过Java后端的人,几乎都绕不开一个需求:生成一份格式规范的Word文档。合同、通知书、报表、简历、项目验收单,业务方给过来的永远是一个排版精美的.docx模板,里面写…

2026/10/13 12:41:45 阅读更多 →
SAP-PP替代物料完全手册:策略、配置与MRP消耗顺序避坑指南

SAP-PP替代物料完全手册:策略、配置与MRP消耗顺序避坑指南

简介:这份手册面向SAP-PP模块顾问、生产计划员及物料管理相关人员,系统讲解替代物料与后继物料的配置逻辑与实操方法,帮助解决生产过程中物料短缺、切换与按比例消耗等常见难题。资源包内含1个docx文档,大小约871KB,以…

2026/10/13 12:41:45 阅读更多 →
测试工程师面试题:底层能力分析与高效准备指南

测试工程师面试题:底层能力分析与高效准备指南

如果把测试工程师的面试题当成一份题库来背,基本就输了一半。这几年我接触过不少准备面试的朋友,也看过很多测试工程师/测试开发岗位的面试题合集,大家普遍的做法是刷题、背答案、记八股,结果面试官换一种问法,立刻就原…

2026/10/13 12:41:45 阅读更多 →
鲲鹏云ARM架构Hadoop集群部署实验全流程拆解

鲲鹏云ARM架构Hadoop集群部署实验全流程拆解

简介:《鲲鹏云大数据实验docx》是一份面向云计算与大数据初学者的实验报告,完整记录了在华为云鲲鹏环境下从零搭建Hadoop集群的全过程。报告从购买弹性云服务器与对象存储服务开始,介绍如何获取AK/SK认证密钥,并逐步完成OpenJDK安…

2026/10/13 12:40:44 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目,我最大的感受是,大部分坑不是出在技术前沿,而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节,最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了,很难不碰到舵机控制这道坎。做智能小车要转方向,做机械臂要抬关节,做云台要偏航俯仰,背后都是同一个东西在干活:舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”?——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台?或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜?又或者,在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 21:05:09 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 14:48:49 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →