操作系统

操作系统思考 第六章 内存管理

第六章 内存管理作者:Allen B. Downey原文:Chapter 6 Memory management译者:飞龙协议:CC BY-NC-SA 4.0C提供了4种用于动态内存分配的函数:malloc,它接受表示字节单位的大小的整数,返回指向新分配的、(至少)为指定大小的内存块的指针。如果不能满足要求,它会返回特殊的值为NULL的指针。calloc,它和malloc

操作系统思考 第零章 前言

第零章 前言作者:Allen B. Downey原文:Chapter 0 Preface译者:飞龙协议:CC BY-NC-SA 4.0在许多计算机科学的课程中,操作系统都是高级话题。学生在上这门课之前,它们已经知道了如何使用C语言编程,他们也可能上过计算机体系结构(组成原理)的课程。通常这门课的目标是让学生们接触操作系统的设计与实现,并带有一些他们未来在该领域所研究的隐含

一种大型开放式软件系统的设计方法

什么是开放式软件系统本文试图提出一种模型和规则,使得采用这种模型规则的软件开发者,能够更轻松地组织起大规模软件系统的设计和开发实现。角色开放式软件系统首先是一个软件系统,也需要根据需求来设计。而需求的抽象层次有高有低,根据满足的需求层次高低来划分,开放式软件系统有三个主要角色:系统设计者:提供软件系统基础功能设计,例如,操作系统中的文件系统,IPC 机制,硬件抽象,等等的工

操作系统思考 第十一章 C语言中的信号量

第十一章 C语言中的信号量作者:Allen B. Downey原文:Chapter 11 Semaphores in C译者:飞龙协议:CC BY-NC-SA 4.0信号量是学习同步的一个好方式,但是它们实际上并没有像互斥体和条件变量一样被广泛使用。尽管如此,还是有一些同步问题可以用信号量简单解决,产生显然更加合适的解决方案。这一章展示了C语言用于处理信号量的API,以及

从炒菜到编程:升级“操作系统”

2024年的春节已经过去了,我也从山东老家回到上海的工作岗位。一、厨房炒菜引发的思考两个家的厨房环境和我进厨房做饭的意愿引起我一些思考。在上海的家中,我很享受在

互联网巨头纷纷加入鸿蒙了

多年来,极少有人能做到,在苹果iOS、谷歌安卓之外,打造另一个广泛应用的手机操作系统。四年前,华为鸿蒙操作系统以破局者的姿态诞生,但仍然设计了可以兼容安卓应用