E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
深入理解计算机系统
深入理解计算机系统
----第九章虚拟内存
原文链接https://www.jianshu.com/p/e1b82b230917虚拟存储器又叫做虚拟内存,我们现在的操作系统普遍都支持了虚拟内存,这样做是因为我们同时运行着太多的程序了,就目前我电脑的状态来看,我既要打开浏览器,又要听歌,可能同时还登陆的有QQ,如果不使用虚拟内存4G的内存空间很快就会被耗尽,而一旦没有了内存空间,其他程序就无法加载了。虚拟内存的出现就是为了解决这个问题,当一个
成分sjz
·
2020-08-25 16:43
计算机原理
深入理解计算机系统
之异常控制流----fork打印问题
异常是允许操作系统提供进程的概念所需要的基本构造块,进程是计算机科学中最深刻最成功的概念之一。进程的经典定义就是一个执行中的程序的实例。系统中的每个程序都是运行在某个进行上下文中的。上下文是由程序正确运行所需的状态组成的。这个状态包括存放在存储器中的程序的代码和数据,它的栈,通用目的寄存器的内容,程序计数器,环境变量以及打开文件描述符的集合。每次用户通过向外壳输入一个可执行目标文件的名字,并运行一
五山小新新
·
2020-08-25 16:13
深入理解计算机系统
深入理解计算机系统
(第3版) 第九章 虚拟内存
1.虚拟内存为了更加有效地管理内存并且少出错,现代系统提供了一种对主存的抽象概念,叫做虚拟内存(VM)。虚拟内存是硬件异常、硬件地址翻译、主存、磁盘文件和内核软件的完美交互,它为每个进程提供了一个大的、一致的和私有的地址空间。通过一个很清晰的机制,虚拟内存提供了三个重要的能力:1)它将内存看成是一个存储在磁盘上的地址空间的高速缓存,在主存中只保存活动区域,并根据需要在磁盘和主存之间来回传送数据,通
zjd873721519
·
2020-08-25 16:12
system
深入理解计算机系统
第九章 虚拟内存
为了更加有效地管理内存并且少出错,现代系统提供了一种对主存的抽象概念,叫做虚拟内存(VM)。虚拟内存提供了三个重要的能力:(1)它将主存看成是一个存储在磁盘上的地址空间的告诉缓存,在主存中只保存活动区域,并根据需要在磁盘和主存之间来回传送数据,通过这种方式,它高效地使用了主存(2)它为每个进程提供了一致的地址空间,从而简化了内存管理(3)它保护了每个进程的地址空间不被其它进程破坏虚拟内存在工作中,
weixin_30732487
·
2020-08-25 14:33
深入理解计算机系统
(CSAPP)第三版--系列导航篇
CSAPP作为计算机领域的好书,已经推出第三版了。书中不仅有精彩纷呈的内容,还有着高质量的homework和富有挑战性的lab。用书中的原话“Ifyoustudyandlearntheconceptsinthisbook,youwillbeonyourwaytobecomingtherare"powerprogrammer”whoknowshowthingsworkandhowtofixthemw
张少锋的博客
·
2020-08-25 14:41
推荐大家一本书《
深入理解计算机系统
》
我第一次看到这本书的第一版时,好像是03年,记得当时就被震撼了,一个大学本科大二的教材可以到这个水平,而很多内容我也第一次接触,非常汗颜,后来我花了一些时间进行了仔细的学习,遗憾的是,很多要点并没有具体的实验,当时的感觉这本书已经非常接近实践性了,但遗憾的是,有些要点还是没有告诉读者如何实践,这本书第一版在scholar.google.com上可以下载的,有兴趣的读者还可以看看这一个版本。也就是从
pennyliang
·
2020-08-25 14:39
杂项
[第三章]
深入理解计算机系统
第三版 家庭作业参考答案
人非圣贤孰能无过,欢迎大家提问与纠错3.58longdecode2(longx,longy,longz){y-=z;x*=y;return((y>63)^x;}3.59∵x=2^64*xh+xl;y=2^64*yh+yl;∴x*y=2^128*xh*yh+2^64*xh*yl+2^64*yh*xl+xl*yl因为是128位,所以(x*y)mod2^128才是正解∴x*y=2^64*xh*yl+2^
CHOOOU
·
2020-08-25 14:39
CSAPP
读书笔记:《
深入理解计算机系统
》第九章 虚拟内存
第一次作业:认识页表概念。第二次作业:认识内存映射,分配和回收概念。虚拟是计算机系统中很重要的一个概念。虚拟内存是对主存的一种抽象概念,它是硬件异常,硬件地址翻译,主存,磁盘文件和内核软件的交互。虚拟内存系统将虚拟内存分割为虚拟页,分为三种类型,未分配的,已经缓存在物理内存中的已分配页,未缓存在物理内存中的已分配页。为了判断这些虚拟页的情况,就需要要加字段来判断,所以又出现了一个叫页表的数据结构来
王新港
·
2020-08-25 14:16
计算机系统
读书笔记
无符号数 有符号数 与 补码
无符号数有符号数与补码本文是
深入理解计算机系统
这本书里面关于补码有符号数无符号数章节的一个摘要和读书报告,我个人认为这本书关于这一段的表述,要比绝大多数网上的博客甚至是国内教材要深入浅出的多.同时由于markdown
bapijun
·
2020-08-25 09:24
C与C++
编程语言
深入理解计算机系统
学习(1)
源文件:0,1组成每行以一个看不见的’\n’结尾,执行一个源文件分四个阶段:预处理,编译,汇编,连接.i文件:.c文件预处理后生成.ii文件:.cpp文件预处理后生成预处理阶段:预处理器(cpp)根据以#开头的命令修改源程序,(如把一些头文件的内容,直接插入到程序文本中)编译阶段。编译器(ccl)将.i文本翻译成.s文本,他包含了一个汇编程序,汇编语言程序中没仪表语句都以一种标准的额问题本格式确切
LeeBooL
·
2020-08-24 23:17
计算机系统计算机系统
深入理解计算机系统
之整型与浮点型
在看简单地看了
深入理解计算机系统
的第二章后,有了稍微深刻但是有非常浅显的理解,然后又看了阮师兄的一篇博文,所以做了一点笔记。
zyhmz
·
2020-08-24 19:51
深入理解计算机系统
《
深入理解计算机系统
》AT&T x86汇编学习
前言:文章采用AT&T格式的汇编(也叫做ATT汇编,AT&T是运行贝尔实验室多年的公司),是GCC,OBJDUM等工具默认的汇编格式。ATT汇编与INTEL汇编的不同在于:1.Intel省略了大小指示2.源操作数在目的操作数之前。1数据格式C语言中有多重数据格式,包括char,short,int,longlongint,char*,float,doule,longdouble,不同字长的数据在AT
姥姥教我学编程
·
2020-08-24 18:59
读书笔记
小护士读书笔记系列之《
深入理解计算机系统
》第一章计算机系统漫游(一)
小护士读书笔记系列之《
深入理解计算机系统
》第一章计算机系统漫游(一)欢迎来到小护士读书笔记系列之《
深入理解计算机系统
》第一章计算机系统漫游(一)。
广州-小护士
·
2020-08-24 18:19
深入理解计算机系统
读书笔记
深入理解计算机系统
小护士
漫游
深入理解计算机系统
_第三章_程序的机器级表示
深入,并且广泛-沉默犀牛文章目录文章导读历史观点程序编码机器级代码代码示例关于格式的注解数据格式访问信息操作数指示符数据传送指令数据传送示例压入和弹出栈数据算术和逻辑操作加载有效地址一元和二元操作移位操作讨论特殊的算术操作控制条形码访问条件码跳转指令跳转指令的编码用条件控制来实现条件分支用条件传送来实现条件分支循环switch语句过程运行时栈转移控制数据传送栈上的局部存储寄存器中的局部存储空间递归
真的姜立明
·
2020-08-24 15:13
计算机系统
用c++开发一个简版http服务器
初衷在阅读了TLPI和
深入理解计算机系统
之后,学会了如何使用linux系统api,想在写代码的过程中来加深自己对知识的理解,更想用这些知识来去做一个更酷的东西,而不仅仅是教课书上的简单服务器。
Lmagic16
·
2020-08-24 14:50
后端
c++
linux
webserver
计算机科学与技术书单整理与推荐
人文与创业:《腾讯传》《创新者》《浪潮之巅》《人月神话》《黑客与画家》《硅谷钢铁侠》《史蒂夫·乔布斯传》《网络是怎样连接的》《程序是怎样跑起来的》《你想活出怎样的人生》《
深入理解计算机系统
》《计算机是怎样跑起来的
誓约胜利之舰
·
2020-08-24 12:46
天刃-腾蛟起凤
【
深入理解计算机系统
】程序是如何运行的
程序是如何运行的现代计算机存储和处理的信息以二值信号表示,程序对于计算机而言就是一串二进制数据流,以流水线的方式进入CPU进行运算。主要在;CPU与内存之间进行数据传递。本文将从程序源码的结构与表现形式开始,到编译生成可执行文件,再到执行文件的加载,最终到执行文件的运行整个过程进行梳理。1程序的结构与表现形式大多数计算使用8位的块,即字节(byte),作为最小的可寻址的内存单元。程序对象,即程序数
Evan_Gu
·
2020-08-24 08:31
软件系统架构与开发环境
深入理解计算机系统
---读书笔记1
文件就是字节序列,仅此而已。系统中的所有输入都是通过使用一小组称为UnixI/O的系统函数调用读写文件来实现的。Amdaha定律(Amdahl'slaw)该定律的主要思想是,当我们对系统的某个部分加速时,其对系统性能的影响取决于该部分的重要性和加速程度。虽然我们对系统的一个主要部分做出了重大改进,但是获得的系统加速比却明显小于这部分的加速比。这就是Amdahl定律的主要观点-----要想显著加速整
宁静以致墨
·
2020-08-24 05:39
自己的小笔记
2020-08-18
深入理解计算机系统
---读书笔记0
#includeintmain(){printf("hello,world\n");return0;}\n换行符"hello,world/n"开始时在磁盘上,然后被复制到主存,最后从主存上复制到显示设备。从程序员的角度来看,这些复制就是开销,减慢了程序“真正”的工作。因此,系统设计者的一个主要目标就是使这些复制操作尽可能快地完成。意识到高速缓存存储器存在的应用程序员能够利用高速缓存将程序的性能提高
宁静以致墨
·
2020-08-24 05:39
自己的小笔记
谈谈我对计算机体系结构的理解
首先推荐几本经典的书籍,《计算机体系结构量化研究方法》《
深入理解计算机系统
》这两本尤其是后者非常经典。如果要对体系结构的细节研究方面感兴趣,得看看论文,ACM,IEEE上的论文都是很不错的。
zemking
·
2020-08-23 08:01
计算机体系结构
别人推荐的书
Code:TheHiddenLanguageofComputerHardwareandSoftware(《编码的奥秘》)ComputerSystem:AProgrammer’sApproach(《
深入理解计算机系统
九木旭
·
2020-08-22 23:17
其它
深入理解计算机系统
arch lab
Archlab一:实验梗概在这个lab中,分为PartA,PartB,PartC。在PartA中,你要编写Y86-64程序.在PartB中,你要给SEQ处理器添加iaddq指令。在PartC,你要优化你的程序。filecontainsmiscYAS和YISseqSEQ处理器pipePIPE处理器y86_code书上的y86代码ptest测试脚本MakefileMakefileREADMEREADM
peanwang
·
2020-08-22 23:42
csapp
深入理解计算机系统
cp1:存储单位与编码
原文:
深入理解计算机系统
cp1:存储单位与编码作者:ChorFundebug经授权转载,版权归原作者所有。1.存储单位位:即bit,表示二进制位,要么是0,要么是1。它是计算机内部数据存储的最小单位。
Fundebug
·
2020-08-22 12:44
存储技术
计算机原理
fundebug
深入理解计算机系统
:定点数的表示和运算
最近学习计算机组成原理时,结合视频和个人理解做的一些笔记。可能文中有错误或者描述不恰当的地方,欢迎评论区指出。1.定点数的表示1.1无符号数定义:无符号数就是没有体现正负号的数(这意味着所有的无符号数实际上都是正数),整个机器字长的全部二进制位均为数值位,没有符号位。以108D为例,它对应的二进制数是1101100,这实际上也就是它的无符号数,可以看到所有的位都是数值位。表示范围:以八位二进制数为
Chor
·
2020-08-22 12:43
补码
计算机原理
计算机组成
深入理解计算机系统
第九章 虚拟存储器
虚拟存储器定义:对主存的抽象机制,是硬件异常、硬件地址翻译、主存、磁盘文件和内核软件的完美交互。功能:1.将主存看成是一个存储在磁盘上的地址空间的高速缓存,在内存中只保存活动区域,并根据需要在磁盘和内存之间来回传送数据。2.为进程提供了一致的地址空间,从而简化了存储器管理。3.保护了每个进程的地址空间不被其他进程所破坏。9.1物理和虚拟地址CPU通过生成一个虚拟地址(Virtualaddress,
shiyang6017
·
2020-08-22 10:47
体系结构
c语言判断两数相加是否溢出
深入理解计算机系统
第二章涉及到的溢出问题,两数相加判断是否溢出。
lvmengmengzp
·
2020-08-22 04:17
计算机编程c++基础知识
IT面试
C语言整形数据范围_64与32
摘自
深入理解计算机系统
(原书第三版3),其中只有long在不同系统下的范围不同,其余都一样,着重注意int32_t与int64_t不受系统变化。C语言允许取得的最小值范围
wangxiaobei2017
·
2020-08-22 03:39
C++学习
《
深入理解计算机系统
》汇编指令大全&代码结构
指令后缀指令后缀//浮点数与整型的l不会产生歧义,因为指令使用的完全不一样。寄存器寄存器数据传送数据传送取址取址数据扩展数据扩展栈操作栈操作运算运算//算数右移:补符号位。逻辑右移动:补0控制条件码:CF:进位标志位,可用来检测无符号操作的溢出ZF:零标志,最近操作所得为0.SF:符号标志,最近操作所得为负数OF:溢出标志,最近操作导致补码溢出(正溢出/负溢出)比较比较//注意cmp指令顺序:%r
George__Chen
·
2020-08-22 02:59
深入理解C语言中的移位运算
说明:本文主要摘录自《
深入理解计算机系统
》第二章信息的表示与处理。移位运算:C语言还提供了一组移位运算,以便向左或者向右移动位模式。
ThanksCreek
·
2020-08-22 00:08
C/C++
存储器层次结构(《
深入理解计算机系统
》)
阅读《
深入理解计算机系统
》的第6章,也还是有一些收获的。
messiran10
·
2020-08-21 20:32
计算机体系结构
7.、Reverse Integer(整数取反)
在编写代码的时候,因为忘记了移位符号和运算符的优先级顺序,卡了一下,刚好当天晚上在看《
深入理解计算机系统
》时候,看到
chandepire
·
2020-08-21 13:36
leetcode刷题记录
后台开发程序员必读书籍
effectivestl必读C++标准程序库insidetheC++ObjectModelSTL源码剖析C++程序设计语言操作系统/网络Unix环境高级编程必读Unix网络编程(卷一)必读Tcp/IP详解(卷一)必读
深入理解计算机系统
深入理解
MagickCoding
·
2020-08-21 07:57
系统级I/O健壮性读程序
取自
深入理解计算机系统
第十一章#include#include#include#include#include#include#include#include#include/*riowithinternalbuf
haida_liudan
·
2020-08-20 23:50
C/C++
深入理解浮点数
最近在看《
深入理解计算机系统
》,于是就想把与浮点数相关的东西整理出来,方便以后翻阅。
djjowfy
·
2020-08-20 23:54
编程技巧
工作工具与网站推荐
Linux私房菜2Linux就该这么学Linux命令大全(手册)正在学习Linux系统结构详解mvc教程Linux笔记Linux工具快速教程Linux良许Linux书籍推荐操作系统鸟哥的Linux私房菜
深入理解计算机系统
长安某
·
2020-08-20 22:55
工作
工具
工作工具与网站推荐
Linux私房菜2Linux就该这么学Linux命令大全(手册)正在学习Linux系统结构详解mvc教程Linux笔记Linux工具快速教程Linux良许Linux书籍推荐操作系统鸟哥的Linux私房菜
深入理解计算机系统
长安某
·
2020-08-20 22:55
工作
工具
《
深入理解计算机系统
》Part1 02:信息的表示和处理
摘要:本章首先介绍了信息在计算机中的表示方法,其次主要介绍了整数和浮点数在计算机中的二进制表示方法及其运算。关键词:大端和小端;无符号数编码;有符号数编码;浮点数目录: 1信息的表示 2无符号整数 2.1无符号整数编码 2.2无符号整数的运算 3有符号数 3.1有符号数编码 3.2有符号数运算 4浮点数 4.1浮点数表示方法 4.2浮点数运算1信息的表示
fengjb
·
2020-08-20 17:30
QTextStream格式化文本:位级表示 / 字节表示 / 内存地址
【写在前面】最近在看《
深入理解计算机系统
第二版》简称CSAPP,这本书我是极力推荐的,深度和广度都有(而且讲解得非常仔细)。
梦起丶
·
2020-08-20 13:59
Qt
杂谈
深入理解计算机系统
-第二章-信息的表示和处理-2.6
前面两篇博客我们详细讲解了计算机中整数的表示,包括有符号和无符号(补码编码)的详细介绍。那么这篇博客我们将对它们的运算有个详细的了解。在讲解之前首先看下面的一个程序,看看输出结果是啥?#includeintmain(){inti=2147483647;printf("%d\n",i+1);printf("%d\n",i+i);return0;}结果是:我们预期的:i+1=2147483647+1=
草丛蔡一零
·
2020-08-20 08:09
深入理解计算机系统
深入理解计算机系统
(1.3)---金字塔形的存储设备、操作系统的抽象概念
上一章LZ给各位展示了一下hello程序的简单执行过程,可以看出在这一过程当中,系统在数据的传输上花费了大量的时间。硬件开发商为了减少这种数据传输的时间成本,采用一种高速缓存的技术去减少这种时间成本。高速缓存被置放于处理器当中,与处理器中的寄存器文件直接进行数据交换,这样大大减少了数据传输的时间成本,使得程序的运行速度可以得到数倍的提升。而作为一个程序猿,如果可以适当的利用高速缓存去存放一些程序运
weixin_33795743
·
2020-08-20 08:17
深入浅出计算机组成原理
计算机组成原理入门书籍《计算机是怎样跑起来的》《程序是怎样跑起来的》深入书籍《计算机组成与设计:硬件/软件接口》和《
深入理解计算机系统
》操作系统大神塔能鲍姆(AndrewS.Tanenbaum)的《计算机组成
花开蝶自来-liu
·
2020-08-20 07:10
“免费读经典”:《
深入理解计算机系统
(原书第2版)》
活动时间:即日起~11月19日活动形式:1.此次活动免费提供本书第1、2章内容(其中第2章为新增章节),请在http://topic.csdn.net/u/20101025/20/0aaa92e6-7297-43f1-aa27-c50e80ec4e27.html?34268以跟帖的形式,对这两章的内容进行客观、中肯的评论。2.活动结束后我们会评选出五篇内容丰富、感想真实的会员评论,并由华章公司分别
hzbooks
·
2020-08-20 06:02
(1-1)新书快讯
深入理解计算机系统
-之-内存寻址(四)--linux中分段机制的实现方式
linux中的分段机制前面说了那么多关于分段机制的实现,其实,Linux以非常有限的方式使用分段。因为,Linux基本不使用分段的机制(注:并不是不使用,使用分段方式还是必须的,会简化程序的编写和运行方式),或者说,Linux中的分段机制只是为了兼容IA32的硬件而设计的。实际上,分段和分页在某种程度上显得有些多余,因为它们都可以划分进程的物理地址空间,分段可以给每一个进程分配不同的线性地址,而分
JeanCheng
·
2020-08-20 06:55
┈┈【操作系统的设计与实现】
♥LinuxKernel
♥
Linux用户态程序计时方式详解
本文将不考虑这些影响因素(相关资料可参考《
深入理解计算机系统
》一书),而仅仅关注Linux系统中用户态程序执行时间的计算方式。除本文所述计时方式外,还可借助外部工具统计耗时,如《Linux
weixin_34040079
·
2020-08-20 02:11
《
深入理解计算机系统
》笔记 (1) 信息的位与表示
基础知识位:位(bit)是电子计算机中最小的数据单位。每一位的状态只能是0或1。字节:1个字节(byte)由8个二进制位构成,是存储空间的基本计量单位,即最小的可寻址的存储器单位,。1个字节可以储存1个英文字母或者半个汉字,换句话说,1个汉字占据2个字节的存储空间。虚拟存储器:也称为内存(memory),可视为一个非常大的字节数组,每个字节都由一个唯一的数字来标识,称为地址(address)。字:
坤斤拷
·
2020-08-19 23:24
计算机系统
《
深入理解计算机系统
》读书笔记(四)处理器体系结构
前言继续阅读《
深入理解计算机系统
》这本经典书籍本节是第四章处理器体系结构1、Y86-64指令集体系结构指令集体系结构(ISA):一个处理器支持的指令和指令的字节级编码各种状态单元指令集和它们的编码一组变成规范和异常事件处理程序员可见的状态
思源湖的鱼
·
2020-08-18 23:37
system
操作系统
CPU
处理器
指令集
《
深入理解计算机系统
》读书笔记(五)优化程序性能
前言继续阅读《
深入理解计算机系统
》这本经典书籍本节是第五章优化程序性能1、优化编译器的能力和局限性大多数编译器提供一些对优化的控制最简单的是指定优化级别,如-Og调用GCC优化必须是安全的,即优化后的程序行为不变妨碍优化的因素内存别名使用函数调用内存别名使用
思源湖的鱼
·
2020-08-18 23:37
system
计算机经典图书样章免费下载【持续更新中……】
大学生必读图书
深入理解计算机系统
(原书第2版)http://dl.dbank.com/c0jjgz3x7i
深入理解计算机系统
(英文版·第2版)暂无C++程序设计语言(特别版)十周年中文纪念版http:/
hzbooks
·
2020-08-18 20:26
(2-4)计算机科学丛书
数据结构
语言
linux内核
项目管理
算法
软件测试
深入java虚拟机
如果你尚未阅读深入java虚拟机,推荐你先阅读
深入理解计算机系统
。如果你已经阅读过
深入理解计算机系统
,推荐你阅读深入java虚拟机。如果这两本书你都阅读过或者都在阅读,我就不知道说什么好了。
bamboolsu
·
2020-08-18 20:28
CS:APP3e
深入理解计算机系统
_3e ShellLab(tsh)实验
详细的题目要求和资源可以到http://csapp.cs.cmu.edu/3e/labs.html或者http://www.cs.cmu.edu/~./213/schedule.html获取。前期准备Signal(IPC)signal(2)-Linuxmanualpage-man7.orgfork(2)-Linuxmanualpage-man7.orgwait(2)-Linuxmanualpage
a_18067
·
2020-08-18 19:17
上一页
5
6
7
8
9
10
11
12
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他