flat assembler
Message board for the users of flat assembler.
Index
> OS Construction > Kernel reability (+ FAT question) |
Author |
|
narada 12 Mar 2008, 20:08
not ABC - Floppy Controller (FDC ))))
|
|||
12 Mar 2008, 20:08 |
|
revolution 13 Mar 2008, 08:49
I'm not really sure what you are asking but here goes:
1. I expect that the OS will know that a service has crashed when it causes an exception. This means the service has tried to access memory or IO it does not own or div/0 etc. 2. An FDC module without the BIOS may be include in some of the hobby OSes that are discussed here. Have a look at the source codes for the FDC drivers, what you want may be there. The other part about the FAT reader should be easier to find, but if you can't find one then coding it should be quite simple. |
|||
13 Mar 2008, 08:49 |
|
narada 13 Mar 2008, 12:28
Yes, but when process has crashed like all time loop", when it does not have an exception error, like this:
" @x: jmp @x " How kernel can detect this??? |
|||
13 Mar 2008, 12:28 |
|
edfed 13 Mar 2008, 12:55
watch dog.
watcha bootcha goot doggy style. |
|||
13 Mar 2008, 12:55 |
|
narada 13 Mar 2008, 18:12
what dog??? ))
|
|||
13 Mar 2008, 18:12 |
|
edfed 13 Mar 2008, 18:37
WATCH DOG .
google:> watch dog, CR |
|||
13 Mar 2008, 18:37 |
|
narada 13 Mar 2008, 19:17
thanks, but this is not the same I searched.
See, process have no any relations with outer system, including kernel or drivers or timer. Simple program that only loops (@x: jmp @x) - so how can any timer or kernel find this bug??? My idea to see how many CPU time it have and if process use CPU very hard, then kernel do "priority = (priority - 1)". Until the priority = idle. So, the process already will not crash all system. This is not for processes with prioryty level = realtime. The idea of sending signals to process I wish realize only on the drivers-system, becouse EVERY driver must have (in my idea) a function of replying on kernel reability-signals, but for the others programs this method is incorrect. |
|||
13 Mar 2008, 19:17 |
|
edfed 13 Mar 2008, 19:54
sure it is the same. but there are a lot of variants in watch dogging.
the principle is to verify the access to an instruction periodically. at main label, for example, we can directlly execute a reset counter instruction. then, the counter, connected to timer IRQ, will decrement each tick. if the counter = 0, then, the program is in an infinite loop. then, it's time to jump again to main. and then, the program goes out of the loop. |
|||
13 Mar 2008, 19:54 |
|
narada 13 Mar 2008, 20:32
Yes 100% with you. )) but it's only for (in my idea, see text below) "drivers-system".
But how make this with other, "user-mode programs", they can don't have "a reset counter instruction" - the programmer may not have to think about OS-architecture. Understand me? ))) |
|||
13 Mar 2008, 20:32 |
|
edfed 13 Mar 2008, 20:55
is it the os construction section?
if yes, then, implementation of watch dog timer is part of the question. and application programmer can think about it if the os have a service for. it's to the system constructor to implement watch dog. then when launching a program, the system can set a breakpoint in the program.this break point will reset the counter. cooking without cooking (running without running, buy without buying, sleep without sleeping..etc...), there is the ambition of programmers? if you want a feature in your programs, it is to you to do that. |
|||
13 Mar 2008, 20:55 |
|
narada 13 Mar 2008, 22:53
idea with breakpoint - the best. Thanks )))
|
|||
13 Mar 2008, 22:53 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.