# chapter7练习 - Open-Source-OS-Training-Camp-2022 文档

Hide navigation sidebar
Hide table of contents sidebar
Open-Source-OS-Training-Camp-2022 文档

正文

- 第零章：实验环境配置
  Toggle child pages in navigation
- 第一章：应用程序与基本执行环境
  Toggle child pages in navigation
  - 引言
  - 应用程序执行环境与平台支持
    Toggle child pages in navigation
  - 移除标准库依赖
    Toggle child pages in navigation
  - 构建用户态执行环境
    Toggle child pages in navigation
  - 构建裸机执行环境
    Toggle child pages in navigation
- 第二章：批处理系统
  Toggle child pages in navigation
  - 引言
  - 实现应用程序
    Toggle child pages in navigation
  - 实现批处理操作系统
    Toggle child pages in navigation
  - 实现特权级的切换
    Toggle child pages in navigation
- 第三章：多道程序与分时多任务
  Toggle child pages in navigation
  - 引言
  - 多道程序放置与加载
  - 任务切换
  - 管理多道程序
  - 分时多任务系统
  - chapter3练习
- 第四章：地址空间
  Toggle child pages in navigation
  - 引言
  - 实现 SV39 多级页表机制（上）
  - 实现 SV39 多级页表机制（下）
  - 内核与应用的地址空间
  - 基于地址空间的分时多任务
  - chapter4练习
- 第五章：进程及进程管理
  Toggle child pages in navigation
  - 引言
  - 与进程有关的重要系统调用
  - 进程管理的核心数据结构
  - 进程管理机制的设计实现
  - chapter5练习
- 第六章：文件系统与I/O重定向
  Toggle child pages in navigation
  - 引言
  - 文件与文件描述符
  - 文件系统接口
  - 简易文件系统 easy-fs (上)
  - 简易文件系统 easy-fs (下)
  - 在内核中使用 easy-fs
  - chapter6练习
- 第七章：进程间通信
  Toggle child pages in navigation
  - 引言
  - 管道
  - 命令行参数与标准 I/O 重定向
  - chapter7练习
- 第八章：并发
  Toggle child pages in navigation
  - 引言
  - 内核态的线程管理
  - 锁机制
  - 信号量机制
  - 条件变量机制
  - chapter8 练习

附录

- 附录 A：Rust 系统编程资料
  Toggle child pages in navigation
- 附录 B：常见工具的使用方法
  Toggle child pages in navigation
- 附录 C：深入机器模式：RustSBI
  Toggle child pages in navigation
- 附录 D：RISC-V相关信息

开发注记

- 修改和构建本项目
  Toggle child pages in navigation
- reStructuredText 基本语法
  Toggle child pages in navigation

Toggle table of contents sidebar

# chapter7练习

## 编程作业

本章无编程作业

## 问答作业

1. 举出使用 pipe 的一个实际应用的例子。

2. 如果需要在多个进程间互相通信，则需要为每一对进程建立一个管道，非常繁琐，请设计一个更易用的多进程通信机制。

## 报告要求

- 完成问答题。

- (optional) 你对本次实验设计及难度/工作量的看法，以及有哪些需要改进的地方，欢迎畅所欲言。

目录

- chapter7练习
  - 编程作业
  - 问答作业
  - 报告要求