VMware的磁盘格式化

在OS的文件系统中,需要预先将磁盘格式化为FAT32,从而进行相应的底层操作。然而对于VMware玩家而言,无法像操作物理硬盘一样直接进行格式化分区,因此需要间接进行相关的方法。

一、准备工作

  • 一个虚拟机中的操作系统,本文选用了ubuntu。
  • 虚拟机中磁盘格式化工具,本文选用了gparted。
  • 实现OS和磁盘操作OS的磁盘共享操作,参考链接。由于实现OS的硬盘操作命令是基于IDE接口,因此磁盘类型和VMware配置文件也要相应的改成IDE,注意两个虚拟机的节点要设置为一致,配置文件修改的部分也需要一致。

二、磁盘格式化

  • 执行命令
sudo gparted
  • 创建分区表

在这里插入图片描述

  • 创建分区
    在这里插入图片描述
    执行操作即可。

三、原文的一些bug

  1. timer.c中没有对变量jiffies清零,导致timer的打印无限触发,调整:
void do_timer(void * data)
{
	struct timer_list * tmp = container_of(list_next(&timer_list_head.list),struct timer_list,list);
	while((!list_is_empty(&timer_list_head.list)) && (tmp->expire_jiffies <= jiffies))
	{
		del_timer(tmp);
		tmp->func(tmp->data);
		tmp = container_of(list_next(&timer_list_head.list),struct timer_list,list);
		jiffies = 0;//add
	}

	color_printk(RED,WHITE,"(HPET:%ld)",jiffies);
}
  1. schedule中需要屏蔽中断,否则会卡死在disk_handler中,估计是因为哪里死锁了。
void schedule()
{
	struct task_struct *tsk = NULL;

	cli();
	...
	sti();
}
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值