ostep专题

OSTEP Projects:KV

本文将介绍操作系统导论(Operating Systems: Three Easy Pieces)作者所开源的操作系统相关课程项目 的 KV 部分,包含个人的代码实现和设计思路。 思路 题目要求实现一个最简单的数据库,以支持数据的持久化。 每个操作由格式为 op,[arg1],[arg2] 的命令给出,那么首先要解决的问题就是参数的分离,再根据操作符 op 来对不同的操作进行特殊处理。字符串划

【OSTEP】并发:线程与多线程

" A flow of control within a process that consists of a PC, a register set and a stack space"  本章将介绍为单个运行进程提供的新抽象 —— 线程 (thread)  线程是  调度的一个基本单位(basic unit of CPU scheduling)一个单独的线程至少有自己的寄存器状态,通常还

《OSTEP》条件变量(chap30)

〇、前言 本文是对《OSTEP》第三十章的实践与总结。 一、条件变量 #include <pthread.h>#include <stdio.h>#include <assert.h>int buffer;int count = 0; // 资源为空// 生产,在 buffer 中放入一个值void put(int value) {assert(count == 0);count =