Method and apparatus for providing a preemptive task scheduling scheme in a real time operating system
First Claim
Patent Images
1. A method of providing preemptive task scheduling for a Real Time Operating System (RTOS), the method comprising:
- assigning a two-level priority to each task that is created, the two-level priority comprising a kernel priority and a user-defined priority;
creating a priority bitmap corresponding to the kernel priority;
enabling a priority bit in the priority bitmap, the priority bit indicating a status of a respective task; and
executing the task based on the priority bit,wherein the kernel priority is a unique incremental number that is assigned to each task being created through a predefined protocol,wherein the user-defined priority is the general task priority as defined by the user and can be any number within an allowed priority range for a task scheduler, andwherein each task can be mapped to a bit in the priority bitmap on a one-to-one basis.
1 Assignment
0 Petitions
Accused Products
Abstract
Method and apparatuses are provided for providing preemptive task scheduling for a Real Time Operating System (RTOS). A two-level priority is assigned to each task that is created. The two-level priority includes a kernel priority and a user-defined priority. A priority bitmap corresponding to the kernel priority is created. A priority bit in the priority bitmap is enabled. The priority bit indicates a status of a respective task.
33 Citations
17 Claims
-
1. A method of providing preemptive task scheduling for a Real Time Operating System (RTOS), the method comprising:
-
assigning a two-level priority to each task that is created, the two-level priority comprising a kernel priority and a user-defined priority; creating a priority bitmap corresponding to the kernel priority; enabling a priority bit in the priority bitmap, the priority bit indicating a status of a respective task; and executing the task based on the priority bit, wherein the kernel priority is a unique incremental number that is assigned to each task being created through a predefined protocol, wherein the user-defined priority is the general task priority as defined by the user and can be any number within an allowed priority range for a task scheduler, and wherein each task can be mapped to a bit in the priority bitmap on a one-to-one basis. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus for providing preemptive task scheduling for a Real Time Operating System (RTOS) comprising:
-
a memory; a processing unit coupled to the memory and configured to; assign a two-level priority to each task that is created, the two-level priority comprising a kernel priority and a user-defined priority; create a priority bitmap corresponding to the kernel priority;
enable a priority bit in the priority bitmap, the priority bit indicating a status of a respective task; andexecute the task based on the priority bit, wherein the kernel priority is a unique incremental number that is assigned to each task being created through a predefined protocol, wherein the user-defined priority is the general task priority as defined by the user and can be any number within an allowed priority range for a task scheduler, and wherein each task can be mapped to a bit in the priority bitmap on a one-to-one basis. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A communication device for providing preemptive task scheduling for a Real Time Operating System (RTOS), comprising:
-
one or more non-transitory computer-readable media; and a processor which, when executing one or more programs stored on the one or more non-transitory computer-readable media; assign a two-level priority to each task that is created, the two-level priority comprising a kernel priority and a user-defined priority; create a priority bitmap corresponding to the kernel priority; enable a priority bit in the priority bitmap, the priority bit indicating a status of a respective task; execute the task based on the priority bit, wherein the kernel priority is a unique incremental number that is assigned to each task being created through a predefined protocol, wherein the user-defined priority is the general task priority as defined by the user and can be any number within an allowed priority range for a task scheduler, and wherein each task can be mapped to a bit in the priority bitmap on a one-to-one basis.
-
Specification