bios

int 13h 42h doesn't load anything in Bochs

空扰寡人 提交于 2019-11-26 16:57:31
问题 I changed my bootloader from CHS to LBA, so I replaced int 13h 02h with int 13h 42h . It works correctly in QEMU, however, I have troubles running it with Bochs and my laptop. I wrote bootloader to USB flash drive with dd if=main.bin of=/dev/sdb bs=512 . Laptop loads Intel UNDI and gives me the following error: No bootable device - insert boot disk and press any key . So I tried to debug it with Bochs and noticed that Bochs recognizes this binary file as bootable. However, nothing had been

英特尔vPro博锐技术激活

余生长醉 提交于 2019-11-26 16:19:24
英特尔vPro博锐技术激活 参考: Intel官方Management Engine BIOS Extension (Intel®MEBX)手册: http://www.intel.com/content/dam ... ide_for_7series.pdf Intel官方AMT快速指南: https://communities.intel.com/ex ... yment_Guide_1.1.pdf 软件环境: 个人玩玩,不需要下述正规白皮中提及的软件,这些是给企业级部属用的,个人用太折腾,不好用: Intel® Setup and Configuration Software (Intel® SCS), VNC Viewer Plus。 个人玩,用下两个述软件足以。这两个都是完全免费的软件,无需破解,也没有功能限制: Open MDTK(Manageability Developer Tool Kit) - 支持Intel AMT技术的开源免费工具集;下载地址 http://www.meshcommander.com/open-manageability ,下载Open MDTK installer。 UltraVNC - 配合MDTK,实现KVM功能,下载地址 http://www.uvnc.com/downloads/ultravnc.html 。

【Linux系统引导过程】 -- 2019-08-09 10:14:42

十年热恋 提交于 2019-11-26 16:02:57
原文: http://106.13.73.98/__/89/ *** 第一步 开机自检 根据主板BIOS中的启动顺序,移交系统控制权。 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它。 这是因为BIOS中包含了CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息、PnP特性等等。在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了。 *** 第二步 MBR引导 众所周知,硬盘上第 0 磁道第一个扇区被称为MBR,也就是Master Boot Record,即 主引导记录 ,它的大小是 512 字节,别看地方不大,可里面却存放了预启动信息、分区表信息。 系统找到BIOS所指定的硬盘的MBR后,就会将其复制到 0×7c00 地址所在的物理内存中。其实被复制到物理内存的内容就是 Boot Loader ,而具体到你的电脑,那就是 lilo 或者 grub 了。 换一种说法,首先会根据硬盘等个个扇区中MBR的设置,将系统控制权传递给包含操作系统引导文件的分区,或者直接根据MBR记录中的引导信息调用启动菜单。 *** 第三步 GRUB菜单 系统控制权传递给GRUB后,将会显示启动菜单,然后根据所选项或默认值加载Linux内核文件,最后将系统控制权转交给内核。 Boot Loader

Windows 7的预备知识系列之一:Windows 7启动与停止

≡放荡痞女 提交于 2019-11-26 15:23:41
在开始使用Windows 7之前,对新的Windows操作系统做一个比较全面的认识是非常重要的。无论是新特性还是功能改进,Windows 7相比前一代操作系统发生了非常大的变化。但对于一个计算机初学者来说,全新认识Windows 7更简单。在了解Windows 7的设计理念和一些基本的元素之后,再使用Windows 7会更加顺手。 本文主要讲解一些安装Windows 7计算机的基本要领,包括Windows 7的简单介绍、Windows 7计算机的启动和关闭等内容。 Windows 7简介 说到Windows 7就不得不说一下前两代非常著名的Windows操作系统。在21世纪,最辉煌的计算机操作系统莫过于Windows XP了,也是目前市面上计算机最常用的操作系统。在2007年微软发布了一款全新的操作系统Windows Vista,这款操作系统相比Windows XP发生了翻天覆地的变化。这些变化是基于内核的升级,拥有更好的安全性、稳定性。并且在性能以及设计理念上更加符合现代计算机的需要,更适合计算机用户的使用。 继Windows Vista发布两年之后,微软再次发布了一款新的操作系统——Windows 7。相比Windows Vista,Windows 7变得更简单,能够更快的为用户完成工作,拥有更好的计算机体验。 启动Windows 7 了解Windows 7的启动之前

BIOS int 10h printing garbage on QEMU

风格不统一 提交于 2019-11-26 14:47:27
问题 I have a problem while writing an x86 real mode assembly program that runs as a bootloader in QEMU . I'm trying to print text through BIOS interrupt 0x10. My code is: print: pusha .loop: mov AL, [SI] cmp AL, 0 je .end call printChar inc SI jmp .loop .end: popa ret printChar: pusha mov AH, 0x0E mov BH, 0 mov BL, 0x0F int 0x10 popa ret I'm using [ORG 0x7c00] as an origin point. I tested the printChar label and calling it with some letter in AL and it works fine. When I try to load a memory

AMD RX580刷BIOS提高ETH算力

为君一笑 提交于 2019-11-26 12:27:51
AMD RX580刷BIOS提高ETH算力 显存体质较好的RX580可以将算力提到30Mh/s,默认只有24.x 工具:1. atiflash 用于提取显卡当前bios,改完bios后也是用它刷回去。 参考下载链接https://www.techpowerup.com/download/ati-atiflash/ 2. gpu-z 用于查看显存品牌。如果是三星的,改bios时可以将显存频率调到2000,其他的改到1975应该能稳定。 3. PolarisBiosEditor-master 用于修改显卡bios。 参考下载链接https://github.com/jaschaknack/PolarisBiosEditor 4. atikmdag-patcher 用于对驱动进行签名。请使用1.4.7或更新版本,否则无法支持较新显卡。 步骤:a。先查看显存品牌 b。提取bios c。修改bios,修改参数参考这个帖子https://blog.csdn.net/qq_19998189/article/details/78643879 d。刷回更改后的bios,方法参考c步骤。 e。对驱动签名。 f。重启电脑。前面a—e步骤未做完切勿重启电脑。 来源: https://blog.csdn.net/ocean666/article/details/98853251

I don't understand how to use Interrupt 21, AH=0ah

Deadly 提交于 2019-11-26 11:34:57
问题 My information is coming from here. The assignment asks for a program that reads in no more than 20 characters, converts those characters to upper case, and then prints the input as capitals. I have no idea how to access the input from int21/AH=0ah. I really can\'t ask a more precise question unless I understand what is linked above. Can someone explain? Also, I\'m using TASM if that makes any difference. Also, I\'m testing this on freedos. UPDATE1: Alright, thanks to your help, I believe I

Custom bootloader booted via USB drive produces incorrect output on some computers

六月ゝ 毕业季﹏ 提交于 2019-11-26 10:56:59
I am fairly new to assembly, but I'm trying to dive into the world of low level computing. I'm trying to learn how to write assembly code that would run as bootloader code; so independent of any other OS like Linux or Windows. After reading this page and a few other lists of x86 instruction sets, I came up with some assembly code that is supposed to print 10 A's on the screen and then 1 B. BITS 16 start: mov ax, 07C0h ; Set up 4K stack space after this bootloader add ax, 288 ; (4096 + 512) / 16 bytes per paragraph mov ss, ax mov sp, 4096 mov ax, 07C0h ; Set data segment to where we're loaded

引导过程与服务控制

﹥>﹥吖頭↗ 提交于 2019-11-26 08:54:05
一.引导过程 1.开机自检:BIOS(基本输入输出系统) 控制CUP虚拟化开关,系统的引导顺序,主机硬件时间。 BIOS需要BIOS电池来维持供电,保证数据的存放。 BIOS 电池放电会恢复出厂设置。 特点: (1.)加电自检 失败:通过屏幕或蜂鸣报警 (2.)硬件初始化 (3.)引导操作系统(BOOT) 2.MBR引导 主机开机后,首先根据硬盘第一个扇区中的MBR(主引导程序)将系统控制权传递给含操作系统引导文件的分区,读取主引导记录表的512字节,得以调用启动菜单(GRUB) 3.GRUB菜单 系统控制权传递给GRUB后,将会显示启动菜单给用户选择,进而加载Linux内核 4.加载Linux内核 介于各种硬件资源和系统进程之间,负责资源分配 和调度内核接到控制权后掌控整个Linux运行过程 5.init进程初始化 由Linux内核加载运行/sbin/init程序 系统中的第一个进程,控制Linux运行级别 6.Linux运行级别(censot7以上版本会以systemd替换掉init) 0:poweroff.target 关机状态,使用该级别时会关闭主机 1:rescue.target 单用户模式,不使用密码即可登录,多用于系统维护 2:multi-user.target 用户定义运行级别,默认等于3,不支持网络 3:multi-user.target 字符界面的完整多用户模式

linux启动从bios到bootleader

走远了吗. 提交于 2019-11-26 05:26:48
BIOS(Basic Input / Output System)启动,首先系统会进行自检,检测CPU,内存,显卡,I/O是否正常,如发现异常这个阶段会报错。 上一个阶段成功后会读取MBR(Master Boot Record)硬盘的0柱面,0磁盘,1扇区称为主引导扇区。它由三部分组成,主引导程序(bootleader),硬盘分区表DPT(disk partition table)和硬盘有效标志(55AA),如下图所示 使用grub2启动系统时,启动顺序如下图 grub2第一个需要安装的是boot.img,它由boot.S编译而成,一共512个字节,正是安装到启动盘的第一个扇区,这个扇区通常被称作MBR(Master Boot Record / 主引导记录扇区) BIOS完成任务后,会将boot.img从硬盘加载到内存的0x7c00中,为什么是0x7c00呢,0x7c00这个地址来自Intel的第一代个人电脑芯片8088,以后的cpu为了保持兼容一直使用这个地址。1981年8月,IBM公司最早的个人电脑IBM PC 5150上市,就用了这个芯片。当时搭配的操作系统是86-DOS, 这个操作系统需要的内存最少是32KB,我们知道,内存地址从0x0000开始编号,32KB的内存就是0x0000-0x7FFF可以使用。8088芯片本身需要占用0x0000-0x03FF