项目简介
本项目是基于C语言的操作系统实验项目,借助多个实验模块,助力学习者深入理解操作系统里的关键概念与技术。项目覆盖线程与协程、内存管理、文件系统、网络与安全等多方面,通过实际编程操作,让学习者掌握这些核心技术。
项目的主要特性和功能
- 线程与协程
- 运用
pthread.h
开展多线程编程。 - 实现简易协程,在多线程环境下保障线程安全。
- 可通过
make && make run
命令快速运行程序。
- 运用
- 内存管理
- 实现
Buddy
内存分配算法。 - 实现
Malloc
动态存储分配器,包含Implicit free list
、Explicit free list
和Segregated free list
等数据结构。 - 学习指针调试与内存分配优化技术。
- 实现
- 文件系统
- 学习
mmap()
、fcntl()
、ioctl()
等函数的实现。 - 了解并体验 Fuse(Filesystem in Userspace),基于 libfuse 实现简单文件系统。
- 学习
- 网络与安全
- 学习用 IDA、pwn 等工具进行逆向工程。
- 学习溢出(overflow)、ROP(Return - Oriented Programming)等安全技术。
- 使用 GDB 获取程序运行的各类信息。
安装使用步骤
- 假设用户已下载本项目的源码文件。
- 进入项目根目录,使用以下命令编译并运行程序:
bash make && make run
- 根据个人兴趣和学习目标,挑选相应的实验模块进行深入学习与实践。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】