贺胖娇的编程之旅......

操作系统(哈工大李治军老师)32讲(全)- 01 概述

2021.11.28

来源:
本系列来源于操作系统(哈工大李治军老师)32讲(全)的学习笔记:
操作系统
蓝桥-操作系统练习

操作系统概述

计算机的基本组成:

用计算机这个工具来解决一些实际问题。
操作系统:计算机硬件和应用之间的一层软件,方便使用硬件:如cpu,内存,终端,磁盘,网络,电源,多cpu

操作系统课程要学些什么

课程目标

能改操作系统,四个实验:
实验一:扩展线程:实现线程调度
实验二:实现系统调用:将整个接口剥掉,添加 实验三:实现虚存管理:扩展实现内存管理
实验四:扩展文件系统:扩展实现一个文件管理

实验楼题目

http://www.shiyanlou.com/courses/115
完成其中的实验项目一:熟悉实验环境。
基本命令:

# 环境  hit-oslab 集成环境    
# 安装位置 /home/shiyanlou/    
# 编译器:GCC    
# 调试器:GDB 调试器    

# 解压到指定目录
tar -zxvf hit-oslab-linux-20110823.tar.gz \
  -C /home/shiyanlou/

# 编译内核
cd ./linux-0.11/
make

# 在bochs中运行编译好的内核
# 注意是在上层目录
# 刚刚编译是在 oslab/linux-0.11/ 文件夹下
$ cd ~/oslab/
# 执行 run 脚本
$ ./run

汇编级调试:

# 确认在 oslab 目录下
cd ~/oslab/

# 运行脚本前确定已经关闭刚刚运行的 Bochs
./dbg-asm

C语言级调试:

# 首先执行
cd ~/oslab
./dbg-c

# 再打开一个终端窗口,执行
cd ~/oslab
./rungdb

文件交换

# 启动挂载脚本
cd ~/oslab/
sudo ./mount-hdc

# 进入挂载到 Ubuntu 上的目录
cd ~/oslab/hdc
# 查看内容
ls -al

# 读写完毕后,卸载系统
cd ~/oslab/
# 卸载
sudo umount hdc

注意 1:不要在 0.11 内核运行的时候 mount 镜像文件,否则可能会损坏文件系统。同理,也不要在已经 mount 的时候运行 0.11 内核。

注意 2:在关闭 Bochs 之前,需要先在 0.11 的命令行运行 “sync”,确保所有缓存数据都存盘后,再关闭 Bochs。

发表评论