![](https://img-blog.csdnimg.cn/20190918140129601.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
《深入了解计算机系统》
文章平均质量分 89
对该书的学习笔记
魔术考德
这个作者很懒,什么都没留下…
展开
-
深入了解计算机系统——利用循环展开对程序的优化
理论上,随着循环展开数量的不断增加,操作的时延应该会不断逼近Issue. 而如果有两个处理单元的话,那么1个lock里就能执行两个操作,这使得时延变为0.5!比方说,一个整数乘法需要3个时钟周期,但如果用pipeline执行,每一个clock都能“发射”一条微指令,这样每一个clock都能执行一条指令.在本例中优化幅度很小.但是由于length()的时间复杂度是O(n), 当v的长度很大的时候, 循环执行n次, 时间复杂度为O(n^2), 增长速度远远大于O(n)现代的处理器都有多个处理单元。原创 2024-04-24 21:04:21 · 799 阅读 · 0 评论 -
操作系统详解(5.2)——信号(Signal)的题目进阶
Q3中的问题:由于fork()以后子进程最后一定会直接exit返回,所以跳出while循环的父进程最少拥有两个子进程。以child为例,如果不屏蔽信号,那么很可能会使进程接收到信号后使child+1=1, 那么当fork以后,的时候就会执行handler, 并且回收所有子进程,这样就会使child >=2,不会执行pause().:由上图标红的n=4, n=3, n=2可以知道,sum分别是3, 2, 1.上面的流程图虽然表明了n的取值,但是不能反映出父进程与子进程之间的关系。原创 2024-01-15 21:30:23 · 1048 阅读 · 0 评论 -
操作系统详解(5)——信号(Signal)
与Exception(异常处理)相比,signal是软件层面的,更高级的处理机制。signal能使当前的进程和kernel打断其它的进程。Signals 提供了机制,能把exceptions的出现暴露给用户进程本文介绍了signal的基本原理与实现机制, 并给予了signal发送,接收,处理的使用用例. 但信号的知识点非常复杂, 接下来的文章将辅以实际的案例, 通过题目以及手搓一个简单的shell来加深对signal的理解.原创 2024-01-14 00:07:09 · 1389 阅读 · 0 评论 -
关于指针的辨析——指针,数组,数组指针,指针数组,函数指针,返回指针的函数
当遇见一个无比复杂的定义时,只要看括号最里面是什么即可,更准确地说,是看*这就又涉及到操作符的运算顺序了,数组名可以看作是指针常量。原创 2023-12-11 10:31:07 · 396 阅读 · 1 评论 -
操作系统详解(4)——进程控制(fork, waitpid, sleep, execve)
介绍了进程控制的相关函数, 包括fork, waitpid, sleep, execve, 其中fork与wait是极其重要且难懂的.下一章将讲解信号机制以及实现.原创 2023-12-10 15:40:57 · 1404 阅读 · 1 评论 -
操作系统详解(3)——进程、并发和并行
进程是计算机科学中 最深刻、最成功的概念之一。进程的经典定义就是一个执行中程序的实例。系统中的每个程序都运行在某个进程的上下文(context)中。介绍了进程的概念以及并发的内涵,并区分了并发与并行的区别。下一章将讲解进程的控制,包括子进程的创建(fork), 子进程回收(waitpid), 加载并运行程序(execve)原创 2023-12-07 20:23:03 · 1244 阅读 · 1 评论 -
操作系统详解(2)——异常处理(Exception)
介绍了操作系统的异常处理机制,并区分了异常的种类以及它们相应不同的处理方式。下一章将讲解进程的具体内容,包括并发的概念以及如何用Fork创建子进程。原创 2023-12-06 23:37:53 · 1309 阅读 · 1 评论 -
操作系统详解(1)——操作系统的作用
操作系统是管理电脑硬件的程序,为应用程序提供基础,是用户与硬件间的桥梁。它保护硬件不被应用程序误用。应用程序通过简单且统一的方法操作硬件分工:applications 不能直接访问I/O设施通过操作系统提供的services(比如syscall)简要介绍了什么是操作系统。下一章会说明操作系统的异常处理机制。数据在内存中的对齐问题计算机编译程序的原理函数调用的汇编原理汇编语句详解(持续更新)关于位运算必须记住的事C语言中的类型转换。原创 2023-12-05 13:06:07 · 506 阅读 · 0 评论 -
C语言中的类型转换
介绍了数据在内存中的存储以及类型转换的规则原创 2023-11-20 14:39:17 · 171 阅读 · 1 评论 -
数据在内存中的对齐问题
数据类型在内存中的对对齐要求原创 2023-11-17 12:57:52 · 35 阅读 · 0 评论 -
计算机编译程序的原理
本文介绍了我们写的c语言等程序是如何得以被计算机执行的,包括了对程序运行时内存分配的介绍原创 2023-11-17 10:14:13 · 356 阅读 · 0 评论 -
函数调用的汇编原理
本文介绍了函数调用是怎么在机器上实现的,并给出了相应的汇编代码.原创 2023-11-16 22:27:58 · 858 阅读 · 1 评论 -
汇编语句详解(持续更新)
常用的汇编语句原创 2023-11-13 23:53:44 · 232 阅读 · 0 评论 -
一道题读懂汇编语言
一道汇编的填空题,包含了汇编主要的知识点原创 2023-11-10 14:42:19 · 324 阅读 · 0 评论 -
关于位运算必须记住的事
关于位运算的一些useful Tips原创 2023-11-07 23:24:16 · 50 阅读 · 0 评论