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

网站建设与管理案例教程免费网站制作教程

网站建设与管理案例教程,免费网站制作教程,appmakr官网,做我女朋友吧网站想学习linux,又不知道从哪里下手,体系太大,哪块内容都很多,无奈下选择了linux0.11作为入口,本系列将是学习笔记,希望能坚持下去吧 环境配置 这里使用win10bochs2.7 安装bochs 官网:https://b…

想学习linux,又不知道从哪里下手,体系太大,哪块内容都很多,无奈下选择了linux0.11作为入口,本系列将是学习笔记,希望能坚持下去吧

环境配置

  • 这里使用win10+bochs2.7

安装bochs

  • 官网:https://bochs.sourceforge.io,需要使用oldlinux提供的bochs linux0.11编译环境的话就安装2.1版本,这里安装了2.7(不兼容)
  • 安装目录新建个环境变量BXSHARE,并且也把该目录添加到环境变量Path中,文件定位和命令行工具用
    在这里插入图片描述

编译环境

安装nasm

  • 官网:https://nasm.us
  • 安装目录添加到环境变量Path中,到此可以做些汇编实验了

安装cygwin64

  • 官网:https://www.cygwin.com
  • 选择从互联网安装,下载站点随意,找到makegcc工具,安装后把bin目录添加到环境变量,这里均选择了最新版本
  • 因为能编译gcc的原版本太低了,好像是1.4,也有用3.4的,冒出来个大胆的想法,看是否能够移植到最新的gcc11上来(可能不行,但肯定也能学到不少东西),,,
  • 也有现成的boch编译环境可以用,需要安装boch2.1版本(和2.7不兼容),这里oldlinux.org下载链接提供一个bochs2.1的搭建好的linu0.11环境,也包含安装包,安装bochs后把其他文件都拷贝到安装目录就可以用了。里面已经移植了gcc1.4,里面也提供了linux0.11源码,做少量改动就可以编译,使用参考博文链接, 做的工作基本是把/linux/Makefile、/linux/fs/Makefile、/linux/lib/Makefile、/linux/kernel/Makefile、/linux/kernel/math/Makefile、/linux/kernel/blk_drv/Makefile、/linux/kernel/chr_drv/Makefile中的mstring-insns字段删除,并把/usr/local/bin中的ar改名为gar

其他资源

  • https://ftp.gnu.org/gnu/gcc/,gnu软件镜像站,可以找到老版本gcc
  • https://gitee.com/flythecoder/linux0.11, gitee上一个linux0.11源码仓库,配套<<linux内核0.11完全注释V3.0>>

hello world程序

  • 在自己的工作目录新建软盘
bximage

在这里插入图片描述

  • 在自己的工作目录新建一个boot.asm文件
org 07C00h                   ; 告诉编译器程序加载到07C00处mov ax, csmov ds, axmov es, axcall DispStr                    ; 调用显示字符串例程jmp $              ; 无限循环
DispStr:mov ax, BootMessagemov bp, ax                    ; es:bp = 串地址mov cx, 16                    ; cx = 串长度mov ax, 01301h            ; ah = 13, al = 01hmov bx, 000Ch              ; 页号为0(bh = 0) 黑底红字 (bl = 0Ch,高亮)mov dl, 0int 10h                          ; 10h号中断ret
BootMessage:  db "Hello,OS world!"
times 510-($-$$)   db   0            ; 填充剩下的空间,使生成的二进制代码恰好为512字节
dw 0xaa55
  • 编译
nasm boot.asm -o boot.bin
  • 写入软盘镜像,dd命令用于数据拷贝,if指定输入文件,of指定输出文件,bs指定每次速去和写入的数据块大小,count指定需要拷贝的数据块数量,conv=notrunc表示在写入输出文件时不覆盖(不截断)原有其他数据,即只覆盖写入的部分
dd if=boot.bin of=a.img bs=512 count=1 conv=notrunc

在这里插入图片描述
打开a.img可以看到boot.bin被写入了最前面
在这里插入图片描述

  • 编写bochs配置文件test.bxrc,这里用到了上面配置的环境变量$BXSHARE
# how much memorythe emulated machine will have  
megs: 32  # filename of ROMimages  
romimage:file=$BXSHARE/BIOS-bochs-latest
vgaromimage:file=$BXSHARE/VGABIOS-lgpl-latest# what disk imageswill be used  
floppya:1_44=a.img, status=inserted  # choose the bootdisk.  
boot: floppy  # where do we sendlog messages?  
log: bochsout.txt  # disable themouse  
mouse: enabled=0  # enable keymapping, using Us layout as default  
keyboard:keymap=$BXSHARE/keymaps/x11-pc-us.map
  • 启动bochs
    在这里插入图片描述
    可以看到hello world已经输出
    在这里插入图片描述

参考1:https://www.cnblogs.com/oasisyang/archive/2021/09/30/15358137.html,bochs一个hello world示例

http://www.hkea.cn/news/344676/

相关文章:

  • 德州乐陵德州seo公司seo批量建站
  • 贵州省建设监理协会官方网站seo代运营
  • 北京哪家做网站优化账号权重查询
  • 大唐网站建设培训管理平台
  • 男人和女人在床上做那个网站网络营销策划推广公司
  • 深圳市招投标交易中心天津谷歌优化
  • 厦门园网站忱建设百度推广怎么联系
  • 网站优化页面动态网站建设
  • 做网站域名公司每日重大军事新闻
  • 网站改版数据来源表改怎么做外链百科
  • wordpress怎样做单页网站谷歌查询关键词的工具叫什么
  • 县城做二手车网站自己建网站需要多少钱
  • 有没有专业做挂的网站引流推广方案
  • 购物网站开发文献综述百度收录需要多久
  • 营销型企业网站建设案例设计公司网站
  • 国际外贸网站电子商务
  • 南充做网站 www.xinbay.com全国免费发布广告信息
  • 备案 个人网站软件开发培训中心
  • 江苏网站建设网络推广关键词批量调词 软件
  • 东莞企业网站建设价格怎么在百度发布免费广告
  • 网站后台地址一般是在线seo优化工具
  • 海曙区住房和建设局网站备案域名
  • 网站建设硬件环境志鸿优化设计答案
  • 网页游戏网址推荐宁波网站推广网站优化
  • 福建就福建省住房与城乡建设厅网站高端网站建设企业
  • 网站如何做seo规划app怎么开发出来的
  • 吴江住房和城乡建设局官方网站产品软文是什么
  • 公司网站制作设谷歌seo是什么职业
  • 北京品牌高端网站建设公司燕郊今日头条
  • 网站制作公司徐州宁波网站seo哪家好