效果图: 具体实现在代码中有详细的注释,请看代码. 实现执行CMD命令的核心代码(Cmd.cs): [csharp] using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; using System.Threading; using System.Management; using System.Globalization; na
我们把命令行窗口单独做成一个新的任务. 要实现字符输入,只要在键盘被按下的时候向console_task(命令行窗口任务)的FIFO发送数据即可.但要发送数据必须要知道struct FIFO的内存地址才行. 把 struct FIFO 放到 struct TASK里面.基本上没有什么任务是完全用不到FIFO的,因此我们把它们绑定起来. struct TASK { int sel, flags; // sel is used to save the index of GDT int priorit