-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Starting from this commit, we have the first working implementation of a scheduler for our kernel. This scheduler is a basic pre-emptive single processor round robin one. There are many improvements possible, which will be added later. For more information, please refer to the documentation. Merges #14 Signed-off-by: Léo DUBOIN <[email protected]>
- Loading branch information
Showing
39 changed files
with
1,421 additions
and
291 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
#pragma once | ||
|
||
/** | ||
* @file kernel/arch/i686/process.h | ||
* | ||
* @defgroup x86_process Processes - x86 | ||
* @ingroup process | ||
* @ingroup x86 | ||
* | ||
* @{ | ||
*/ | ||
|
||
#include <kernel/types.h> | ||
|
||
/** | ||
* Contains all the system-level information about a task | ||
* @struct x86_process | ||
*/ | ||
typedef struct x86_process { | ||
|
||
u32 cr3; ///< Physical address of the process's page directory | ||
|
||
/** | ||
* @brief Address of the top of the process's kernel stack. | ||
* | ||
* This is the value used by the kernel to locate the | ||
* stack to use when switching from ring3 -> ring0. | ||
* It should be loaded inside the current cpu's | ||
* @link tss TSS.ESP0 @endlink when switching process. | ||
*/ | ||
u32 esp0; | ||
|
||
u32 esp; ///< The current stack pointer of the process | ||
|
||
} process_context_t; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.