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

网站建设项目招标文件wordpress app 插件下载

网站建设项目招标文件,wordpress app 插件下载,打广告,网页设计师网站0x00#xff1a;x86 架构 BIOS 引导加载程序中的0x7C00之谜 你知道 x86 操作系统中的0x7C00这个神奇数字吗 ? 0x7C00 是BIOS加载MBR#xff08;主引导记录#xff0c;磁盘中的第一个扇区#xff09;的内存地址。操作系统或引导加载…0x00x86 架构 BIOS 引导加载程序中的0x7C00之谜 你知道 x86 操作系统中的0x7C00这个神奇数字吗 ? 0x7C00 是BIOS加载MBR主引导记录磁盘中的第一个扇区的内存地址。操作系统或引导加载程序开发人员必须假设他们的汇编代码已加载并从 0x7C00 开始。 但是... 第一你可能很疑惑: 我读了所有的Intel x86 手册但没有找到神奇的数字0x7C00。是的。0x7C00 与 x86 CPU 无关。很自然你在 intel 的cpu规格中查不到它。然后你很想知道 是谁确定这个数字的 第二你可能很疑惑0x7C00 十进制数为 32KiB - 1024B。这个数字意味着什么难道这只是巧合吗 是谁决定了这个地址并且他为什么选择这样一个不着边际的地址呢现在让我们一起深入了解现代 x86 PC 的祖先IBM PC 5150的 BIOS 秘密 0x010x7C00首先出现在IBM PC 5150中 纵观x86 IBM兼容个人电脑的历史IBM PC 5150 是现代x86 IBM PC/AT 电脑的始祖。该电脑于 1981 年 8 月发布配备 Intel 808816 位和 16KiB RAM最低内存型号 BIOS 和 Microsoft BASIC 存储在 ROM 中。 当机器上电时BIOS 执行 POST开机自检程序然后执行中断调用 INT 19h。在中断 INT 19h 处理程序中BIOS 检查 PC 是否有软盘/硬盘/固定软盘。如果有任何可用的磁盘BIOS 将磁盘的第一个扇区512B加载到 0x7C00 中并从这里开始启动操作系统。 现在你明白为什么在 x86 文档中找不到这个神奇数字了吧。这个幻数属于 BIOS 规范。 0x020x7C00的由来 围绕 IBM DOS、微软和SCP 86-DOS 这些科技公司都是很有趣的故事。请参阅MS-DOS 简史http://www.patersontech.com/dos/Byte/History.html。 IBM DOS 1.0 操作系统是参考的 SCP 的86-DOS1980 年。86-DOS早期称为QDOS是8086/8088 cpu 的 CP/M 兼容操作系统。SCP出售两块 S-100总线板一块是8086 CPU板另外一块是CPU Monitor rom板。CPU Monitor程序提供了引导加载程序和调试器这个CPU Monitor引导加载程序将 MBR 加载到0x200而不是0x7C00。  1981 年IBM DOS 是适用于 8086/8088 的下一代 CP/M 操作系统0x7C00 首次出现在 IBM PC 5150 ROM BIOS 中。在这之前SCP 的 CPU Monitor 引导加载程序加载到 0x200而不是 0x7C00。 0x03为什么早期的 CPU Monitor 的引导加载程序将 MBR 写入0x200 关于0x200有三个原因 (1) 8086 中断向量使用 0x0 - 0x3FF (2) 86-DOS 是从0x400加载的 (3) 86-DOS 不使用 0x200 - 0x3FF 之间的中断向量 这些原因意味着 0x200 - 0x3FF 保留空闲并且86-DOS 或用户应用程序想要加载到位置不能妨碍操作系统因此 Tim Paterson86-DOS 开发人员选择 0x200 作为 MBR 加载地址。 0x040x7C00 又是谁决定的 答案是IBM PC 5150 BIOS 开发团队。 0x7C00 是由 IBM PC 5150 BIOS 开发团队David Bradley 博士决定的。如上所述这个神奇的数字诞生于 1981 年IBM PC/AT Compat PC/BIOS 供应商为了 BIOS 和操作系统的向后兼容性从没改变过这个值。 不是英特尔8086/8088 供应商或微软操作系统供应商决定的。 0x050x7C00 32KiB - 1024B是什么意思难道只是巧合吗? 答案是受操作系统要求和 CPU 内存布局影响。 IBM PC 5150 最小内存型号只有 16KB 内存。因此你可能会有这样的疑问最小内存型号16KiB可以从软盘加载操作系统吗BIOS 将 MBR 加载到 32KiB - 1024B 地址处但物理内存显然不够。 不这种情况不在考虑范围之内。IBM PC 5150 ROM BIOS 开发团队成员之一 David Bradley 博士说DOS1.0至少需要32KB所以我们并不考虑在16KB内启动。 (注DOS 1.0 最低要求 16KB 还是 32KB 我找不到正确的答案。但至少在 1981 年的早期 BIOS 开发中他们认为 32KB 是 DOS 的最低要求。 BIOS 开发团队决定使用 0x7C00 是因为 (1) 他们希望在 32KiB 内为操作系统留下尽可能多的空间来加载自身。 (2) 8086/8088使用0x0 - 0x3FF作为中断向量BIOS数据区在其之后。 (3) 引导扇区为 512 字节引导程序的堆栈/数据区域需要更多 512 字节。 (4) 因此选择了 0x7C00即 32KiB 的最后 1024B。 一旦操作系统加载并启动引导扇区在电源重置之前不会被使用。因此操作系统和应用程序可以自由使用 32KiB 的最后 1024B。 其内存布局如下所示 --------------------- 0x0| Interrupts vectors--------------------- 0x400| BIOS data area--------------------- 0x5??| OS load area--------------------- 0x7C00| Boot sector--------------------- 0x7E00| Boot data/stack--------------------- 0x7FFF| (not used)--------------------- (...) 参考 https://www.glamenv-septzen.net/en/view/6
http://www.yutouwan.com/news/156500/

相关文章:

  • 苏州创元投资集团网站关于青岛的网页设计
  • 监控做斗鱼直播网站商业网站教程
  • 门户网站怎么建设电子商务网站建设与管理第四章答案
  • 北京检查站优化wordpress进管理员密码
  • 烟台微网站建设吉林省建设厅监理协会网站
  • 如何防止网站被采集免费服务器主机
  • 资源类网站怎么做应用软件开发专业
  • 官方网站开发方案推荐昆明做网站建设
  • 做worksheet的网站导航网站移动端流量占比
  • 做系统那个网站好做创新方法工作网站
  • 洛阳 网站建设北京企迪网站建设公司
  • 模版网站做支付功能西安网站建设 美科动
  • 网站建设价格明细表和网站预算施工单位招聘信息
  • 旅游网站wordpressh5框架做网站
  • 渭南哪家公司可以做网站在线花钱做网站
  • 前程无忧网广州网站建设类岗位wordpress时间表插件
  • 苏州著名网站建设wordpress视频教程 百度网盘
  • 东莞微客巴巴做网站j2ee博客网站开发
  • 东莞市住建局官网网站免费打开网站
  • 婚纱手机网站做网站的前端技术
  • 关于网站开发的学校南阳千牛网站建设
  • 全县网站建设管理工作会议召开iis服务器网站301重定向怎么做
  • 证书兼职的人才网站网络规划设计师考试内容
  • 制作关于灯的网站网站排名下降的原因
  • 长沙做网站 必看 磐石网络佛山关键词搜索排名
  • 制作企业网站素材视频网站自做书本
  • 网站建设公司选哪个好新闻株洲最新
  • 稳稳在哪个网站做的消防直播免费发布广告
  • 广州医院网站建设网页设计实训报告
  • 如何网站点击率摄影设计说明怎么写