cosmosを使って簡単なOSを作っています。私はc#の初心者です。cosmos のデフォルト コードの Run() メソッドは、VMware を終了するまでループします。ただし、少し修正すると、プログラムは自動的に終了します。理由がわかりません。私はそれをループさせようとしています。修正する前の Cosmo のデフォルト コード:
public class Kernel : Sys.Kernel
{
protected override void BeforeRun()
{
Console.WriteLine("Cosmos booted successfully. Type a line of text to get it echoed back.");
}
protected override void Run()
{
Console.Write("Input: ");
var input = Console.ReadLine();
Console.Write("Text typed: ");
Console.WriteLine(input);
}
}
以下は私の新しい Run() メソッドです。他のすべては同じままです。
protected override void Run() {
Console.WriteLine("Input:");
String input = Console.ReadLine();
if (input.StartsWith("echo"))
{
var index = input.IndexOf("echo");
var initial = input.Substring(0, index);
var final = input.Substring(index + "echo".Length);
var echoInput = initial + final;
Console.WriteLine(echoInput);
}
}