操作系统
太古时代
这个作者很懒,什么都没留下…
展开
-
汉字与UTF编码的互相转换(Java)
获取汉字的UTF8编码public static void main(String[] args) throws Exception { String str = "金"; byte [] bs = str.getBytes("UTF-16"); System.out.println(bytesToHexFun(bs));}public static S...原创 2020-03-14 21:27:03 · 2350 阅读 · 0 评论 -
学习操作系统:自己动手写操作系统 ->chapter4_c Boot分析
boot.asm;%define _BOOT_DEBUG_ ; 做 Boot Sector 时一定将此行注释掉!将此行打开后用 nasm Boot.asm -o Boot.com 做成一个.COM文件易于调试%ifdef _BOOT_DEBUG_ org 0100h ; 调试状态, 做成 .COM 文件, 可调试%else ...原创 2019-03-07 14:28:06 · 312 阅读 · 0 评论 -
学习操作系统:自己动手写操作系统 ->chapter5_e Loader分析
boot分析参考:https://blog.csdn.net/jinold/article/details/88210770loader.asm;nasm loader.asm -o loader.binorg 0100h jmp LABEL_START ; Start ; FAT12 磁盘的头; ------------------------------------...原创 2019-04-06 23:48:00 · 227 阅读 · 0 评论 -
学习操作系统:自己动手写操作系统 ->chapter5_e Loader分析--VGA版本
loaderVGA.asm;nasm loaderVGA.asm -o loader.binorg 0100h jmp LABEL_START ; Start ; FAT12 磁盘的头; ----------------------------------------------------------------------BS_OEMName DB 'ForrestY...原创 2019-04-09 23:16:29 · 209 阅读 · 0 评论 -
学习操作系统:自己动手写操作系统 ->chapter5_e Kernel的制作--VGA版本
前面已经分析过了boot.asm和loader.asm的代码,有Text版本和VGA版本。Text版本的Kernel书里有,直接看就可以。本此学习时VGA版本的Kernel,因为书里没有,在网上没有看到,自己整合了两本书的内容。由于没有找到支持Windows的支持elf_i386的ld命令。所以本Kernel.bin是在Linux下编译的。boot.asm[BITS 32]...原创 2019-04-17 23:51:09 · 364 阅读 · 0 评论 -
查看端口被占用命令
查看端口:netstat -aon|findstr "8089"查看PID:tasklist|findstr "5036"原创 2019-06-04 16:01:32 · 524 阅读 · 0 评论 -
学习操作系统:进入保护模式,理解GDT(2):VGA
本章用另一种写法解释GDT,以及进入32位模式的方法代码解析参照:https://blog.csdn.net/jinold/article/details/86561133; 编译方法:nasm 32mode_VGA.asm -o 32mode_VGA.img;--------------------------------------------------------------...原创 2019-02-12 13:42:30 · 470 阅读 · 0 评论 -
学习操作系统:为什么显卡在内存中的映射是0b8000H
作者:北极链接:https://www.zhihu.com/question/269649445/answer/351632444来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 显存基地址虽然是人为确定的,但真要追究原因的话,还是可以找到一些原因的。首先,16位时代8086的寻址范围是0000:0000~FFFF:000F,最早划给RAM的区...转载 2019-02-11 13:05:12 · 887 阅读 · 1 评论 -
学习操作系统:磁盘和FAT12的理解(2) -- 文件系统基础
FAT12的分析磁盘电脑中常用的“扇区”、“簇”、“块”、“页”等概念https://blog.csdn.net/fyfcauc/article/details/39576065https://blog.csdn.net/enjoy5512/article/details/50954180一张1.44MB的3.5英寸软盘,有两个面,一面有80个磁道,每个磁道分为18个扇区,每个...原创 2019-02-22 13:34:28 · 768 阅读 · 0 评论 -
学习操作系统:进入保护模式,理解GDT(1):TEXT
直接上代码,以及追加了自己对GDT的理解,为了理解GDT,翻遍了各种文章,但没有代码的支撑,凭空的理解很浪费时间。下面的代码,稍微简化了原先的代码(于老师的代码^^)。把pm.asm需要的代码从pm.inc挪出来,取消了pm.inc的引入。; ==========================================; 32mode_TEXT.asm; 编译方法:nasm ...原创 2019-01-20 12:51:56 · 537 阅读 · 0 评论 -
学习操作系统:Hello World
最简单的操作系统:Hello World 说是操作系统,更准确的说,直接利用CPU输出“Hello World”到显示器。在我的理解是,这个所谓的最简单的操作系统,连实模式都不算。上代码好了,开始上代码,看看直接的效果。我的习惯是先看效果,再去分析和理解代码。显示器上显示“Hello World”有两种办法,一个是调用BIOS中断int 10h。一个是不走BIOS,直接...原创 2019-01-28 22:43:20 · 861 阅读 · 0 评论 -
学习操作系统:汇编与C语言,以及汇编指令的调试
1. 练习环境操作系统:WindowsGCC:mingw64汇编:NASM2. C语言获取汇编方法的返回值汇编中把值放在AX寄存器中,GCC读取AX的内容Text.asmmessage: dd 'Hello'messageLen equ $ - messagesection .text;导出函数global getMessage;函数定义--getMe...原创 2019-02-22 13:18:34 · 264 阅读 · 0 评论