程序猿(ID:imkuqin) 整编

综合自:zibuyu9微博、https://www.zhihu.com/question/345718537、龙芯中科等

近日,知乎上有条帖子火了,有人提问:清华大学计算机专业本科这位在「自己写的 CPU 上运行自己写的操作系统」的同学是什么水平?
起因是前几天清华的刘知远教授在一条微博上发了清华大学某位计算机专业的本科生的直博面试简历,简历上写着:实现了在自己写的CPU上运行自己写的操作系统,以及自己实现的编译器生成的程序......
此条微博很快引起了热议,许多网友都说很牛逼,连刘知远老师都称赞。附上微博网友的评论让你们品一品:
清华大佬不得不服,怕是我研究生毕业也难以望其项背,路长且艰!

神仙中的神仙,告辞[跪了][跪了][跪了]要见证同时代的巨佬的诞生了吗[跪了][跪了][跪了]

厉害?俩月一个OS,还得Rust

有人质疑,两个月时间应该是复现为主吧,某项目则成员霸气回应:作为被打码的人很负责任的说不是......

不过对于网友的称赞,题主表示自己体会不到,希望有人能形象比喻一下。
接着,刘知远教授在知乎上对该问题做了补充回答,表示:清华大学计算系有三门必修课分别是计算机组成原理、操作系统和编译原理,这三门课是分在几个学期上的,各自有一套大作业体系。然而,这位面试的同学却融会贯通了这三门课的知识,在同一套体系下完成了三门课的大作业。
虽然对于常年浸淫这些领域的专家不算什么,但是对于一名大三的本科生,在这一个忙碌的学期里,愿意主动折腾这些硬核内容,完成了一个项目,这是很难得的事情。刘知远还表示该同学简历上的这句“在自己写的CPU上运行自己写的操作系统,以及自己实现的编译器生成的程序”,反映的是一位热爱计算机技术少年的浪漫情怀。
同时,刘知远教授又附上了另一段这位同学的另一份简历:
NonTrivialMIPS -十级流水双射MIPS处理器:该项目由陈晟祺、周聿浩、刘晓义和陈嘉杰四位同学组成的清华大学计算机系代表队在“龙芯杯”比赛获得特等奖,受邀在“2019年高等院校计算机系统类课程研讨会”进行报告。

自行设计 CPU 核心及 SoC,并在上面运行测试程序。清华计算机系学生代表队设计并实现了双发射 10 级流水线 CPU,支持运行最新版 Linux 内核,启动 X11 图形界面以及Python、GCC等程序等。在OpenSSL上利用AES单元加速后吞吐率大约为10MBps,同频率下i7-8750H的2.7倍
rCore for MIPS32 - Rust语言实现的Linux兼容操作系统:这是一个操作系统的课程项目,rCore 是用 rust 编写的一个操作系统,持了 x86_64, RISCV32/64, AArch64 三个平台。本项目将其移植到 MIPS32 上。它最终可以在组成原理课程编写的 MIPS32 处理器上运行。

该项目实现了在自己写的CPU上运行自己写的操作系统,以及自己实现的编译器生成的程序
以上的话题的主人公是清华计算机系本科生周聿浩同学(miskcoo),曾经是一名 OIer,第一次参赛就拿到了省一。
而且,miskcoo也在知乎上回帖了,他表示这些项目实际上是他和另外几个同学一起完成的:
这些东西实际上是我和另外几个同学一起做的。他们都十分厉害,在前面一个龙芯杯的参赛作品的 CPU、SoC、Linux 移植以及其它一些东西里面我主要做的是 CPU 的部分。如果没有他们的话一个暑假完成这样一件事情在我的能力范围内是不太可能的。
另外这个“在自己写的 CPU 上运行自己写的操作系统”项目,也是多人共同努力的结果,这一情况已经在RCore仓库下面做了详细说明。关于“自己实现的编译器”部分,miskcoo 表示,本质上是基于编译原理课程的 Decaf 编译器修改而来,完成的情况比较丑陋。

除此之外,他还贴出一张Git 统计出来的各个提交的时间:

miskcoo还表示在清华优秀的人还是很多的,他们在各自擅长的领域都有值得学习的地方,不希望自己做过的东西被拿来过分的抬高
关于前面提到的系统都已经在Github上开源了,感兴趣的伙伴们可以仔细研究学习:
NonTrivialMIPS -十级流水双射MIPS处理器
这个是参加 “龙芯杯” 的作品,获得特等奖,是一个十级双发射顺序 MIPS32 处理器(Github地址:https://github.com/trivialmips/nontrivial-mips)
rCore for MIPS32 - Rust语言实现的Linux兼容操作系统
支持的体系结构:x86_64,RISCV32 / 64,AArch64,MIPS32。(Github地址:https://github.com/rcore-os/rCore)
环境:
  • Rust toolchain at nightly-2019-03-05

  • Cargo tools: cargo-xbuild

  • QEMU >= 3.1.0

  • bootimage (for x86_64)

  • RISCV64 GNU toolchain (for riscv32/64)

  • AArch64 GNU toolchain (for aarch64)

  • musl-cross-make (for userland musl, or download prebuilt toolchain from musl.cc)

  • libfuse-dev (for userland image generation)

  • See Travis script for details.

  • 觉得不错, 请随意转发,麻烦点个在看!
  • 想脱单,找湾区人工智能

  • 长按扫码撩海归

清华学霸直博简历火了:CPU、操作系统、编译器全自己写相关推荐

  1. 清华学霸讲计算机,清华学霸直博简历火了:CPU、操作系统、编译器全自己写

    原标题:清华学霸直博简历火了:CPU.操作系统.编译器全自己写 程序猿(ID:imkuqin) 整编 综合自:zibuyu9微博.https://www.zhihu.com/question/3457 ...

  2. 清华学霸直博简历火了!CPU、操作系统、编译器全自主写,刘知远点赞

      新智元报道   来源:知乎.blog.miskcoo等 清华大学直博面试的一则简历上了知乎热榜:"实现了在自己写的CPU上运行自己写的操作系统,以及自己实现的编译器生成的程序" ...

  3. 清华计算机专业本科自己写的cpu,清华学霸直博简历火了:CPU、操作系统、编译器全自己写...

    程序猿(ID:imkuqin) 整编 综合自:zibuyu9微博.https://www.zhihu.com/question/345718537.龙芯中科等 近日,知乎上有条帖子火了,有人提问:清华 ...

  4. 清华学霸直博简历火了!CPU、操作系统、编译器全自主写

    来源:知乎.blog.miskcoo等 转自:新智元 清华大学直博面试的一则简历上了知乎热榜:"实现了在自己写的CPU上运行自己写的操作系统,以及自己实现的编译器生成的程序".简历 ...

  5. 清华学霸直博简历:CPU、操作系统、编译器全自主写

    最近,知乎上有一条帖子火了,该帖子题为"清华大学计算机专业本科这位在「自己写的 CPU 上运行自己写的操作系统」的同学是什么水平?",提问者对清华大学计算机系副教授.博士生导师刘知 ...

  6. 清华学霸直博全自主写CPU、操作系统、编译器!刘知远点赞!(附链接)

    来源:知乎.blog.miskcoo等 本文约3300字,建议阅读8分钟. 本文介绍了清华直播学霸实现了全自主写CPU.操作系统.编译器的简历. [ 导读 ]清华大学直博面试的一则简历上了知乎热榜:& ...

  7. 别人家的孩子!CPU、操作系统、编译器全自主写,刘知远点赞!

    点击蓝色"五分钟学算法"关注我哟 加个"星标",天天中午 12:15,一起学算法 来源 | 新智元 最近,一个来自福州的男生突然火了,原因是知乎上一个热帖< ...

  8. 【专业认知】保研清华计算机直博生

    2023.02.12 一. 马钦老师分享--计算机科学与技术专业 1 专业介绍 专业发展历程里程碑: 2006年:获批计算机科学与技术一级学科硕士点 2016年:获批计算机科学与技术一级学科博士学位授 ...

  9. 00后电竞女学霸直博中科院,本科武大王者全国16强,网友:现实版爽文女主角...

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 梦晨 丰色 发自 凹非寺 量子位 | 公众号 QbitAI 武汉大学 ...

最新文章

  1. boost::callable_traits的remove_member_const_t的测试程序
  2. JQUERY的split
  3. 路由器配置——OSPF协议(2)
  4. CSS 盒子的边距塌陷
  5. Java8 函数式对齐约定————Eclipse自定义代码风格
  6. 95-910-142-源码-FlinkSQL-FlinkSQL追加模式与缩进模式区别
  7. 表、栈和队列(JAVA实现)
  8. HDU 5834 Magic boy Bi Luo with his excited tree 树形DP
  9. “互联网+”时代 软件去哪儿啦?
  10. 综合能源管理服务认证是什么?综合能源管理服务认证含哪些专业?综合能源服务认证流程
  11. 2022广深Java中小厂面试记录
  12. nmap扫描主机存活情况
  13. Elasticsearch聚合学习之二:区间聚合
  14. php 九宫格验证码,PHP+Ajax微信手机端九宫格抽奖实例
  15. SDIO - 1bit / 4bit V2.0 协议深度解析-简单易懂协议详解
  16. UI设计中我们需要了解的知识
  17. /dev/sdxx is apparently in use by the system; will not make a filesystem here! 解决方法
  18. ZYNQ PL中断PS
  19. 两个umijs/max项目使用微前端简单示例
  20. 颤抖吧(C++) kkmd66

热门文章

  1. 【Java数据结构与算法】第一章 稀疏数组和队列
  2. 力扣1025.除数博弈
  3. Oracle的10046事件
  4. 快速入门MyBatis-Plus,看这一篇就够了。
  5. loj#2002. 「SDOI2017」序列计数(dp 矩阵乘法)
  6. vue环境搭建以及vue-cli使用
  7. 工作流activiti5 使用流程变量
  8. spring + groovy 转
  9. Java小程序3Arrays(2015-8-27)
  10. audio.js – 随时随地,播放 HTML5 的声音