Linux进程内存如何管理?

Linux进程内存如何管理?,第1张

Linux系统提供了复杂的存储管理系统,使得进程所能访问的内存达到4GB。在Linux系统中,进程的4GB内存空间被分为两个部分——用户空间与内核空间。用户空间的地址一般分布为0~3GB(即PAGE_OFFSET,在Ox86中它等于OxC0000000),这样,剩下的3~4GB为内核空间,用户进程通常只能访问用户空间的虚拟地址,不能访问内核空间的虚拟地址。用户进程只有通过系统调用(代表用户进程在内核态执行)等方式才可以访问到内核空间。每个进程的用户空间都是完全独立、互不相干的,用户进程各自有不同的页表。而内核空间是由内核负责映射,它并不会跟着进程改变,是固定的。内核空间的虚拟地址到物理地址映射是被所有进程共享的,内核的虚拟空间独立于其他程序。Linux中1GB的内核地址空间又被划分为物理内存映射区、虚拟内存分配区、高端页面映射区、专用页面映射区和系统保留映射区这几个区域。对于x86系统而言,一般情况下,物理内存映射区最大长度为896MB,系统的物理内存被顺序映射在内核空间的这个区域中。当系统物理内存大于896MB时,超过物理内存映射区的那部分内存称为高端内存(而未超过物理内存映射区的内存通常被称为常规内存),内核在存取高端内存时必须将它们映射到高端页面映射区。Linux保留内核空间最顶部FIXADDR_TOP~4GB的区域作为保留区。当系统物理内存超过4GB时,必须使用CPU的扩展分页(PAE)模式所提供的64位页目录项才能存取到4GB以上的物理内存,这需要CPU的支持。加入了PAE功能的Intel Pentium Pro及以后的CPU允许内存最大可配置到64GB,它们具备36位物理地址空间寻址能力。由此可见,对于32位的x86而言,在3~4GB之间的内核空间中,从低地址到高地址依次为:物理内存映射区隔离带vmalloc虚拟内存分配器区隔离带高端内存映射区专用页面映射区保留区。

在/etc/profile 的最后面添加ulimit -s unlimited 保存,source /etc/profile使修改文件生效

linux查看修改线程默认栈空间大小 :ulimit -s

1、通过命令 ulimit -s 查看linux的默认栈空间大小,默认情况下 为10240 即10M

2、通过命令 ulimit -s 设置大小值 临时改变栈空间大小:ulimit -s 102400, 即修改为100M

3、可以在/etc/rc.local 内 加入 ulimit -s 102400 则可以开机就设置栈空间大小

4、在/etc/security/limits.conf 中也可以改变栈空间大小:

#<domain><type><item><value>

* soft stack 102400

重新登录,执行ulimit -s 即可看到改为102400 即100M

因为我的硬盘空间比较小,又很讨厌不明不白的被强制安装一些软件,像 gnome、kde 之流自然直接忽视。然后又试用了 awesome、musca,都不是特别和心意,最后找到了 i3wm,很喜欢,使用至今。它的快捷键和 vim 十分相似,应该很容易就能上手。

<pre>a

Mod d 运行程序,调用 dmenu

Mod Enter 创建一个新终端

Mod num 切换到不同工作区

Mod Shift num 后加数字,移动一个窗口到指定工作区

Mod j/k/l/移动窗口

Mod Shift j/k/l切换不同窗口位置

Mod r 进入窗口大小调整模式

j/k/l/调整窗口大小,认为合适后按“Enter”退出

Mod e 默认正常分列

Mod w 标签式布局

Mod s 堆叠布局

Mod f 全屏当前窗口

Mod Shift r 重启i3

Mod Shift e 退出i3

Mod Shift Space 切换浮动/非浮动

</pre>

使用 i3wm 还有一个原因,就是它的配置特别清晰明了,一看就懂,上面列出的快捷键还不全,大家可以自己到配置文件中找到所有的快捷键,当然也可自定义。

i3wm 有一个自带的状态栏扩展,但我通常更倾向于使用 conky,i3wm 可以直接调用它。下面是我的配置:

i3wm: https://github.com/mudan/profile/blob/master/.i3/config

conky: https://github.com/mudan/profile/blob/master/.conkyrc

另外英文高手可以去看看 i3wm 的手册 。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8435027.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-16
下一篇 2023-04-16

发表评论

登录后才能评论

评论列表(0条)

保存