WKern
Loading...
Searching...
No Matches
tf.c
Go to the documentation of this file.
1
/*
2
WKern - A Bare Metal OS / Kernel I am maKing (For Fun)
3
Copyright (C) 2025 Wdboyes13
4
5
This program is free software: you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation, either version 3 of the License, or
8
any later version.
9
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU General Public License for more details.
14
15
You should have received a copy of the GNU General Public License
16
along with this program. If not, see <https://www.gnu.org/licenses/>.
17
*/
18
19
#include <
io/kio.h
>
21
__attribute__
((noreturn))
void
TripleFault
() {
22
Kprintf
(
"Triple Fault Triggered"
);
23
__asm__
volatile
(
"lidt (0)"
);
// Load an invalid IDT
24
__asm__
volatile
(
"int $0x03"
);
// Cause interrupt = triple fault = CPU reset
25
__builtin_unreachable();
26
}
TripleFault
void TripleFault()
kio.h
Kprintf
void Kprintf(const char *fmt,...)
Formatted output to the screen.
Definition
printer.c:152
__attribute__
__attribute__((noreturn))
Force triple fault (Makes CPU Reset)
Definition
tf.c:21
src
err
tf.c
Generated on
for WKern by
1.14.0