编译链接运行原理——(二)进程,虚拟地址空间,分段,分页机制

进程是执行中的可执行文件,与虚拟地址空间、内存和磁盘密切相关。虚拟地址空间解决了程序间的不安全性、内存利用率低和运行地址不确定等问题。分段提供独立的虚拟地址,防止程序间干扰;分页则通过按需加载和替换减少I/O操作。通常,页大小为4K,结合置换算法优化内存使用。
摘要由CSDN通过智能技术生成

首先在说进程是如何运行之前,得先明白进程是个什么东西,它和可执行文件(程序),虚拟地址空间,内存,磁盘都是什么关系。

官话:进程就是在执行的可执行文件(程序)。

白话:菜谱是程序,人是CPU,炒菜的过程就是进程。

说到这,可能就有点疑问了,那这进程和这虚拟地址空间,内存,磁盘又有什么联系?别急听我慢慢道来,首先你炒菜光菜谱够吗?显然没菜在炒个锤子菜,你肯定得有菜,调料,锅对吧。那么同样的,程序只是指令的集合,没数据它又怎么跑。

紧接着就可以回答刚才的问题了,这些指令,数据可定得放个地吧?这不就是磁盘了么。有人肯定会有疑问为啥不放内存上,只要你家有钱当然也可以。开个玩笑明显是没法存放在内存上的,首先内存上的数据是非永久性的,不可能你废老半天劲写了几十行代码完事跑一遍没了,那还怎么玩对吧。再者你家内存多大,撑死8个G,讲道理要是放内存上LOL都玩不了了吧。

好了言归正传,说了这么多这虚拟地址空间是啥呢?这就得好好说道说道了。

首先呢,在很久以前程序在运行的时候,是直接从磁盘里读出来放内存上的。开始程序少还没啥感觉,不过这用着用着吧就有问题了。

  • 程序与程序之间不安全。因为都是直接放内存上的,一个程序不小心跑另一个程序里面改个东西又跑回来,是没啥
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值