• Orange's_1_win7下搭建环境


    工欲善其事,必先利其器。

    由于公司电脑工作环境是win7,为了学习于渊的Orange,所以就在windows下配置环境:
     
    1.nasm:
    nasm汇编 http://www.nasm.us/   
    版本:最新2.11.06
    记得添加环境变量
     
    2.cygwin:
    安装完就可以使用一些常用的linux命令了,比如dd命令了。
     
    3.Bochs:
    虚拟机,模拟器。相比其他virtualbox和VMware等,好处是可以方便调试,另外书里也是用的Bochs
     
    我是先下载bochs-2.6.7.exe安装,再下载bochs-2.6.7-win64.zip的,解压里面有两个可执行文件,是64位编译版本,拷到安装目录下。
    这样就有四个可执行文件了,分别是32位和64位的带与不带debug版本的bochs。
     
    安装时最好把linux demo选上,可以参考。
    配置文件可以参考linux的demo中的配置文件。为了实践第一个引导扇区的例子,我的配置如下:
     
    ###############################################################
    # bochsrc.txt file for DLX Linux disk image.
    ###############################################################
     
    # how much memory the emulated machine will have
    megs: 32
     
    # filename of ROM images
    romimage: file=../BIOS-bochs-latest
    vgaromimage: file=../VGABIOS-lgpl-latest
     
    # what disk images will be used 
    # floppya: 1_44=floppya.img, status=inserted
    # floppyb: 1_44=floppyb.img, status=inserted
    floppya: 1_44=a.img, status=inserted
     
    # hard disk
    # ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
    # ata0-master: type=disk, path="hd10meg.img", cylinders=306, heads=4, spt=17
     
    # choose the boot disk.
    # boot: c
    boot: floppy
     
    # default config interface is textconfig.
    #config_interface: textconfig
    #config_interface: wx
     
    #display_library: x
    # other choices: win32 sdl wx carbon amigaos beos macintosh nogui rfb term svga
     
    # where do we send log messages?
    log: bochsout.txt
     
    # disable the mouse, since DLX is text only
    mouse: enabled=0
     
    # set up IPS value and clock sync
    cpu: ips=15000000
    clock: sync=both
     
    # enable key mapping, using US layout as default.
    #
    # NOTE: In Bochs 1.4, keyboard mapping is only 100% implemented on X windows.
    # However, the key mapping tables are used in the paste function, so 
    # in the DLX Linux example I'm enabling keyboard_mapping so that paste 
    # will work. Cut&Paste is currently implemented on win32 and X windows only.
     
    keyboard: keymap=../keymaps/x11-pc-us.map
    #keyboard: keymap=../keymaps/x11-pc-fr.map
    #keyboard: keymap=../keymaps/x11-pc-de.map
    #keyboard: keymap=../keymaps/x11-pc-es.map
     
    4.DOS:待保护模式时补充
     
    运行第一个引导扇区例子效果如图:
  • 相关阅读:
    奇妙的html 和 Css【关于html、Css 开发中重要的细节和一些小奇怪现象】
    JavaWeb项目img标签的图片无法加载的原因及解决方法
    批量建堆(二叉堆【完全二叉堆】)~~批量建堆
    为什么要面向对象(转)
    不从0开始序列的matlab卷积实验
    虚数、傅里叶变换中负频率的意义
    运动的6个自由度
    转载:关于Ω, f, w的前世今生
    利用matplotlib画用于机器学习的K线图练手任务
    信息工程学院——电子信息工程到底学什么?
  • 原文地址:https://www.cnblogs.com/RandyXu/p/4073925.html
Copyright © 2020-2023  润新知