操作系统的很多核心组件都是相互关联的,比如虚拟内存管理,物理内存管理,文件系统,缓存系统,IO,设备管理等等,都要放在一起来看才能从整体上理解各个模块到底是如何交互和工作的。这个系列的目的也就是从整体上来理解计算机底层硬件和操作系统的一些重要的组件是如何工作的,从而来指导应用层的开发。这篇讲讲文件系统的重要概念,为后面的IO系统做铺垫。
文件系统主要有三类
1. 位于磁盘的文件系统,在...
分类:
其他好文 时间:
2015-01-29 14:41:48
阅读次数:
245
一.查看内存信息 可以使用free命令显示系统的物理内存和交换分区的总量,以及已使用的、空闲的、共享的、在内核缓冲内的和被缓存的内存数量。使用free命令可以显示计算机系统的内存容量。[root@redhat2 ~]# free --helpfree: invalid option -- '-'us...
分类:
系统相关 时间:
2015-01-26 22:27:14
阅读次数:
197
1,伙伴系统的作用:伙伴系统主要是为了高效使用物理内存,尽量减少内存碎片的产生2,伙伴系统的概念:系统中的内存总是两两分组,每组中的两个内存块称为伙伴3,伙伴系统的原理: 伙伴系统是相对于struct zone而言,将每个zone的空闲内存分为最多11个数组,比如第一个数组里管理着2^0页的内存,所...
分类:
系统相关 时间:
2015-01-26 21:02:30
阅读次数:
196
一,为什么需要高端内存答:对于32位机器,linux虚拟内存最大为4G,其中3-4G空间是用作内核空间,考虑到如果物理内存大于1G,那么物理内存不能得到完全的映射,因此,Linux 规定“内核直接映射空间” 最多映射 896M 物理内存,ARM体系架构上有高端内存的概念,不过不是固定在896M以上的...
分类:
系统相关 时间:
2015-01-26 20:50:33
阅读次数:
302
堆大小设置 JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在...
分类:
其他好文 时间:
2015-01-26 17:33:20
阅读次数:
165
1. 在linux下,查看一个运行中的程序, 占用了多少内存, 一般的命令有 (1). ps aux: 其中 VSZ(或VSS)列 表示,程序占用了多少虚拟内存。 RSS列 表示, 程序占用了多少物理内存。 虚拟内存可以不用考虑,它并不占用实际物理内存。 (2). top 命令也可...
分类:
系统相关 时间:
2015-01-25 22:25:08
阅读次数:
346
首先安装VirtualBox双击运行VirtualBox,点击新建,输入名称,如下图:如果你是32bit的系统在版本那里选择32bit,点击下一步,如下图:这里的内存大小抢占你的物理内存,我4G的内存选择512MB,如果你的内存够大可以划分更多,调整好内存点击下一步,如下图:点击创建,如下图:选择虚...
分类:
其他好文 时间:
2015-01-24 18:41:42
阅读次数:
380
这里的讲到的"内存"包括物理内存和虚拟内存,虚拟内存(Virtual Memory)把计算机的内存空间扩展到硬盘,物理内存(RAM)和硬盘的一部分空间(SWAP)组合在一起作为虚拟内存为计算机提供了一个连贯的虚拟内存空间,好处是我们拥有的内存 "变多了",可以运行更多、更大的程序,坏处是把部分硬.....
分类:
其他好文 时间:
2015-01-22 23:19:04
阅读次数:
249
09_01虚拟文件系统也是内核的功能。文件系统也是软件。09_03虚拟地址->每个进程都认为自己有4G内存(与物理内存同大小)。所以进程是看不到其他进程存在的。查看当前系统上交换分区创建交换分区:mkswap/dev/sda8-LLABEL-a:启用多有定义在/etc/fstab文件中的交换设备swapon/de..
分类:
其他好文 时间:
2015-01-22 07:06:39
阅读次数:
116
一、JVM内存划分方法区(持久代):存放要加载的类信息、类中静态变量、final常量、方法信息等;class对象的getname,isInterface等数据都来源于方法区。sunjdk中对应permanetgeneration堆:默认物理内存的1/64。本地方法栈:用于支持native方法的执行,存储了每个native方法调..
分类:
其他好文 时间:
2015-01-21 20:15:38
阅读次数:
191