https://demo.kale-ryan.top/rr/
Anda dapat menggunakan antrian default untuk pengujian, atau Anda dapat mengunggah file teks. File teks harus mengikuti format tertentu.
Membuat aplikasi antarmuka grafis yang dapat membuka file teks lokal, membaca informasi dan mengubahnya menjadi daftar proses, menjadwalkan proses, dan menampilkan situasi penjadwalan pada antarmuka grafis. Pembuatan antarmuka grafis harus mempertimbangkan lintas platform sehingga dapat berjalan pada platform Linux dan Windows.
Keseluruhan proyek harus memiliki kopling yang rendah dan kohesi yang tinggi untuk memastikan fleksibilitas, pemeliharaan, dan skalabilitas sistem, serta meningkatkan penggunaan kembali kode.
Sebagai bahasa pengembangan utama, C# menggunakan kerangka ASP.NET CORE. Arsitektur keseluruhannya adalah pemisahan front-end dan back-end. Konkurensi multi-thread digunakan untuk mensimulasikan penjadwalan CPU dan paralelisme I/O adalah sebagai berikut.
RrScheduling
├── RobinRound
└── WebApp
Proyek RobinRound adalah perpustakaan kelas untuk algoritma penjadwalan. Struktur proyek utama adalah sebagai berikut.
RobinRound
├── Instruction.cs
├── InstructionType.cs
├── Pcb.cs
└── Scheduling.cs
WebApp adalah implementasi antarmuka grafis, berdasarkan kerangka ASP.NET CORE. Untuk kenyamanan pemrograman, file front-end dan layanan back-end dimasukkan ke dalam satu proyek.
WebApp
├── Middlewares
├── Models
├── Pages
├── Program.cs
└── Services
Informasi penjadwalan pertukaran front-end dan back-end melalui koneksi WebSocket. Folder Middlewares berisi middleware untuk memproses permintaan WebSocket. Model berisi berbagai kelas untuk memproses data. Halaman berisi file halaman web front-end. layanan yang memanggil metode penjadwalan proses.