CS140e: (1) 准备与 Blinky
作者&投稿:植炎 (若有异议请与网页底部的电邮联系)
CS140e是斯坦福大学的一门实验性操作系统课程,选用Raspberry Pi 3作为硬件平台,采用Rust这种现代编程语言。这门课程的独特之处在于,学生们将在真实的设备上编写并运行代码,而非像传统课程那样在虚拟机上操作。课程由Rust Web框架Rocket的作者Sergio Benitez和操作系统领域的资深学者Dawson Engler授课,教学内容深入且权威。
出于对Rust的兴趣和对树莓派的好奇,我决定跟随课程材料学习。作为非正式学生,我自行准备了所需的硬件,如Raspberry Pi、microSD卡和读卡器,总成本约30元(包含邮费)。虽然购买时多出了一两倍,但整体花费不多,且过程顺利。
Assignment 0的第一步是环境设置,虽然比虚拟机环境复杂,但有详细的指导。接着,通过提供的Binary,我成功运行了基础的Blinky程序,借此熟悉了操作流程。第三阶段,挑战来临,需要用C实现Blinky,涉及内存映射I/O和硬件通信。文档中的详细指引帮助我一步步完成了任务。
第四阶段,是将C代码转化为Rust,虽然这部分主要在unsafe区,但作为操作系统课程,这是必要的。Rust的学习建议不要过早接触unsafe,虽然它提供了更大的灵活性,但意味着放弃了编译器的部分保护。
总的来说,Assignment 0作为入门作业,重点在于环境熟悉和初步理解memory-mapped I/O的概念。后续的课程会更加深入和丰富。
淫顷庆大: #include <stdio.h> int main() { int s; printf("请输入一个成绩:"); scanf("%d", &s); if(s>100 || s < 0) { printf("输入了一个错误的成绩.\n"); return 1; } char ch; switch(s/10) { case 10: case 9: ch = 'a'; break; case 8: ch = 'b'; break; case 7: ...
元宝区15677231430: S2Cl2是工业上常用的硫化剂,实验室制备S2Cl2的方法有2种:①CS2+3Cl2 111 - 140℃ CCl4+S2Cl2;②2S+Cl2 95 - 100℃ S2Cl2.已知S2Cl2中硫元... - ?
淫顷庆大:[答案] (1)BC装置为广口瓶,二氧化锰和浓盐酸之间反应得到氯气,但是氯气中混油HCl和水,应该先用饱和食盐水除去HCl,再用... A、石油分馏,水流和热气流方向相反,故A错误; B、制取溴苯实验装置中,其冷却水流动方向与热气流流动方向相同,故...
元宝区15677231430: (语言不限,最好是有c语言)编写1 - 33这33个数字中其中任意6个数字为一组得到的和在60 - 140之间,在一组在不能有相同的数字,求这6个数字之和并输出每组的数字成员.?
淫顷庆大: #include"stdio.h" main() { int R=0,a=1,b=2,c=3,d=4,e=5,f=6; for(a=1;a<=33;a++) for(b=a+1;b<=33;b++) for(c=b+1;c<=33;c++) for(d=c+1;d<=33;d++) for(e=d+1;e<=33;e++) for(f=e+1;f<=33&&f>e;f++) { R=0; R=a+b+c+d+e+f; if(R<=140&&R>=60) {printf("%d,%d,%d,%d,%d,%d\n",a,b,c,d,e,f);getch();} } }
元宝区15677231430: 关于76的右键使用问题和一点经验之谈?关于76的右键使用问题和一 ?
淫顷庆大: 内测玩到45级,现在140级,游戏时间不算短,在中段决定玩76的,目前打了240狙... 但是我了解过,看过画面对比,我知道肯定有用,也准备下半年再入一个.
元宝区15677231430: CS到底怎么玩?
淫顷庆大: 购买:B键 按弹:使用5号道具(快捷键5)然后在指定按弹位置点开火箭(鼠标左键) 拆弹:对准炸弹按E键 以上为默认键位
元宝区15677231430: 往返于A,B两个城市的客车,中途有三个停靠点C,D,E,(1)该客车有多少种不同的票价?(2)该车要准备多 - ?
淫顷庆大: 如果只从数学方面考虑的话,假定车票和票价都仅按照里程数来定,且假定任何两地之间的里程数都不相等,那么...
元宝区15677231430: 有一10m厚的饱和粘土层,饱和重度为20.0kN/m3,其下为砂土,砂土层有...?
淫顷庆大: c=27乘3加29乘3-140=28