![]() ![]() Package the Bochs compiled files and source code and put them back into the floppy drive Select 1, change the first floppy drive, set to just tmp.img:Īnd then switch back to the Bochs virtual machine, then the system a:/floppy drive is tmp.img, will Gdb-linux-0.11.tar copied to the user directory, unzip the compilation:īuild image System.map file after successįour. Then switch back to the terminal and you can see: Press the number 1 key to enter the system, click on the Bochs toolbar config, red circle position: img File:Ĭopy the Gdb-linux-0.11.tar into the virtual floppy disk In the linux-0.11-devel-050518 directory, you can see DISKA.IMG and diskb.img, copying an. The principle is to copy files to each other via virtual floppy disks (1.44M). Copy the source file to the Bochs simulation systemĬan run the above BOCHSRC-HDBOOT.BXRC, now it is necessary to put the preparation of the Gdb-linux-0.11.tar in the system. Here no longer used, interested can try it yourself, about Bochs use method, you can go to bxrc files in the linux-0.11-devel-050518 directory:īOCHSRC-FDA.BXRC BOCHSRC-FDB.BXRC BOCHSRC-HD.BXRC Showing the 4 partitions of the virtual hard disk, the first partition with a bootable Linux 0.11 system, and the Linux 0.11 system running by the number 1 key, I will eventually compile the Linux 0.11 kernel code on this system: Vgaromimage:file=/usr/local/share/bochs/vgabios-lgpl-latest Solution: Change Vgaromimage: $BXSHARE/vgabios-lgpl-latest to usr/local/share/bochs/vgabios-lgpl-latest Go to directory view, find/usr/share/bochs/directory below and no vgabios-lgpl-latest file Message:ROM:couldn ' t open ROM image file '/usr/share/bochs/vgabios-lgpl-latest '. (3) Bochsrc-hd.bxrc:194:unknown parameter for Parport1 ignored. (1) >PANIC>PANIC<< bochsrc-hd.bxrc:284:directive ' floppy_command_delay ' not understood If it works correctly, it will get as shown: Romimage:file= $BXSHARE/bios-bochs-latest Vgaromimage: $BXSHARE/vgabios-lgpl-latestĢ, romimage:file= $BXSHARE\bios-bochs-latest, address=0xf0000 change to get We only use the BOCHSRC-HDBOOT.BXRC file here.ġ, vgaromimage: $BXSHARE\vgabios-lgpl-latest back slash change to get Tar zxvf (the original is, I found in the extracted files can not find the BOCHSRC-HDBOOT.BXRC file, changed to ) Put these two packages into the/root/kernel/and unzip Here you need to download two packages to My Gdb-linux-0.11.tar file is attached here. Place this script in the linux-0.11 directory and execute it again.Īfter the execution, packaging this source code. Sed-i ' 1,$ s/-mstring-insns//g ' $filename Sed-i "$first _line s/-o-fs/-o-g-fs/g" $filename name ' Makefile ' |while read filename doĪll_lines=$ (grep ldflags $filename-nh | awk-f: ' ') In the source directory of all the makefileĬFLAGS = Wall-o-g-fstrength-reduce-fomit-frame-pointer-fcombine-regs//Add-G flag, remove-mstring-insnsĬhange the value of syssize in Boot/bootsect.s and TOOLS/BUILD.C to 0x8000īecause makefile files are many, here I wrote a script program adjust_make_for_gdb do the above work directlyįind. This source package will eventually be put into the Bochs simulation system to compile, because the debug ring mirror is Bochs simulation of the Intel x86 software, so do not compile this kernel in the SUSE system,Īnd in the Bochs simulation system to compile the kernel also to change some configuration files, the operation is as follows:Ĭhange RAMDISK = #-dramdisk=512 to RAMDISK =-dramdisk=2048Ĭhange Root_dev=/dev/hd6 to Root_dev=floppy OK, download the linux-0.11 kernel source package and put the source package in/root/kernel/: If error:x11/extensions/xrandr.h:no such file or directory appears,Īlternatively, you may want to install g and use the software management of SuSE yast to search for GCC installations. If the X Windows libraries were not found error, you can use the software management of SuSE YaST to search xorg and install the Xorg Basic installation package as shown in: tar.gz installation package, note, do not download RPM package, because the installation needs to add Gdb-stub function, RPM package does not carry this function, downloaded after the execution: Preparatory work (performed as root user): Reading and understanding the complete code can have a deep understanding of the whole system's operation process. This article describes how to use the Bochs debug kernel linux-0.11 version under the SuSE Linux Enterprise Desktop SystemĪlthough linux-0.11 is an early kernel code, the code is not more than 20,000 lines, but it is basically a compact version of the current kernel code, perfectly formed. Http://Ubuntu 10.04 installation Bochs 2.4.5 notes ![]()
0 Comments
Leave a Reply. |