一、实验介绍

实验目的:

  

知识储备:

  

二、相关下载

1、下载镜像文件

  这个镜像文件是vdi类型的,只能用visualbox下载

  链接:https://pan.baidu.com/s/1L7WX6ju49DYC6ZS_wNxGkQ
  提取码:y397

  说明:这个镜像文件是授课老师在Ubuntu的基础上封装了实验所需要的几乎所有东西

2、visualbox下载

  下载地址:

  http://www.virtualbox.org/wiki/Downloads

  下载步骤参考:

  https://jingyan.baidu.com/article/425e69e61f267bbe15fc1621.html

3、安装

    

  

  点击创建即可。

三、相关内容

(1)关于实验环境

  打开终端

  

  打开之后是这样的

  

 查看老师给的说明,说明文件是README.md

具体内容自己看。

(2)具体的操作

①查看、修改代码

软件understand

cd进入/moocos/ucore_lab/labcodes/lab1这个目录后

可以用understand进行查看

直接输入understand即可


understand破解:

然而这个understand是不能用的,需要购买产品或输入license

放心,在下已经为你准备好了license

忘了截图了,敬请谅解

选择Enter License Code

再选择Add Eval or SDL

然后输入19878CBBFB13

邮箱可以不用填,点击OK


②编译代码

同样是cd进入/moocos/ucore_lab/labcodes/lab1这个目录后,

输入make,

[~/moocos/ucore_lab/labcodes_answer]
moocos-> cd lab1_result
[~/moocos/ucore_lab/labcodes_answer/lab1_result]
moocos-> make
+ cc kern/init/init.c
+ cc kern/libs/readline.c
+ cc kern/libs/stdio.c
+ cc kern/debug/kdebug.c
+ cc kern/debug/kmonitor.c
+ cc kern/debug/panic.c
+ cc kern/driver/clock.c
+ cc kern/driver/console.c
+ cc kern/driver/intr.c
+ cc kern/driver/picirq.c
+ cc kern/trap/trap.c
+ cc kern/trap/trapentry.S
+ cc kern/trap/vectors.S
+ cc kern/mm/pmm.c
+ cc libs/printfmt.c
+ cc libs/string.c
+ ld bin/kernel
+ cc boot/bootasm.S
+ cc boot/bootmain.c
+ cc tools/sign.c
+ ld bin/bootblock
'obj/bootblock.out' size: 488 bytes
build 512 bytes boot sector: 'bin/bootblock' success!
10000+0 records in
10000+0 records out
5120000 bytes (5.1 MB) copied, 0.0776545 s, 65.9 MB/s
1+0 records in
1+0 records out
512 bytes (512 B) copied, 9.8909e-05 s, 5.2 MB/s
146+1 records in
146+1 records out
74923 bytes (75 kB) copied, 0.00031777 s, 236 MB/s
[~/moocos/ucore_lab/labcodes_answer/lab1_result]

输入make qemu

在硬件模拟环境中运行程序

③检查、打分

这个集成的环境中,有评价功能

输入:make grade

到了这,应该你已对操作系统实验有了一个大致的认识。

同时,有很多同学是因为做实验而接触到Linux的,这部分同学可以适当了解一些Linux的基本操作。


操作系统课进入到了实验阶段,头一次琢磨的我被整的稀里糊涂,走了不少弯路。花了不少时间尝试自己搭建实验环境,最终失败。然而尝试运用老师给的实验环境却无比顺利,希望能帮到看到我的博客的同学们。欢迎各位在评论区留言!

 

Lab_0操作系统实验准备(全)的更多相关文章

  1. 北航操作系统实验2019:Lab4-1流程梳理

    北航操作系统实验2019:Lab4-1流程梳理 前言 操作系统的实验课实在令人头秃.我们需要在两周时间内学习相关知识.读懂指导书.读懂代码.补全代码.处理玄学bug和祖传bug,以及回答令人窒息的思考 ...

  2. [操作系统实验lab3]实验报告

    [感受] 这次操作系统实验感觉还是比较难的,除了因为助教老师笔误引发的2个错误外,还有一些关键性的理解的地方感觉还没有很到位,这些天一直在不断地消化.理解Lab3里的内容,到现在感觉比Lab2里面所蕴 ...

  3. 北航操作系统实验2019:Lab4-1代码实现参考

    北航操作系统实验2019:Lab4-1代码实现参考 部分实现参考自Github前辈们的项目,经过一定程度的勘误. 如果这份代码中存在任何问题或错误,请务必不吝在评论区指出. Exercise 4.1 ...

  4. sdut oj 操作系统实验--SSTF磁盘调度算法【操作系统算法】

    操作系统实验--SSTF磁盘调度算法 Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 磁盘调度在多道程序设计的计算机系统中,各个进 ...

  5. 操作系统实验(一)-Shell编程

    操作系统实验:Shell编程 emmmmm,实验前老师发了一份实验说明,里面有教怎么配置虚拟机Ubuntu.这里就不做过多叙述,需要说明的是,kali和ubuntu都可以以shell运行这个C语言程序 ...

  6. 操作系统实验一:进程管理(含成功运行C语言源代码)

    目录 操作系统实验一:进程管理 1.实验目的 2.实验内容 3.实验准备 3.1.1进程的含义 3.1.2进程的状态 3.1.3进程状态之间的转换 3.2 进程控制块PCB 3.2.1进程控制块的作用 ...

  7. [操作系统实验lab4]实验报告

    实验概况 在开始实验之前,先对实验整体有个大概的了解,这样能让我们更好地进行实验. 我们本次实验需要补充的内容包括一整套以sys开头的系统调用函数,其中包括了进程间通信需要的一些系统调用如sys_ip ...

  8. 清华大学OS操作系统实验lab1练习知识点汇总

    lab1知识点汇总 还是有很多问题,但是我觉得我需要在查看更多资料后回来再理解,学这个也学了一周了,看了大量的资料...还是它们自己的80386手册和lab的指导手册觉得最准确,现在我就把这部分知识做 ...

  9. MIT 操作系统实验 MIT JOS lab2

    MIT JOS lab2 首先把内存分布理清楚,由/boot/main.c可知这里把kernel的img的ELF header读入到物理地址0x10000处 这里能够回想JOS lab1的一个小问.当 ...

随机推荐

  1. essential C++中的一些疑问记录

    关于书中P87下列代码中,less<int>的使用,我目前的理解是 less<int> 是一个类型,& it 是对外部参数的引用.但是为何要加上引用,另外 调用该函数时 ...

  2. c++11特性学习总结

    ubuntu 16.04 自带gcc 5.4 支持c++11 ubuntu 18.04 自带gcc 7.3 支持c++14 查看编译器支持: c++11 c++14 c++17 c++11 featu ...

  3. Java 编程语言中很少被人了解的特性-statement label

    下面的语句会编译报错或者打印什么? System.out.print("baidu site :"); https://www.baidu.com; System.out.prin ...

  4. Day003_Linux基础——系统目录结构

    Linux系统的目录结构: 圆型节点代指目录,方型节点代指文件. 图中省去了很多不常用的目录与文件. 稍后单独讲/proc目录与/var目录. /usr 目录. /usr/local 用户个人安装的软 ...

  5. Vue之render渲染函数和JSX的应用

    一.模板缺陷 模板的最大特点是扩展难度大,不易扩展.可能会造成逻辑冗余 <Level :type="1">哈哈</Level> <Level :typ ...

  6. Optional和Stream的map与flatMap

    Optional的map和flatMap Optional存在map和flatMap方法.map源码如下 public<U> Optional<U> map(Function& ...

  7. git bash 界面修改成linux界面

    在使用git bash操作git时,$符总是另起一行,给人感觉特别不爽,特别想修改成linux下一样的风格. 在git输入命令: vim ~/.bash_profile 进入insert模式,添加内容 ...

  8. IntelliJ IDEA远程连接tomcat,实现单步调试

    web项目部署到tomcat上之后,有时需要打断点单步调试,如果用的是Intellij idea,可以通过如下方法实现: 开启debug端口,启动tomcat 以tomcat7.0.75为例,打开bi ...

  9. JAVA面试问题与解答(1-15)

    Q1.内部类和子类之间有什么区别? Ans:Inner类是嵌套在另一个类中的类.内类具有嵌套它的类的访问权限,并且它可以访问外部类中定义的所有变量和方法. 子类是从另一个名为super class的类 ...

  10. 三、SpringBoot 整合mybatis 多数据源以及分库分表

    前言 说实话,这章本来不打算讲的,因为配置多数据源的网上有很多类似的教程.但是最近因为项目要用到分库分表,所以让我研究一下看怎么实现.我想着上一篇博客讲了多环境的配置,不同的环境调用不同的数据库,那接 ...