本仓库由 《RISC-V体系结构编程与实践》 一书(以下简称“本书”)的非官方读书会维护。 关于本书:奔跑吧Linux社区又一新作,旨在帮助读者快速掌握RISC-V体系架构; 关于读书会:读书会的目的是共同进步、互相学习、(严格)监督,快速看完,让本书不吃灰。 读书会成员阅读期间,将在此仓库以知识竞赛的形式记录一些问题,规则为: 1. 阅读每个章节需要提出 2~3 个问题,在 chapters 下对应文件中记录。 问题没有标准,唯一要求是不允许提供答案。 作为一场知识竞赛,读书会成员阅读完一章节后,可以尝试解决其他成员提出的问题,并且需要记录2~3个问题供其他成员解决,题目可以是 a. 提出自己的疑惑 b. (以问题的形式)分享自己已经掌握但觉得重要的知识 c. (以问题的形式)记录任何你想记录的东西 更重要的是,你可以通过出题和解题来让自己更强大。 2. 阅读时间限定为 6~7 周,每周至少 3 个章节 开始时间为 2023年04月03日,读书会将会在每周五和周日由本周 owner 组织两次线上会议讨论,owner 每周更换一次。 每周最低要求是3个章节,此要求是为了保证在大家起点一致的情况下,在一个月左右解决掉本书,不让战线拉得太长。 读书会成员的阅读进度也由每周 owner 负责观测: 如果有一周没有完成进度,将会被踢出群组、项目; 完成的同学将会获得每周的自律认证,结束后还会有一次汇总的自律认证(让我们看看谁掉队了)。 以下是大概的时间表: Week 01, owner: peeweep, 2023-04-03 ~ 2023-04-09 第1章 RISC-V体系结构基础知识 1 第2章 搭建RISC-V实验环境 29 第3章 基础指令集 44 Week 02, owner: ryan, 2023-04-10 ~ 2023-04-16 第4章 函数调用规范与栈 67 第5章 GNU汇编器 79 第6章 链接器与链接脚本 94 Week 03, owner: jonas, 2023-04-17 ~ 2023-04-23 第7章 内嵌汇编代码 118 第8章 异常处理 130 第9章 中断处理与中断控制器 156 Week 04, owner: peeweep, 2023-04-24 ~ 2023-04-30 第10章 内存管理 172 第11章 高速缓存 207 第12章 缓存一致性 224 由于五一假期 2023-05-01 ~ 2023-05-07 不做要求, 线上讨论正常进行 Week 05, owner: shiptux, 2023-05-08 ~ 2023-05-15 第13章 TLB管理 246 第14章 原子操作 261 第15章 内存屏障指令 275 Week 06 第16章 合理使用内存屏障指令 299 第17章 与操作系统相关的内容 316 第19章 压缩指令扩展 393 Week 07 第18章 可伸缩矢量计算与优化 345 第20章 虚拟化扩展 396 如果你对我们的进度感兴趣,或者想参与进来,可以发邮件到 running-linux-riscv@0x0.ee 表达你的来意,获取我们的 Telegram 群聊链接。 Refs: 1. 本书配套实验: https://github.com/runninglinuxkernel/riscv_programming_practice 2. Gentoo Quiz: https://gitweb.gentoo.org/sites/projects/comrel.git/tree/recruiters/quizzes/developer-quiz.txt 3. Unprivileged Spec: https://github.com/riscv/riscv-isa-manual/releases/download/Ratified-IMAFDQC/riscv-spec-20191213.pdf 4. Privileged Spec: https://github.com/riscv/riscv-isa-manual/releases/download/Priv-v1.12/riscv-privileged-20211203.pdf 5. RISC-V 中文手册: http://riscvbook.com/chinese/RISC-V-Reader-Chinese-v2p1.pdf