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

温州平阳县网站建设兼职虚拟主机代理商的网站打不开了怎么办

温州平阳县网站建设兼职,虚拟主机代理商的网站打不开了怎么办,如何做网站的自由撰稿人,网站联盟系统Background 大体流程如下图所示,显然这时候start_process无法被调度到。 然后start_process 里面load .out文件 (.o文件就是对象文件,是可重定向文件的一种,通常以ELF格式保存,里面包含了对各个函数的入口标记,描述,…

Background

大体流程如下图所示,显然这时候start_process无法被调度到。

 然后start_process 里面load .out文件

(.o文件就是对象文件,是可重定向文件的一种,通常以ELF格式保存,里面包含了对各个函数的入口标记,描述,当程序要执行时还需要链接(link).链接就是把多个.o文件链成一个可执行文件out)

ELF格式

先创造pagetable,然后加载headr(记录结构)到内存,然后解析data,bss,text到内存,然后初始化栈。

如何进入和退出内核态

 通过栈来保存寄存器的值。

 这就是大体背景

1.参数传递

简单说就是把参数压栈

 因为这个最初的函数不会return

2.系统调用

通过int 触发,然后有系统调用编号 NUMBER 加 0-3 个参数 ARG[0-3]。这些参数由调用者通过 pushl 指令直接压入栈,syscall_handler() 中,要从参数 interrupt frame 的 ESP 中提取这些参数

然后就是各种操作了

exit syscall就是把这个进程退出(因为pintos一个进程里只能有一个线程),然后设置这个进程的错误码

 

大体结构如图

然后就是文件系统调用了

因为目前文件系统不支持并发读取,所以我在文件系统加了一把大锁,然后进行读取,这一部分就是调用api,没什么好说的

 就是我们要维护一下fd和file直接的关系

所以我们就要在thread上做一个结构,file_list来做

然后我们要在进程执行过程中锁住可执行文件,不让他被修改,也就是load时上锁,然后在当前线程上记录一下文件,然后在进程退出时,解锁,或者关闭就行。

 

3.访存检查

第一种在访问用户指针的内存前先做合法性检查:地址是否属于用户内存区域(小于 PHYS_BASE)以及地址是否属于当前进程的内存区域;第二种是仅做前者的检查然后就访问,如果不合法会引发 page fault,然后再处理这个异常。 

如果在内核态下触发page fault我们就认为是访存不合法。 

我们现在可以通过page_fault来验证,利用mmu

因为这个解引用在内核里面,然后在用户态,解引用会自动page faut分配,而内核态则不会!也就是说传入的东西,要先在用户态分配,而不是一个非法指针,不是属于当前进程的内存区域。

结果 

http://www.15wanjia.com/news/164787.html

相关文章:

  • 榆林做网站需要注意的几点深圳市宝安区龙华公司是干什么的
  • 潍坊 网站企划怎么进入wordpress
  • 门户型网站模板做seo排名好的公司
  • 众意网站建设zyecn网站建设用户调研
  • 底价网站建设wordpress浮窗播放器
  • dw网站建设讨论总结wordpress菜单消失
  • 采集站seo课程济宁网站建设联系方式
  • 给网站网站做推广wordpress如何定义锚
  • 服装行业网站建设句容网站设计公司
  • 网站建设谈判怎样做一个app
  • 装修推广网站哪个好广东佛山最新通知
  • 品牌型网站成功案例图片顺电网上商城
  • ps做网站首页步骤dz论坛中英文网站怎么做
  • 网站备案的好处湖北企业网站优化排名
  • 程序员个人网站开发如何做一个购物网站页面
  • 电脑网站设计公司做网站上面的图标
  • 会议平台网站建设狠抓措施落实
  • 网站设计师工资怎样05网寒假作业
  • 网站虚拟机可以自己做吗金华网站制作推广
  • 网站突然打不开是什么原因信息化平台的功能介绍
  • 注册公司网站模板下载帝国cms 网站例子
  • wordpress+做仿站邯郸做wap网站建设
  • 广州北京网站建设公司微信企业网站
  • 网软志成学校网站管理系统官方商业正式版竞价网站做招商加盟可以不备案吗
  • 广州魔站建站校园app开发费用
  • 中国建设劳动学会监制网站中国重大新闻
  • 如何选择企业网站开发最新网站备案
  • 天津做网站找津坤科技专业重庆网站建设技术
  • 台州网站平面设计wordpress小工具安装
  • 交河网站建设网站无法打开网页是怎么回事