编译 linux 0.01

1.下载linux-0.11-devel-060625(这个有gar,编译时要用),bochs 2.5

2.建新硬盘img
  用bochs自带的bxp_w_picpath建,按<linux-0.11内核完全解析>里的说明进行,也是256M.
  然后fdisk,mkfs,然后把mkdir root, 然后把/bin,/dev,/usr复制过来,这样硬盘的minix系统就OK了。

2.按这个patch修改内核代码:
  http://www.oldlinux.org/oldlinux/viewthread.php?tid=4827    
  只能手动改,那个patch从网页上COPY下来,不能用了。
  boot.s里的|改!,用vi的一个命令就搞定了,好在用不了几分钟.

*** 为了防止将来的linux0.01启动后报 HD controller not ready.    ***
  *** 需要修改hd.c -> controller_ready()                          ***
  *** 1000改为100000                                              ***
  *** (inb(HD_STATUS)&0xc0)!=0x40 改为 (inb(HD_STATUS)&0x80)      ***
  *** 这个参考 http://www.eetop.cn/blog/html/15/193015-21187.html ***

*** 还要改下硬盘的参数:(config.h)         ***
  *** #elif    defined(LINUS_HD)            ***
  *** #define HD_TYPE { 16,63,520,300,980,0} ***

3.把修改后的代码放到linux-0.11-devel-060625
  修改后的代码打个包:
  tar cf linux.tar linux (在centos或redhat打包,然后用WinSCP取出来)
  然后把linux.tar通过winp_w_picpath放入rootp_w_picpath-0.11,(也可以在centos,或redhat里进行)
  然后启动bochs(用bochs-hd那个),启动后,把rootp_w_picpath放入A盘,(最初放在B盘,怎么都不好用).
  然后mdir a:看一下,会看到linux.tar
  然后mcopy a:linux.tar /usr/src2(在哪里都行,在/mnt里也行)
  另外,删除文件可用mdel a:filename

4.然后就进入/usr/src2,解开linux.tar: tar xf linux.tar
  然后cd linux,然后make

5.把生成的Image再通过rootp_w_picpath-0.11传出来.
  mcopy Image a:
  再用winp_w_picpath从rootp_w_picpath-0.11里取出这个Image,新建个目录linux0.01,把linux-0.01-devel-060625里的bochs-hd.bxrc弄过来。
  改里面的参数:
  floppya: 1_44="Image", status=inserted  #这个Image就是编译生成的,只要和实际的文件对应就行了。
  ata0-master: type=disk, path="hd256.img", mode=flat, cylinders=520, heads=16, spt=63

6.启动,OK了.

转载于:https://blog.51cto.com/11210601/1744517

编译 linux 0.01相关推荐

  1. linux 0.01内核分析与操作系统设计 pdf,《Linux 0.01内核分析与操作系统设计——创造你自己的操作系统》...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 readme 本光盘为<Linux 0.0.1内核分析与操作系统设计--创造你自己的操作系统>一书的配套光盘,读者可自由取其源文件做学习,研究 ...

  2. linux1.0内核下载,《Linux 0.01 内核分析与操作系统设计》(Linxu 0.01Source)

    中文名: Linux_0_01_内核分析与操作系统设计 英文名: Linxu 0.01Source 发行时间: 2003年 地区: 大陆 对白语言: 普通话 简介: 清华 卢军<Linux0.0 ...

  3. Linux0.1源码分析,《Linux 0.01内核分析与操作系统设计——创造你自己的操作系统》...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 readme 本光盘为<Linux 0.0.1内核分析与操作系统设计--创造你自己的操作系统>一书的配套光盘,读者可自由取其源文件做学习,研究 ...

  4. Linux 0.01 内存管理

    源码下载 Linux 源码下载路径位于 https://mirrors.edge.kernel.org/pub/linux/kernel/,这篇博客所需要的 0.01 版本源码通过点击链接 https ...

  5. Linux 0.01 源代码目录分布

    目录名 所属文件 boot 核心引导代码 fs 文件系统 include 头文件 init Init 进程,系统中执行的第一个进程 kernel 系统调用 lib 库代码 mm 内存管理 tools ...

  6. Linux Kernel 0.01 的编译和运行

    Linux Kernel 0.01 的编译和运行 本文操作环境均在 Linux 系统中实现. ===================================================== ...

  7. Linux 0.11 实验环境搭建

    如果想学习Linux 0.11,实验环境是必不可少的.最好是能编译,能运行,能调试. 如今大家都是用64位的Linux操作系统,而且是高版本的GCC(4.0以上),所以环境搭建是个难题.要么就是编译后 ...

  8. windows下编译linux内核,windows上可编译Linux内核

    编译过程: 1). 解压后默认的文件夹位置是在D:\Linux-0.11,如果你不是将文件解压到该目录下, 你要修改MinGW32目录下的MinGW32.bat文件,将里面的PATH指向MinGW32 ...

  9. vs2015编译linux源码,使用Visual Studio 2017(VS2017)编译OpenCC 1.0.4 (Open Chinese Convert)源代码...

    摘要:本文介绍了Win7 64位环境下OpenCC(Open Chinese Convert) 1.0.4源码编译全过程,除VS2017外,VS2013以上版本也应该基本同样适用,其他版本的Windo ...

最新文章

  1. jquery源码分析(七)——事件模块 event(二)
  2. ubuntu16.04安装CUDA 8.0(很详尽,包括一些坑的解决方法)
  3. 获取族_批量添加族参数(上)
  4. 搞定所有的跨域请求问题
  5. Java中的命令设计模式
  6. Java多线程学习三十二:Callable 和 Runnable 的不同?
  7. 在Linux环境下安装和配置phpmyadmin
  8. 利用ISCSI存储技术构建IP存储网络(实战篇)
  9. 支持nvme的linux_linux里的nvme驱动代码分析
  10. Linux学习笔记之CentOS7的 wheel组
  11. 美工建模-PR视频剪辑自学教程
  12. 电脑自动操作软件_六大写作软件功能解说,网络作家不可错过的码字软件宝典...
  13. 【Excel】数据透视表—按年、季度、月份汇总报表
  14. css边框图片的使用场景
  15. VS连接数据库运行后显示对象名无效
  16. cron 每隔3天_crontab实现每隔多少天执行一次脚本的两种方法
  17. JavaScript实现的简单烟花特效代码1.15
  18. Easypack之Alpine容器系列:Redmine
  19. 我为什么选择Firefox作为主力浏览器
  20. 看完 GitHub 上这几个奇葩项目后,我忍不住笑了 233333

热门文章

  1. mysql weindow 安装_windows下怎么安装mysql
  2. html资源文件记载进度条,HTML5矢量实现文件上传进度条
  3. centos7共享网络盘_实验08:局域网文件和互联网文件的共享
  4. pytorch optim.SGD
  5. javascript HTMLMediaElement
  6. py2neo database
  7. linux下pip安装模块失败,Linux pip包安装错误
  8. 收藏!50个帮你自我提升的网站
  9. 人才梯队的搭建:55页集团人才梯队建设方案,梯队人员的管理
  10. 在一台物理服务器上搭建VSAN实验测试