操作系统——内存管理

一、实验内容

  • Linux 命令FREE显示内存状态情况,观察结果并分析;
  • 用VMSTAT命令监视虚拟内存使用情况,观察结果并分析;
  • 使用PS和KILL命令回收内存,观察结果并分析(例如:可以打开两个终端,一个终端先运行无限循环程序,然后再另一个终端KILL该进程);  
  • 使用SYNC命令将内存缓冲区的数据写入磁盘;
  • 观察ULIMIT命令结果,写出用法和作用。

二、实验结果

①Linux 命令FREE显示内存状态情况,观察结果并分析;

结果分析:

        mem为内存使用情况,swap为交换内存使用情况。交换内存为磁盘上的一片空间,用于内存不足时使用,但是速度较慢。total列指的是内存总的大小,used列表示已使用的内存空间,free列显示剩余空间,shared列显示被共享的内存大小,buff/cache列显示被buffer和cache使用的物理内存大小,available列显示还可以被应用程序使用的物理内存大小。free是真正尚未被使用的物理内存数量,available是从应用程序的角度看到的可用内存数量。当应用程序需要内存时,如果没有足够的free内存可以用,内核就会从buffer和cache中回收内存来满足应用程序的请求。

②用VMSTAT命令监视虚拟内存使用情况,观察结果并分析;

结果分析:

procs(进程):

    r:运行队列中进程数量

    b:等待IO的进程数量

memory(内存):

    swpd:使用虚拟内存大小

    free:可用内存大小

    buff:用作缓冲的内存大小

    cache:用作缓存的内存大小

swap:

    si:每秒从交换区写到内存的大小

    so:每秒写入交换区的内存大小

    io:(现在的Linux版本块的大小为1024bytes)

    bi:每秒读取的块数

    bo:每秒写入的块数

system:

    in:每秒中断数,包括时钟中断(interrupt)

    cs:每秒上下文切换数(count/second)

cpu(以百分比表示):

    us:用户进程执行时间(user time)

    sy:系统进程执行时间(system time)

    id:空闲时间(包括IO等待时间),中央处理器的空闲时间,以百分比表示

    wa:等待IO时间

    st:来自于一个虚拟机偷取的CPU时间的百分比

如果r经常大于4,id经常少于40,表示cpu的负荷很重。

如果bi,bo长期不等于0,表示内存不足。

如果disk经常不等于0,且在b中的队列大于3,表示io性能不好。

(内容参考:https://blog.csdn.net/mosesmo1989/article/details/51094894

③使用PS和KILL命令回收内存,观察结果并分析(例如:可以打开两个终端,一个终端先运行无限循环程序,然后再另一个终端KILL该进程); 

结果分析:

ps命令用于命令用于显示当前进程的状态;

kill命令用于删除执行中的程序或工作,kill 2792表明杀死PID为2792的程序。

④使用SYNC命令将内存缓冲区的数据写入磁盘;

结果分析:

       sync命令用于数据同步,linux会在关机前自动调用sync。

⑤观察ULIMIT命令结果,写出用法和作用。

用法和作用:

       ulimit命令用于控制shell程序的资源,显示目前资源限制的设定。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

樱桃小叮当

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值