当前位置: 首页 > news >正文

手机端网站开发工具电商平台引流推广

手机端网站开发工具,电商平台引流推广,asp网站漏洞修复插件,做网站用最新软件研究背景: ● kernel 2.6.32 ● 32位平台 –❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀-正文开始-❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀– 在学习操作系统中想必大家肯定都见过下面这…

研究背景:
● kernel 2.6.32

● 32位平台

–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀-正文开始-❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–❀–

在学习操作系统中想必大家肯定都见过下面这幅图

但是其实这并不是真实的储存空间

我拿代码来切入为大家进行讲解:
大家可以运行一下下面代码

#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
int g_val = 0;
int main()
{pid_t id = fork();if (id < 0) {perror("fork");return 0;}else if (id == 0) { //childprintf("child[%d]: %d : %p\n", getpid(), g_val, &g_val);}else { //parentprintf("parent[%d]: %d : %p\n", getpid(), g_val, &g_val);}sleep(1);return 0;
}

输出:

//与环境相关,观察现象即可
parent[2995]: 0 : 0x80497d8
child[2996]: 0 : 0x80497d8
我们发现,输出出来的变量值和地址是一模一样的,很好理解呀,因为子进程按照父进程为模版,父子并没有对变量进行进行任何修改。可是将代码稍加改动 :
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
int g_val = 0;
int main()
{pid_t id = fork();if (id < 0) {perror("fork");return 0;}else if (id == 0) { //child,子进程肯定先跑完,也就是子进程先修改,完成之后,父进程再读取g_val = 100;printf("child[%d]: %d : %p\n", getpid(), g_val, &g_val);}else { //parentsleep(3);printf("parent[%d]: %d : %p\n", getpid(), g_val, &g_val);}sleep(1);return 0;
}

输出:

//与环境相关,观察现象即可
child[3046]: 100 : 0x80497e8
parent[3045]: 0 : 0x80497e8
我们发现,父子进程,输出地址是一致的,但是变量内容不一样!能得出如下结论 :

● 变量内容不一样,所以父子进程输出的变量绝对不是同一个

● 但地址值是一样的,说明,该地址绝对不是物理地址!

● 在 Linux 地址下,这种地址叫做 虚拟地址
● 我们在用 C/C++ 语言所看到的地址,全部都是虚拟地址!物理地址,用户一概看不到,由 OS 统一管理
OS 必须负责将 虚拟地址 转化成 物理地址

进程地址空间

所以之前说 程序的地址空间’ 是不准确的,准确的应该说成 进程地址空间 ,那该如何理解呢?看图:
分页&虚拟地址空间

在Linux操作系统中,进程运行从磁盘加载到内存,进程存储开辟内存空间都是用虚拟地址mm_struct通过页表再映射到真实的物理地址上的,而父子进程其实是通用一套物理内存空间,所以父进程的代码和数据子进程也是可以看到访问的,如果子进程要对父进程中的代码或数据做修改的话此时会发生写时拷贝,也就是在物理内存中新开辟一块空间用于子进程对数据的存储,而页表上的虚拟地址重新映射到新的物理地址但虚拟地址不变,所以我们通过代码打印地址才会看到同一地址上却显示的不同数据信息。

总结就是:同一变量,虚拟地址相同,通过页表映射到了不同的物理地址上。

这里再说明一点,虚拟地址和页表里面的地址其实都是从代码中加载进来的,因为代码本身就含有地址,大家可以将上面的代码转到反汇编即可看到每段代码对应的地址

为什么要有虚拟地址和页表?

● 数据在物理内存上开辟其实是无序的,而通过虚拟地址空间和页表可以将无序变成有序,让进程以统一的视角看待物理内存以及自己运行的各个区域

● 让进程管理模块和内存管理模块进行解耦,提高物理内存空间的利用率

● 拦截非法请求(比如越界访问等),对物理内存进行保护

http://www.ritt.cn/news/26961.html

相关文章:

  • 网站如何做3d产品资源平台
  • 网站开发工资高吗企业推广的渠道有哪些
  • 静态网站模板企业网络营销策略分析案例
  • 网站建设设计服务商我要登录百度
  • 新昌县建设局网站成都谷歌seo
  • 个人网站怎么做百度推广百度问一问免费咨询
  • 网站浮窗制作济南做网站公司
  • 网站开发各年的前景查网站域名
  • 长沙市政府网站建设现状百度搜索推广和信息流推广
  • 兰州做网站 东方商易如何出售自己的域名
  • wordpress4.8 php版本seo排名优化软件
  • 网站页面效果图怎么做seo优化网站推广专员招聘
  • 网站的jsp页面怎么做seo优化步骤
  • 深圳的网站建设公司排名百度百度一下你就知道主页
  • 黔南州建设局门户网站网站自动秒收录工具
  • 政府集约化网站群建设方案企业品牌营销推广
  • 数据中心机房运维方案seo快速优化排名
  • 统一汤达人选择她做汤面活动网站优秀企业网站欣赏
  • 宝鸡免费做网站网站查询系统
  • 国外毕业设计网站游戏推广引流软件
  • 免费域名申请 freenom最新石家庄seo排名外包
  • 制作企业网站页面的实训报告个人如何优化网站有哪些方法
  • 网站推广的网站东莞市网络seo推广价格
  • 做电脑端网站手机端能搜到吗网站推广优化是什么意思
  • 怎样做机械租赁的网站广州seo服务
  • 日本专门做恋足的网站百度站长工具域名查询
  • 重庆最新新闻事件seo是什么职位的简称
  • 无锡个人网站建设今日头条官网
  • 青岛运营网络推广业务资源网站快速优化排名
  • 网站的关键词排名怎么做温州最好的seo