bios

Problem with BIOS INT 13H (Read Sectors From Drive)

让人想犯罪 __ 提交于 2020-03-22 06:25:43
问题 Description: In my efforts to create a simple standalone program I have written a simple boot loader in the first sector. Its purpose is to load the program into memory. For this purpose I am using INT 13h with AH=2. The code is: disk_load: push dx ; Store DX on stack so later we can recall how many sectors were requested to be read, ; even if it is altered in the meantime. mov ah, 0x02 ; BIOS read sector. mov al, dh ; Read DH sectors. mov ch, 0x00 ; Select cylinder 0. mov dh, 0x00 ; Select

基于 Windows 7 的或基于 Windows Server 2008 R2 的计算机上的...

て烟熏妆下的殇ゞ 提交于 2020-03-18 22:33:12
3 月,跳不动了?>>> 症状: 在执行全新安装或 Windows Server 2008 R2 的 Windows 7 时,您可能会收到以下错误消息过程中安装的设备检测阶段: Windows 安装程序无法在这台计算机的硬件上配置 Windows。 当您尝试在系统上安装 Windows 7 或 Windows Server 2008 R2,如果下面的情况是在您的 PC 上,则返回 true 时,会发生此错误: 您正在使用 Windows 7 或 Windows 服务器 2008 R2 RTM 媒体安装。 注意: Service Pack 1 (SP1) 与 Windows 7 和使用 SP1 的 Windows Server 2008 R2 不会受此问题的影响。 您的系统具有英特尔存储控制器已配置为"RAID"模式下,在 BIOS 中。(这是很多的 PC 制造商的标准设置) 该硬驱,您要安装到 ia"高级格式"磁盘。 注意 高级的格式磁盘具有物理扇区大小为 4 kb 和模拟的逻辑扇区大小为 512 字节。"高级格式"是由以提高媒体格式的效率,这将导致更大容量硬盘的 PC 制造商开始采用新技术。如果正在替换硬驱中较早的 PC,您可能会遇到此问题的可能性更大。 如何知道是否我有此问题? 若要确定您的系统是否受到此问题,请按照下列步骤: Windows 7 或 Windows 服务器

02-一个引导程序的框架——boot.s

蹲街弑〆低调 提交于 2020-03-17 22:40:04
抛个砖:电脑启动后,如何加载OS? 引块玉: CPU上电后自动把CS设置为0xF000,段基地址为0xFFFF0000,段长度为64KB,而IP设置为0xFFF0 故,CPU代码指针指向0xFFFFFFF0处,即ROM BIOS存放的位置,开始执行BIOS的硬件自检和初始化功能 在执行完准备加载操作系统的引导程序到0x7c00处前,会检查引导程序是否有效,有效标志0xAA55. 若有效,则跳转到0x7c00处开始执行引导程序(这里是boot.s),否则会转去尝试其它启动设备, 若没有找到则显示“NO ROM BASIC”后死机。 boot.s测试程序: ! ! boot . s Linux0 . 12 内核的bootsect . s的框架 ! 功能:在屏幕上显示“Loading system . . . ”且鸣叫一声 ! ! . global 声明全局标识符,供链接器使用 ( 主要通过这些标识符可合并不同源文件的段 ) ! . global begtext , begdata , begbss , endtext , enddata , endbss ! 三个段定义在同一重叠地址范围中,因此本程序实际不分段 . text begtext : ! 在代码段定义begtext标号 . data begdata : ! 在数据段定义begdata标号 . bss begbss : !

Linux启动过程详解

馋奶兔 提交于 2020-03-15 01:43:55
启动 第一步 --加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它。这是因为BIOS中包含了CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息、PnP特性等等。在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了。 启动 第二步 --读取MBR 众所周知,硬盘上第0磁道第一个扇区被称为MBR,也就是Master Boot Record,即主引导记录,它的大小是512字节,别看地方不大,可里面却存放了预启动信息、分区表信息。 系统找到BIOS所指定的硬盘的MBR后,就会将其复制到0x7c00地址所在的物理内存中。其实被复制到物理内存的内容就是Boot Loader,而具体到你的电脑,那就是lilo或者grub了。 启动 第三步 --Boot Loader Boot Loader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核做好一切准备。 Boot Loader有若干种,其中Grub、Lilo和spfdisk是常见的Loader。 我们以Grub为例来讲解吧,毕竟用lilo和spfdisk的人并不多。 系统读取内存中的grub配置信息(一般为menu

串口线接Linux设备U盘安装系统

北城余情 提交于 2020-03-13 09:34:49
Firmware Bug]: TSC_DEADLINE disabled due to Errata; please update microcode to version: 0x22 (or later) [ 3.271907] Device 'efifb.0' does not have a release() function, it is broken and must be fixed. [ 4.485038] i8042: No controller found    出现此问题: 字符模式console usb串口安装centos U盘安装镜像路径也是需要指定的,本文来自/dev/sda4 U盘 进入BIOS页面: setparams 'Install CentOS 7' linuxefi /images/pxeboot/vmlinuz inst.stage2=hd:/dev/sda4 console=tty0 console=ttyS0,115200 initrdefi /images/pxeboot/initrd.img 来源: https://www.cnblogs.com/zhou1/p/12484406.html

操作系统启动顺序

自闭症网瘾萝莉.ら 提交于 2020-03-12 11:31:32
概述 在这里以x86的处理器为例 机器在启动的时候会执行 第一条指令 。这条指令会去执行 bios ,将控制权交给bios。 bios完成硬件的质检,然后将bootloader从硬盘读到内存中,执行 bootloader ,并将控制权交给bootloader bootloader负责使能保护模式、建立段机制以及加载操作系统,然后将控制权交给操作系统 第一条指令 执行机器的第一条指令是为了跳转到bios执行,那么需要知道bios在哪里?cpu是怎么寻址的? bios在哪里 bios是固化在内存EPROM中的,断电不会丢失(非易失性),这样 biod的地址是固定 的,因为 在cpu第一次加电了之后,寄存器就会有缺省的初始值 ,所以 bios地址=寻址寄存器的缺省值 就好啦。 寻址是由段寄存器以及指令指针共同完成,bios地址由CS:IP=16*CS+IP(代码段寄存器:指令指针)来表示。 CS的缺省值是FFFF0000H,IP的缺省值是0000FFF0H。 CS:IP=FFFFFFF0H 寻址机制 寻址是由段寄存器以及指令指针共同完成。因为内存很大,而且在一段时间内操作的内存具有空间局部性,所以可以将内存分为一段一段由段寄存器来定位,这一段的内存中再由指令指针来定位到具体的代码、数据 段寄存器: CS——code segment,代码段寄存器 DS——data segment

联想电脑狂按F2不能进入BIOS设置解决办法——通过UEFI固件设置进入BIOS

别说谁变了你拦得住时间么 提交于 2020-03-05 21:12:26
关于BIOS BIOS是英文"Basic Input Output System"的缩略词,中文名称就是"基本输入输出系统"。BIOS是个人电脑启动时加载的第一个软件。计算机在运行时,首先会进入BIOS,它在计算机系统中起着非常重要的作用。一块主板性能优越与否,很大程度上取决于主板上的BIOS管理功能是否先进。 BIOS是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,它可从CMOS中读写系统设置的具体信息。 出现的问题 说一下我的经历,用了挺久的VMware,早上进Linux操作系统虚拟机时,出现此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态,我查了资料是没有开启虚拟技术,需要进入BIOS设置,但是。。。问题就出在这,开机狂按F2就是进不去BIOS(F2作为减音量键是可以使用的),其他什么F2+Fn,F1,Delete键试了个遍,都没用。后来终于在联想知识库里找到,不按热键也可以进入BIOS的方法——通过UEFI固件设置进入BIOS。 该方法是对于预装Win8、Win8.1、Win10系统的电脑,前提是系统是通过UEFI引导安装的。 通过UEFI固件设置进入BIOS 话不多说,以我的Win10系统为例,进入UEFI固件设置的方法(Win8设置过程基本一样,只是界面不同) 1

服务器配置来电后自动开机

老子叫甜甜 提交于 2020-03-04 16:18:04
电脑进入BIOS,一般是在开机后出现主板画面是按Delete这个键,部分品牌机可能按F2,F1,例如Lenovo电脑按F1。 Lenovo 电脑BIOS界面 亲测Lenovo电脑,电脑开机显示主板画面时按F1进入BIOS,选择Power选项卡,设置“After Power Loss”的值: Power Off 断电后加电不自启 Power On 断电后加电自启 Last State 断电后加电自启(恢复到断电前的状态) 设置界面如下图所示: 修改完成后,按F10保存,退出。 注意: 有些电脑默认是Last State,故电脑断电后,重新加电电脑会自动重启; 断电后加电自动重启只是针对于电脑正常运行时突然断电的情况; 当电脑出入正常关机状态,断电后加电时不会自动重启的。 另一种BIOS界面 选择IntegratedPeripharals(外围设备设置)中的SuperIO Device Integrated [ ˈɪnt ɪgre ɪt ɪd] 集成 ; Peripharals [p əˈr ɪf ər əl] 外围 将其中的RestoreOn AC Power Loss选项修改:Power On (若要加电不开机选择Power Off,若要加电之前断电状态选择Last State) 设置服务器定时开机 PowerManagement Setup ,就进入电源管理设置了

解决进不去BIOS或U盘启动,windows10如何关闭快速启动

大憨熊 提交于 2020-03-03 18:28:36
当电脑进不去BIOS或者U盘启动时,原因除了没点好启动键、没制作好启动盘以及没设置好U盘启动类型之外,这很可能是因为开启了windows快速启动的缘故。 windows 10如何关闭快速启动。快速启动可以加速我们开机的速度但是我们的一些应用一些设置我们不需要快速启动,那么我们该如何把他关闭呢? 工具/原料 windows 10 方法/步骤 我们首先右击左下角开始图标,或者按win+x 在弹出的常用菜单中我们选择“电源选项” 在“电源选项”中我们选择“选择电源按钮的功能” 我们或许会看到我们的快速启动是灰色的。我们该如何修改呢? 我们在设置中选择“更改当前不可用的设置” 这时候我们的“快速启动”我们就可以进行修改了。我们把前面的勾去掉。完成后我们选择“保存修改” 这样设置我们的快速启动功能就关闭了,这样我们的电脑开机速度就变慢了。如果我们要开启他,也是同样的方法就可以了。 本文部分内容借鉴自: https://jingyan.baidu.com/article/ca00d56c7a40e6e99febcf4f.html 来源: oschina 链接: https://my.oschina.net/u/3797187/blog/1813819

计算机基础(下)

血红的双手。 提交于 2020-03-03 10:38:01
计算机基础知识想详解 1、cpu详解 cpu的分类与指令集 x86-64(*****) cpu具有向下兼容性 64的cpu既能运行32位的程序也能运行64位的程序 内核态与用户态(*****) 代表cpu的两种工作状态 1、内核态:运行的程序是操作系统,可以操作计算机硬件 2、用户态:运行的程序是应用程序,不能操作计算机硬件 内核态与用户态的转换 应用程序的运行必然涉及到计算机硬件的操作,那就必须有用户态切换到 内核态下才能实现,所以计算机工作时在频繁发生内核态与用户态的转换 多线程与多核芯片 2核4线程: 2核代表有两个cpu,4线程指的是每个cpu都有两个线程=》假4核 4核8线程 4核代表有4个cpu,8线程指的是每个cpu都有两个线程=》假8核 2、存储器 RAM:内存 ROM:“只读内存” 存放计算机厂商写死计算机上的一段核心程序=》BIOS CMOS:存取速度慢,断电数据丢失,耗电量极低 硬盘: 机械硬盘:磁盘 磁道:一圈数据,对应着一串二进制(1bit代表一个二进制位) 8bit比特位=1Bytes字节 1024Bytes=1KB 1024KB=1MB 1024MB=1GB 1024GB=1TB 1024TB=1PB 200G=200*1000*1000B 扇区: 一个扇区通过为512Bytes 站在硬盘的解读,一次性读写数据的最小单为为扇区