{"name":"tg-rcore-tutorial-ch8","vers":"0.4.2-preview.1","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.2-preview.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.2-preview.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.2-preview.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.2-preview.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.2-preview.1","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.2-preview.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.2-preview.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.2-preview.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.2-preview.1","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.2-preview.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.2-preview.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.2-preview.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.2-preview.1","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.2-preview.1","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"d22f8f8d6e7a31f7e4545ff7bf1e5df80979ffaf1d8bbb71856892084cba7b34","features":{"exercise":[]},"yanked":false,"pubtime":"2026-02-18T14:32:30Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.2-preview.2","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.2-preview.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.2-preview.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.2-preview.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.2-preview.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.2-preview.2","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.2-preview.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.2-preview.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.2-preview.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.2-preview.2","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.2-preview.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.2-preview.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.2-preview.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.2-preview.2","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.2-preview.2","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"ae227c83d588f3e287bef69f4bdfa69e7dec3b3d4d71e9f890e4bee14abcbdc7","features":{"exercise":[]},"yanked":false,"pubtime":"2026-02-18T16:11:44Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.2-preview.4","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.2-preview.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.2-preview.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.2-preview.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.2-preview.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.2-preview.4","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.2-preview.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.2-preview.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.2-preview.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.2-preview.4","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.2-preview.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.2-preview.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.2-preview.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.2-preview.4","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.2-preview.4","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"053c8798b13500a9b79f61c527b06ce1bd5338a3fbe18451e5947a67beaf7f71","features":{"exercise":[]},"yanked":false,"pubtime":"2026-02-18T17:05:29Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.2-preview.6","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.2-preview.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.2-preview.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.2-preview.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.2-preview.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.2-preview.6","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.2-preview.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.2-preview.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.2-preview.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.2-preview.6","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.2-preview.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.2-preview.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.2-preview.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.2-preview.6","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.2-preview.6","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"b72b6e6d69650b395485f30b99432d30ec6430deed77d6177494bb60192724c0","features":{"exercise":[]},"yanked":false,"pubtime":"2026-02-19T14:58:27Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.2-preview.7","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.2-preview.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.2-preview.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.2-preview.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.2-preview.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.2-preview.7","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.2-preview.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.2-preview.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.2-preview.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.2-preview.7","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.2-preview.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.2-preview.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.2-preview.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.2-preview.7","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.2-preview.7","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"2082d1800bd7045ad4286c7dc8422d314aac3e03a7bc353141b02442414efa99","features":{"exercise":[]},"yanked":false,"pubtime":"2026-02-19T15:17:24Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.2-preview.8","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.2-preview.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.2-preview.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.2-preview.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.2-preview.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.2-preview.8","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.2-preview.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.2-preview.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.2-preview.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.2-preview.8","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.2-preview.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.2-preview.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.2-preview.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.2-preview.8","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.2-preview.8","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"08520a9b95700116c7c9ac2c31de912666a4fd16e53f1a86374902c1ca30308c","features":{"exercise":[]},"yanked":false,"pubtime":"2026-02-20T04:55:21Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.2-preview.9","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.2-preview.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.2-preview.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.2-preview.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.2-preview.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.2-preview.9","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.2-preview.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.2-preview.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.2-preview.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.2-preview.9","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.2-preview.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.2-preview.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.2-preview.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.2-preview.9","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.2-preview.9","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"2ef2b81ae45043df92bddc3f3b26072e4564b688e49155dbef9246fb41550707","features":{"exercise":[]},"yanked":false,"pubtime":"2026-02-20T05:40:33Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.2-preview.10","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.2-preview.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.2-preview.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.2-preview.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.2-preview.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.2-preview.10","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.2-preview.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.2-preview.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.2-preview.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.2-preview.10","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.2-preview.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.2-preview.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.2-preview.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.2-preview.10","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.2-preview.10","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"117fcc98f347ac3f903123a33e3f35666952759422d90784ddba0db8793ed9ac","features":{"exercise":[]},"yanked":false,"pubtime":"2026-02-20T06:07:26Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.3","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.3","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.3","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.3","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.3","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"b6ddb3badbd6b0b5e0db4b33cfe8807e173ca107e658c79aaa9ba8b969a83cbf","features":{"exercise":[]},"yanked":false,"pubtime":"2026-02-20T08:25:55Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.4","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.4","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.4","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.4","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.4","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"9defab4518e5e76b6531d242ba56d16edfc355218e74cc2146e1977189f54abf","features":{"exercise":[]},"yanked":false,"pubtime":"2026-02-20T09:36:53Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.5","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.5","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.5","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.5","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.5","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"06dd5ea4f59a0e2f7a920373b58251c67fa55ee6358112b8126415c8fa092c00","features":{"exercise":[]},"yanked":false,"pubtime":"2026-03-03T02:26:09Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.6","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.5","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.5","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.5","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.5","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"bcd46ad056cb84781b170cae85444602b3dfaa13f1933f80b2fe3190dbdda655","features":{"exercise":[]},"yanked":false,"pubtime":"2026-03-03T03:01:21Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.7","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.7","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.7","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.7","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.7","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"8e6967c638c6a5af52bdb4ba00fffe62df0a3328c5b2af2935eee6e213ddfef4","features":{"exercise":[]},"yanked":false,"pubtime":"2026-03-11T10:01:49Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.8","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.8","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.8","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.8","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.8","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"005f161cc55e6dd86f83aff9a147ce9a9aa1ddfc8de633d6543eb4dc55ae5a9b","features":{"exercise":[]},"yanked":false,"pubtime":"2026-03-11T10:27:44Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.9","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.8","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.9","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.8","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.8","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"3bb574768b12f582ab1a6801d052647150d4849f1e99ab4f9843e4cea8b3eb04","features":{"exercise":[]},"yanked":false,"pubtime":"2026-03-30T14:57:19Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.10","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.8","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.9","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.8","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.8","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"a46ed8d46c0d88d434959d440b2661d302181e698aae767f67d75e3fffba3569","features":{"exercise":[]},"yanked":false,"pubtime":"2026-03-31T14:23:20Z"}
{"name":"tg-rcore-tutorial-ch8","vers":"0.4.11","deps":[{"name":"riscv","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"spin","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tg-console","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-console"},{"name":"tg-easy-fs","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-easy-fs","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-easy-fs"},{"name":"tg-kernel-alloc","req":"^0.4.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-alloc"},{"name":"tg-kernel-context","req":"^0.4.8","features":["foreign"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-context"},{"name":"tg-kernel-vm","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-kernel-vm"},{"name":"tg-linker","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-linker"},{"name":"tg-linker","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build","package":"tg-rcore-tutorial-linker"},{"name":"tg-sbi","req":"^0.4.9","features":["nobios"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sbi"},{"name":"tg-signal","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal"},{"name":"tg-signal-impl","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-signal-impl"},{"name":"tg-sync","req":"^0.4.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-sync"},{"name":"tg-syscall","req":"^0.4.8","features":["kernel"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-syscall"},{"name":"tg-task-manage","req":"^0.4.8","features":["thread"],"optional":false,"default_features":true,"target":null,"kind":"normal","package":"tg-rcore-tutorial-task-manage"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"virtio-drivers","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"xmas-elf","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"7acaa924b312b2eaf8cc14909c0f973f1a9bfed0d2e14d175a3b95455db0a54c","features":{"exercise":[]},"yanked":false,"pubtime":"2026-04-01T14:27:29Z"}
