百度集成结果,所有步骤均来自网络。

1、安装VMware虚拟机

在网上下载VMware,按照步骤安装,最好不要安装在C盘(防止C盘爆满)

2、在虚拟机安装ubuntu

(1)下载ubuntu镜像文件,去官网下desktop版本,不要解压就以iso文件存在着。

 (2)把Vmware转成中文,方便操作。

https://jingyan.baidu.com/article/b907e627cd7dcf07e6891c18.html

按照以上链接操作VMware就变成中文的了

(3)创建虚拟机并安装ubuntu

VMware下安装Ubuntu系统图文详细教程_MasterHu88的博客-CSDN博客_vmware安装ubuntu

3、在ubuntu安装pintos

PintOS安装教程_yiyiqwq的博客-CSDN博客_pintos安装

参考这篇

4、在ubuntu安装Vmware-tools,可以在本地和虚拟机复制粘贴文件。

VMware Tools安装教程_东路的尽头的博客-CSDN博客_vmware tools

如果新一次开机之后VMware-tools无法复制粘贴,可以参照这一篇

vmware 在安装 vmwaretools 后仍然不能复制粘贴的解决方案(之一)_Aquia的博客-CSDN博客_vmtools 无法复制

如果安装vmware-tools时出现很多行,比如下图所示。只需要执行[]里的语句就行,比如/usr/bin,遇到yes/no时输入yes。

5、修改pintos代码。(主要任务)

根据任务书,在群文件 “2020级《操作系统课程设计》初稿”以及官方任务书"pintos.pdf" 目录如下图,里面详细说明了任务以及pintos原始代码的作用。其他代码说明在pintos代码里有详细注释,参考资料里也有解析。

修改pintos-anons/src中的代码,我只完成了threads的这个任务,目的其实是要通过27个测试点,注意:pintos系统的测试点和平台不一样,可能会出现pintos系统中通过,平台上没通过的情况。如果本地全部通过了,可以在平台上多提交几次。

可供参考资料:

Pintos-斯坦福大学操作系统Project详解-Project1_denghuang8508的博客-CSDN博客

操作系统课程设计之Pintos_biyezuopinvip的博客-CSDN博客_pintos

CS自学指南

https://blog.csdn.net/altair_alpha/category_12006373.html

Welcome to Pintos - PintosBook

threads测试方式:

进入src/threads,执行make clean(每次修改新的代码后都需要),执行make (相当于编译,这个时候会有一些报错信息,如果有错误可以根据报错信息修改,如果运行成功则说明编译成功),执行make check(这里时间会比较长,需要等待,pintos默认程序是20/27 failed,你的目标是变成all 27 tests pass)

6、提交-Git安装配置

公司发给你一个gitLab账号怎么配置项目!_css3html5csdn的博客-CSDN博客_公司的gitlab账号

参照这一篇。做到第四步,这里点开Git BASH Here的位置得记住,因为clone这个命令是把文件从gitlab上下载下来,你要做的是把你的代码放在下载下来的eoa文件夹里面,目录结构像后面图片那样。

其中第四步克隆线上代码,我们需要在这之前登录两个网站。

第一个:Sign in · GitLab 这是gitlab注册登录界面,在这里注册好你的gitlab账户,

登录进去之后应该是这样,这个文件夹就是我们要提交的目录。 

第二个:Autograder for [操作系统课程设计] 点开之后用之前注册好的账号登陆,然后绑定学号,这是评测网站,之后会进入这一个界面。分别对应的是我们的任务。

 进入gitlab网站,点击eoa目录,这是我们最后要上传的,右边Clone点开会有两个链接一个是git的一个是http的这个就是我们上传和下载的网址。步骤四的网址就是这个。后面就按照上面的链接来就好了。

 7、Git提交

点开你之前git clone的文件夹,你会发现eoa这个文件,然后进入eoa文件,执行GIT BASH here

 将你写好的代码的文件放入eoa这个文件,文件名需要是pintos

文件结构是pintos/src什么什么的反正这个要一样。

再执行下面语句

git add .                         			// 将项目交给git管理
git commit -m"提交xxx代码"       			// 提交代码到本地git仓库, -m"提交时备注信息"
git push origin master(要提交的分支名称,这里是pintos)       	// 将代码 推到远程仓库

成功的话是下面这样

 

8、提交成功,查看评测

这个时候回到你的gitlab,看eoa文件夹下是不是长这样,并且pintos目录点进去是有东西的不为空,那么说明提交成功 

回到评测网站,会出现下图这样,这个是结果需要一段时间。如果觉得自己代码没问题,但是没有27/27的可以多试几次,可能会有不同结果,网站选择最高为成绩。

 点到左边的builds-buildname点开,可以看到详细结果

 

如果详细测试页出现提示failed to complete可以根据提示进行查错。

1、有二进制文件,这个一般是因为你在虚拟机运行了build,只要删除文件夹里的文件就可以了。

2、找不到文件,遇到这种情况先检查pintos文件夹是否成功上传,以及是否以文件夹的形式上传。检查方式:点击gitlab上的pintos,是否能点进去(正常文件夹的样子)其次,检查上传的pintos文件夹里面是否有这两个文件即pintos文件是否全部成功上传。

如果有其他错误,或者关于其他git的操作,请自行百度。

希望大家能顺利完成课程设计。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐