# UNIX_V6PP **Repository Path**: SmasterCao/UNIX_V6PP ## Basic Information - **Project Name**: UNIX_V6PP - **Description**: UNIX V6++是经典的UNIX 第6版在Intel X86上的实现,它沿用了UNIX V6的思想和算法,并采用C++和面向对象的设计方法对代码进行了重构,代码结构更加清晰,更易为学生理解。UNIX V6++采用C++、AT&T汇编和X86汇编开发(使用g++编译器和nasm汇编器编译和汇编),运行在bochs虚拟机上。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 6 - **Created**: 2023-01-23 - **Last Updated**: 2023-01-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #一、UNIX V6++简介 项目来自[同济大学操作系统课程](http://in2job.tongji.edu.cn/v6++/UNIX_V6++.html)。 `UNIX V6++`是经典的UNIX 第6版在Intel X86上的实现,它沿用了`UNIX V6`的思想和算法,并采用C++和面向对象的设计方法对代码进行了重构,代码结构更加清晰,更易为学生理解。 `UNIX V6++`采用C++、AT&T汇编和X86汇编开发(使用g++编译器和nasm汇编器编译和汇编),运行在`bochs`虚拟机上。 #二、编译、运行UNIX V6++ 要编译、运行`UNIX V6++`,需要安装并下载相关支撑环境:[bochs-2.4.2](http://in2job.tongji.edu.cn/v6++/download/bochs-2.4.2.exe)、[nasm-2.07](http://in2job.tongji.edu.cn/v6++/download/nasm-2.07-installer.exe)和[Mingw-5.1.6](http://in2job.tongji.edu.cn/v6++/download/mingw.rar)。 然后下载[UNIX V6++源代码(内含配置文件等)](http://in2job.tongji.edu.cn/v6++/download/oos.rar),并根据[UNIX V6++配置使用说明](http://in2job.tongji.edu.cn/v6++/download/UNIX_V6++_config.pdf)来设置环境变量、编译和运行`UNIX V6++`。 感兴趣的读者也可以下载[UNIX V6++ 开发文档](http://in2job.tongji.edu.cn/v6++/download/docs.rar)。 #三、UNIX V6++集成实验环境 相信有读者会不满足于仅仅阅读和试用`UNIX V6++`,为了方便那些打算自行尝试修改V6++代码和算法的读者,这里我们提供一套[UNIX V6++集成实验环境](http://in2job.tongji.edu.cn/v6++/download/TJ_OOS_IDE.vsix), 使用该集成环境,读者可以通过图形化界面来编译修改后的V6++代码(我们提供了makefile)并进行源代码级的调试(bochs只提供汇编级的调试)。 该实验环境利用Microsoft Visual Studio 2010提供的用户接口进行开发,是对VS 2010的功能扩展。所以,在使用之前,需要先下载并安装VS 2010 Professional或Ultimate版,之后按照 [UNIX V6++集成实验环境使用说明](http://in2job.tongji.edu.cn/v6++/download/UNIX_V6++_usage.pdf)中的步骤进行安装,配置。 附:[UNIX V6++背后的故事](http://chenhz.tongji.asia/archives/1231) --- #四、源码说明 - 一、首先下载并安装安装`nasm-2.07`、`Bochs-2.4.2`和`Mingw-5.1.6` - 二、下载oos,并解压到D盘,UNIX V6++根目录为D:\oos,如果不放在D:\oos,运行调试器时会出错 - 三、在第一次使用编译环境前需要修改oos\tools\oosvar_mingw.bat中如下环境变量 ```conf oos_path=(一定要设为D:\oos,否则调试器运行时会出错) mingw_path= nasm_path= bochs_path= BXSHARE=%bochs_path% partcopy_path=%oos_path%\tools\partcopy look like: @set oos_path=D:\oos @set mingw_path=C:\Program Files\MinGW\bin @set nasm_path=C:\Program Files\NASM @set bochs_path=C:\Program Files\Bochs-2.4.2 @set BXSHARE=%bochs_path% @set partcopy_path=%oos_path%\tools\partcopy ``` - 四、运行oos\tools\OOS Command Prompt快捷方式 clean命令清除上次编译结果 all命令执行编译和部署 run命令在bochs虚拟机上启动操作系统