摘要:
学习操作系统原理最好的方法是自己写一个简单的操作系统。 GrapeOS操作系统之前一直运行在模拟器和虚拟机中,今天我们来演示一下GrapeOS在真机上运行的情况。 一、物理机真机 今天演示用的真机是一台ThinkPad笔记本电脑,照片如下: 二、开机桌面 按电脑的电源按钮开机,由于GrapeOS非常 阅读全文
摘要:
为了学习操作系统原理我自己写了一个简单的操作系统,取名叫GrapeOS。 GrapeOS是一个x86多任务桌面操作系统,但非常简单,代码只有4千行。 下面我来简单介绍一下GrapeOS。 一、功能介绍 1.桌面 在桌面上可以通过鼠标双击“My Compuer”来打开资源管理器。 2.资源管理器 资源 阅读全文
摘要:
用代码生成器生成一些固定的或有规律的代码,可以有效的提高工作效率。我写了个开源的,放在了GitHub上,希望能对有需要的朋友有所帮助。 GitHub代码地址https://github.com/jackchengyujia/CodeX4J GitHub已打包的可运行jar下载地址https://ra 阅读全文
摘要:
上篇:用Docker在一台笔记本电脑上搭建一个具有10个节点7种角色的Hadoop集群(上)-快速上手Docker 上篇介绍了快速上手Docker部分,下面接着介绍搭建Hadoop集群部分。 六、搭建Hadoop伪分布模式 我们先用前面创建的这个容器来搭建Hadoop伪分布模式做测试,测试成功后再搭 阅读全文
摘要:
如果想在一台电脑上搭建一个多节点的Hadoop集群,传统的方式是使用多个虚拟机。但这种方式占用的资源比较多,一台笔记本能同时运行的虚拟机的数量是很有限的。这个时候我们可以使用Docker。Docker可以看做是一种轻量级的虚拟机,占用资源少,用起来和传统的虚拟机很像,使用的时候可以类比VMware或 阅读全文
摘要:
一、项目简介 贪吃蛇是一个很经典的游戏,也很适合用来学习。本教程将和大家一起做一个Android版的贪吃蛇游戏。 我已经将做好的案例上传到了应用宝,无病毒、无广告,大家可以放心下载下来把玩一下。应用宝不允许重名,我取名叫“快乐贪吃蛇”。应用宝链接:http://sj.qq.com/myapp/det 阅读全文
摘要:
简介 学习操作系统原理最好的方法是自己写一个简单的操作系统。 GrapeOS是一个非常简单的x86多任务桌面操作系统,源代码只有四千行,非常适合用来学习操作系统原理。 源码地址:https://gitee.com/jackchengyujia/grapeos 视频教程地址:https://www.b 阅读全文
摘要:
学习操作系统原理最好的方法是自己写一个简单的操作系统。 之前讲解开发环境时并没有介绍具体的安装过程,有网友反应CentOS的安装配置有问题,尤其是共享文件夹。本讲我们就来补充介绍一下在VirtualBox中安装配置CentOS的具体过程,彻底解决GrapeOS开发环境问题。 一、新建虚拟机 1.在V 阅读全文
摘要:
学习操作系统原理最好的方法是自己写一个简单的操作系统。 之前我们在电脑的启动过程中介绍过boot程序的主要任务就是加载并运行loader程序,本讲我们就来实现。 本讲代码文件共2个: boot.asm loader.asm 一、代码及讲解 本讲所用到的知识点都是之前已经用过的,只是在本讲中综合应用了 阅读全文
摘要:
学习操作系统原理最好的方法是自己写一个简单的操作系统。 本讲代码文件为boot.asm,要读取的文件为data.txt。 一、在FAT16文件系统中读取文件的流程 在GrapeOS中用到的文件少且小,所有文件都放在了根目录下,数量不会超过16个,占用的簇不会超过254个。所以读取目录项只需要读取根目 阅读全文
摘要:
学习操作系统原理最好的方法是自己写一个简单的操作系统。 新买的硬盘和优盘在第一次使用时需要格式化,有时候还需要分区。这是为什么呢?分区和格式化到底是干啥呢?本讲将为大家解开这些疑惑。 一、文件系统 1.分区 首先说一下分区,我们平时看到的C盘、D盘等就是一个个分区。硬盘第一个扇区的一部分固定空间叫做 阅读全文
摘要:
学习操作系统原理最好的方法是自己写一个简单的操作系统。 在上一讲中我们学习了用汇编语言读硬盘,本讲我们来学习用汇编语言写硬盘。同样也是设计一个简单的实验,实验内容为: 在内存中准备一段有特征的512字节数据,地址为0x7e00~0x7fff,其特征是前3个字节依次为4、5、6,最后3个字节依次为6、 阅读全文
摘要:
学习操作系统原理最好的方法是自己写一个简单的操作系统。 本讲我们设计一个简单的读硬盘实验。通过一定的方法使硬盘第二个扇区的前3个字节依次为1、2、3,最后3个字节依次为3、2、1,中间的506个字节全为0。然后通过读硬盘程序将硬盘第二个扇区的数据读取到内存0x7e00-0x7fff的地方,也就是内存 阅读全文
摘要:
学习操作系统原理最好的方法是自己写一个简单的操作系统。 一、硬盘控制器 我们前面已经讲过硬盘控制器是一种I/O接口,CPU通过它就能间接的读写硬盘。硬盘控制器主要有IDE和SATA两种,我们这里只考虑IDE控制器。 电脑里硬盘控制器有2个,一个叫主控制器,另一个叫从控制器。而每个硬盘控制器能连接两个 阅读全文
摘要:
学习操作系统原理最好的方法是自己写一个简单的操作系统。 一、外设和I/O接口 前面我们介绍过冯·诺依曼结构包含5部分,其中输入设备和输出设备统称为外部设备,简称外设。常见的外设有鼠标、键盘、显示器、硬盘等。由于外设种类多、差异大、速度慢等原因,导致CPU无法直接与外设沟通。于是在CPU和外设之间产生 阅读全文