再现理想 发表于 2015-1-16 12:23:49

带来一篇关于Linux功能监控之Memory篇

初学阶段只要把上课时候学习过的命令练熟就可以了.单靠学习各种命令而成为高手是不可能的。
我们起首懂得假造内存和物理内存:假造内存就是接纳硬盘来对物理内存举行扩大,将临时不必的内存页写到硬盘上而腾出更多的物理内存让有必要的历程来用。当这些内存页需pi要用的时分在从硬盘读回内存。这统统关于用户来讲是通明的。一般在Linux体系说,假造内存就是swap分区。在X86体系上假造内存被分为巨细为4K的页。
  Memory篇
  Linux功能监控每个历程启动时城市向体系请求假造内存(VSZ),内核批准大概拒就哀求。当程序真正用到内存时,体系就它映照到物理内存。RSS暗示程序所占的物理内存的巨细。用ps命令我们能够看到历程占用的VSZ和RSS。
  #psCaux
  USERPID%CPU%MEMVSZRSSTTYSTATSTARTTIMECOMMAND
  daemon21770.00.23352648?Ss23:030:00/usr/sbin/atd
  dbus21960.00.5131801320?Ssl23:030:00dbus-daemon-1--sys
  root22100.00.427401044?Ss23:030:00cups-config-daemon
  root22210.31.561084036?Ss23:030:02hald
  root22310.00.12464408tty1Ss+23:030:00/sbin/mingettytty1
  内核会按期将内存中的数据同步到硬盘,这个历程叫做MemoryPaging。同时内核也要卖力接纳不必的内存,将他们分给其他必要的历程。PFRA算法(PageFramereclaimalgorithm)卖力接纳余暇的内存。算法依据内存页的范例来决意要开释的内存页。有以下4品种型:
  1.UnreclaimableC锁定的,内核保存的页面;
  2.SwappableC匿名的内存页;
  3.SyncableC经由过程硬盘文件备份的内存页;
  4.DiscardableC静态页和被抛弃的页。
  除第一种(Unreclaimable)以外其他的都能够被PFRA举行接纳。与之相干的历程是kswapd。在kswapd中,有2个阀值,pages_hige和pages_low。当余暇内存页的数目低于pages_low的时分,kswapd历程就会扫描内存而且每次开释出32个freepages,直到freepage的数目抵达pages_high。详细kswapd是怎样接纳内存的呢?有以下准绳:
  1.假如页未经变动就将该页放进余暇行列;
  2.假如页已变动而且是可备份回文件体系的,就了解将内存页的内容写回磁盘;
  3.假如页已变动可是没有任何磁盘上的备份,就将其写进swap分区。
  #ps-ef|grepkswapd
  root301023:01?00:00:00
  Linux功能监控在接纳内存过程当中另有两个主要的办法,一是LMR(Lowonmemoryreclaiming),另外一个是OMK(OutofMemoryKiller)。当分派内存失利的时分LMR将会其感化,失利的缘故原由是kswapd不克不及供应充足的余暇内存,这个时分LMR会每次开释1024个渣滓页知道内存分派乐成。当LMR不克不及疾速开释内存的时分,OMK就入手下手其感化,OMK会接纳一个选择算法来决意杀逝世某些历程。中选定历程时,就会发送旌旗灯号SIGKILL,这就会使内存当即被开释。OMK选择历程的办法以下:
  1.历程占用大批的内存;
  2.历程只会丧失大批事情;
  3.历程具有低的静态优先级;
  4.历程不属于root用户。
  Linux功能监控历程办理中另外一个程序pdflush用于将内存中的内容和文件体系举行同步,好比说,当一个文件在内存中举行修正,pdflush卖力将它写回硬盘。
  #ps-ef|greppdflush
  root283023:01?00:00:00
  root293023:01?00:00:00
  每当内存中的渣滓页(dirtypage)凌驾10%的时分,pdflush就会将这些页面备份回硬盘。这个比率是能够调治的,经由过程参数vm.dirty_background_ratio。
  #sysctl-nvm.dirty_background_ratio
  Pdflush同PFRA是自力运转的,当内核挪用LMR时,LMR就触发pdflush将渣滓页写回硬盘

</p>
当你经过一段时间的学习后就应该扩充自己的知识,多学习linux命令,但是不要在初学阶段就系统的学习linux命令。

蒙在股里 发表于 2015-1-18 09:46:15

其次,Linux简单易学,因为我们初学者只是学的基础部分,Linux的结构体系非常清晰,再加上老师循序渐进的教学以及耐心的讲解,使我们理解起来很快,短期内就基本掌握了操作和运行模式。

若相依 发表于 2015-2-2 21:40:02

请问谁有Linux的学习心得的吗?简单的说说?

飘灵儿 发表于 2015-2-8 07:17:32

我们自学,就这个循环的过程中,我们学习了基本操作,用vi,shell,模拟内存的分配过程等一些OS管理。

山那边是海 发表于 2015-2-24 23:53:53

其中不乏很多IT精英的心血。我们学透以后更可以做成自己的OS!?

爱飞 发表于 2015-3-7 14:52:56

和私有操作系统不同,各个Linux的发行版本的技术支持时间都较短,这对于Linux初学者是往往不够的。

冷月葬花魂 发表于 2015-3-15 08:52:30

可以说自己收获很大,基本上完成了老师布置的任务,对于拔高的题目没有去做,因为我了解我的水平,没有时间和精力去做。?

简单生活 发表于 2015-3-22 00:26:37

我们自学,就这个循环的过程中,我们学习了基本操作,用vi,shell,模拟内存的分配过程等一些OS管理。
页: [1]
查看完整版本: 带来一篇关于Linux功能监控之Memory篇