操作系统
文章平均质量分 64
StreakyPorker
这个作者很懒,什么都没留下…
展开
-
LKD 文件系统部分
内存操作系统原理的frame就是下图定义的linux物理页page被分为zones:使用alloc_page()或alloc_pages()获取页(struct page*) ,而用void* page_address(struct page* page)返回页的逻辑地址kmalloc/kfree:内核用于申请和释放内存的方法,返回的是连续的逻辑内存vmalloc:类似,但不是连续的buddy system allocator:管理物理连续的大块内存的机制,以frame为单位课件:从原创 2021-01-13 14:03:03 · 424 阅读 · 0 评论 -
(13)IO系统
I/O Hardware通用概念:portbuscontroller(连接bus和host CPU)IO设备具有地址,可用于特殊IO指令Memory-mapped I/OIO Port Registers四种概念寄存器:Data-in: read by the host to get input,CPU从IO设备中读数据Data-out: written by the host to send output,CPU向设备中写数据Status: device status r原创 2021-01-12 16:22:34 · 126 阅读 · 1 评论 -
(12)大容量存储系统(Mass-Storage Systems)
Disk Structure结构与术语:数个platter中的同一半径长的一圈构成了一个cylinder(圆柱面)每个sector存储了固定数量的数据(但是长度不同)磁盘驱动将磁盘映射为1维数组,是logical block最里面的第一个sector是第0号扇区,存储关键信息Disk AttachmentNetwork-attached storage (NAS) is storage made available over a network rather than over a loc原创 2021-01-05 18:58:47 · 697 阅读 · 0 评论 -
操作系统笔记(9):Virtual Memory
重点demand paging:请求式分页页替换算法allocation of page framesThrashing背景虚存用户使用的逻辑内存和物理内存之间的媒介,它的一部分在内存,一部分在交换区可以使得逻辑地址大于实际地址可以使多个进程共享地址空间通过共享进程地址空间,可以使得进程创建更高效(COW,懒加载)虚地址空间典型的虚地址空间往往中间的hole的比例是非常大的,所以将虚地址到实际地址做映射是有意义的。hole往往可以映射到磁盘交换区对应的虚存。另外,两个进程原创 2020-12-01 17:27:48 · 135 阅读 · 0 评论 -
操作系统(8):内存管理
文章目录背景交换(swapping)连续相邻内存的分配(Contiguous Memory Allocation)背景CPU只能,访问到寄存器和内存CPU存在L1,L2,L3的cache,L4实际上指的是主存交换(swapping)连续相邻内存的分配(Contiguous Memory Allocation)...原创 2020-11-12 17:25:20 · 394 阅读 · 0 评论 -
操作系统笔记(7)死锁
1. The Deadlock Problem2. System Model资源类型(resource type):R1,R2,...,RmR_1,R_2,...,R_mR1,R2,...,Rm例如CPU cycle,内存空间,IO设备认为每个资源类型Ri拥有Wi数量的实例,这些实例被process利用每个进程使用一系列的protocol利用这些资源类型的实例:requestuserelease3. Deadlock Characterization如果以下情况同时发生,死锁就原创 2020-10-29 15:35:11 · 665 阅读 · 1 评论 -
操作系统笔记(6) 进程同步(Process Synchronization)
1. Background对共享数据的并发访问会导致数据不一致性(数据的处理结果与人规定的既定规则下的结果不同)原创 2020-10-20 19:22:36 · 711 阅读 · 0 评论 -
操作系统学习笔记(5) CPU Scheduling
1. Basic Concepts为了提高CPU的利用率从直方图中可以看到,大部分的kernel 中的CPU-burst很短(不到8ms),且大部分时间都没有CPU burst。所以可以在代价不大的情况下对CPU进行调度CPU Scheduler此处提及的必然是short-term scheduler**执行目的:**从ready queue中取进程,并为它们中的一个分配CPU在进程处于以下场景时,CPU scheduling可以进行决策:Switches from running to原创 2020-10-10 15:36:01 · 444 阅读 · 0 评论 -
操作系统学习笔记(4) 线程(Threads)
1. Overview把“将工作分成小份的工作”交给操作系统,从而提高响应能力user threadskernel中没有多线程,而user-threads通过library实现三个primary线程库:POSIX PthreadsWin32 threadsJava threadsKernel Threads内核层次提供多线程的支持(主流的操作系统都已经提供)。...原创 2020-09-29 17:24:53 · 631 阅读 · 0 评论 -
操作系统笔记(3)进程
Process Concept操作系统需要多种多样的程序,并且计算机并不能同时运行所有的程序,所以需要分别的进程运行分别的程序。一个进程包括以下内容:文本字段(text section),即代码段program counter栈内内存(程序生成的内存,如函数参数,本地变量,返回值等等)数据段(data section),即全局变量等堆内内存(动态申请的内存)...原创 2020-09-24 15:38:58 · 141 阅读 · 0 评论 -
操作系统笔记(2):OS Structure
OS services有助于用户的功能UI/GUI程序执行功能IO操作文件系统的控制进程的沟通:两种方式:共享内存或信息传递错误检测优化系统操作的功能资源分配日志系统:记录系统资源的使用情况安全相关:确保所有对系统资源的使用都被操作系统控制System Calls...原创 2020-09-22 17:01:34 · 159 阅读 · 0 评论 -
操作系统笔记(1)
hhhhhhh原创 2020-09-17 15:14:47 · 233 阅读 · 0 评论