深入理解计算机操作系统
文章平均质量分 75
w916124527
这个作者很懒,什么都没留下…
展开
-
编写“高性能”的程序
从事server端开发的同学都知道,提升程序性能是永恒的话题,那么如何让程序性能更高呢?主要分这些几点。更多知识请关注: 第一,从架构来讲,从单线程处理变为多线程并发,从“共享核”变为独占核,单线程独占cpu中一个核,程序性能当然高,要想让独占核真正发挥高性能,一定不能让程序跑到“内核态”,一定要保持在“用户态”,举个例子,你编写的线程程序的代码中调用大量的printf,就会使程序进入内核态,此时程序的性能就会很低下。如果必须调用特权指令进入到内核态,比如IO操作,置时钟,允许/禁止终端,..原创 2021-06-29 07:50:39 · 271 阅读 · 0 评论 -
Linux中的内存讲解
在编码时,我们无时无刻不在关注内存,那么linux内存是如何规划的,本篇主要浅析内存相关。详细的可以在公众号获取:我们的程序运行在计算机上的过程是这样的:首先运行程序时,在系统中创建一个进程实例,指令从硬盘调到内存,程序运行过程中,又会在内存的不同区域生成数据。内存的结构如下图(懒得重复造轮子,盗的网上的图): 图1 内存逻辑示例上图中虚拟内存对程序员来讲就是一个一维的数组,地址是从上往下递减的。上图中stack(就是我们常说的栈)的地址是向下...原创 2021-06-29 07:48:16 · 286 阅读 · 0 评论 -
操作系统内存学习笔记1
最近学习《深入理解计算机操作系统》这本书,留下点东西,一边做点笔记,一边与大家分享。1.内存 我们所说的内存是虚拟内存,所有进程看到的内存地址都是一样的。 内存中大概什么位置存放什么内存,这个不提了,关于操作系统的书里基本都有。 这里主要讲一下一个变量在虚拟内存中是如何存储的。 内存地址: 内存可以理解为一个从上到下的一维数组,...原创 2018-12-09 23:24:15 · 372 阅读 · 0 评论