You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Should the priority-based scheduling be enforced at API level? How should the test suite handle kernels without strict scheduling?
Some kernel implementations may prefer not returning BadId and causing an undefined behavior instead.
Raw interface extensibility:
MutexProtocol should be non_exhaustive? How is the kernel supposed to deal with unknown values?
The same goes for QueueOrder
Multi-processing
Some properties added to a Bag might be unsafe to ignore. How can we ensure the safety? What properties might fall under this criterion?
API design:
Implement object safety
The definer methods should be named define to make room for runtime construction.
r3::kernel::Cfg isn't a pretty name.
Kernel is not a raw trait. KernelMutex is a raw trait. But they are both in traits.
Is it really a good idea to require application code to use raw traits in trait bounds but use Kernel for global operations? Kernel being a kitchen sink is actually consistent with higher-level kernel object wrappers (like how Task::set_priority is bound by System: raw::KernelTaskSetPriority). But the real problem is that the raw traits are supposed to be bound by kernel-side semver guarantees.
r3_kernel:
r3_kernel::CfgBuilder is an awful name.
Documentation:
Update CHANGELOG.md
Define the versioning scheme
The text was updated successfully, but these errors were encountered:
Raw interface specificity:
BadId
and causing an undefined behavior instead.Raw interface extensibility:
MutexProtocol
should benon_exhaustive
? How is the kernel supposed to deal with unknown values?QueueOrder
Bag
might be unsafe to ignore. How can we ensure the safety? What properties might fall under this criterion?API design:
define
to make room for runtime construction.r3::kernel::Cfg
isn't a pretty name.Kernel
is not araw
trait.KernelMutex
is araw
trait. But they are both intraits
.raw
traits in trait bounds but useKernel
for global operations?Kernel
being a kitchen sink is actually consistent with higher-level kernel object wrappers (like howTask::set_priority
is bound bySystem: raw::KernelTaskSetPriority
). But the real problem is that theraw
traits are supposed to be bound by kernel-side semver guarantees.r3_kernel
:r3_kernel::CfgBuilder
is an awful name.Documentation:
CHANGELOG.md
The text was updated successfully, but these errors were encountered: