diff options
| author | miguel <miguel@miguel-acer.softwarefools.com> | 2014-07-15 18:19:08 +0200 |
|---|---|---|
| committer | miguel <miguel@miguel-acer.softwarefools.com> | 2014-07-15 18:19:08 +0200 |
| commit | be0505ecd594e15c5769b4d8ca97ab347b2ed1b6 (patch) | |
| tree | cf1ce39f655b5e1c4157922ff9cab21ff77e6c91 /kernel | |
| parent | d00e64542cb58b25cd67e8c3b682d0e07312f441 (diff) | |
minor experiments
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/interrupts.h | 2 | ||||
| -rw-r--r-- | kernel/kernel.c | 16 | ||||
| -rw-r--r-- | kernel/shell.c | 7 |
3 files changed, 24 insertions, 1 deletions
diff --git a/kernel/interrupts.h b/kernel/interrupts.h index 7c3e119..5542801 100644 --- a/kernel/interrupts.h +++ b/kernel/interrupts.h @@ -5,6 +5,6 @@ #define INT_MAX 255 // size of our interrupts table -int int_unhandled=0; // counting unhandled interrupts +int int_unhandled; // counting unhandled interrupts #endif diff --git a/kernel/kernel.c b/kernel/kernel.c index 7118706..a25ba83 100644 --- a/kernel/kernel.c +++ b/kernel/kernel.c @@ -36,6 +36,22 @@ void kernel_main() timer_init(); scr_put_string_nl("Configured PIT Channel 0 : Mode 2 : 1/25 s."); + //probe memory + scr_put_string_nl("Probing core memory..."); + char *prober=0xf000; + + for(;prober<0xfffffff;prober+=0xf00) + { + *prober='x'; + if(*prober!='x')break; + + } + + //0xA5000 + scr_put_hex((uint32_t)prober>>16); + scr_put_hex((uint32_t)prober&0xffff); + scr_put_string_nl(" finished!"); + // init and interrupt decriptor table int_init(0x08); diff --git a/kernel/shell.c b/kernel/shell.c index 837a4c3..4507931 100644 --- a/kernel/shell.c +++ b/kernel/shell.c @@ -1,4 +1,5 @@ #include "kernel.h" +#include "interrupts.h" #define COMMAND_LENGTH 255 @@ -66,6 +67,12 @@ void shell_execute() scr_put_hex(timer16); scr_put_string_nl(" seconds passed since system start."); } + else if(1==strcmp(command,"INT")) + { + scr_put_string_nl(" getting count of unhandeled interrupts"); + scr_put_string(" "); + scr_put_hex(int_unhandled); + } else { scr_put_string_nl(" unsupported command, sorry!"); |
