[ros-dev] Re: [ros-svn] [ion] 14799: KD System Rewrite:

Hartmut Birr hartmut.birr at gmx.de
Mon Apr 25 19:31:10 CEST 2005


Hi,

your changes breaks compiling with DBG := 1 and KDBG := 0.

- Hartmut

ion at svn.reactos.com wrote:

>KD System Rewrite:
>
>    - Totally dynamic based on the principle of Native Providers built-in the Kernel (like Screen, 
>      FileLog and Serial) and a pluggable Wrapper which is optionally compiled (Bochs, GDB)
>    - Nothing changed in KDBG, except for that its settings (KDSERIAL/KDNOECHO) are now stored in
>      KdbDebugState instead.
>    - Wrappers are currently built uncondtionally. With rbuild, I'll make them easily removable.
>    - Debug Log code simplified greatly, sped up and now supports printing even the first boot messages,
>      which wasn't supported before.
>    - Removed most of KDBG compile-time settings, ones which are needed are in include/dbg as macros now.
>    - Left in some kdbg init code and break code, but it could be made to be used as a 'wrapper' for those
>      functions. I will do it later.
>    - Made a hack for KdpEnterDebuggerException..it seems to be called differently and at different times
>      for GDB vs KDBG and I couldn't unite them.
>    - KdpServiceDispatcher now does both the documented and ros-internal debug functions and will eventually
>      be called through INT2D from keyboard.sys instead of as an API.
>
>All in all, this patch makes KD  separated from KDBG and creates a pluggable architecture for creating future wrappers that don't require changing tons of code in the future. It improves the debug
>log by printing even the earliest debug messages to it and it removes many of the manual ifdef(KDBG) but making them automatic though a single macro file. It makes extra debugging functionality optional and it
>allows removal of a private API from our exports.
>
>
>Added files:
>trunk/reactos/ntoskrnl/include/internal/kdbochs.h
>trunk/reactos/ntoskrnl/include/internal/kdgdb.h
>trunk/reactos/ntoskrnl/kd/kdinit.c
>trunk/reactos/ntoskrnl/kd/kdio.c
>trunk/reactos/ntoskrnl/kd/kdmain.c
>trunk/reactos/ntoskrnl/kd/wrappers/
>trunk/reactos/ntoskrnl/kd/wrappers/bochs.c
>trunk/reactos/ntoskrnl/kd/wrappers/gdbstub.c
>
>Updated files:
>trunk/reactos/drivers/input/keyboard/keyboard.c
>trunk/reactos/include/ddk/kefuncs.h
>trunk/reactos/ntoskrnl/Makefile
>trunk/reactos/ntoskrnl/ex/init.c
>trunk/reactos/ntoskrnl/include/internal/dbg.h
>trunk/reactos/ntoskrnl/include/internal/kd.h
>trunk/reactos/ntoskrnl/include/internal/kdb.h
>trunk/reactos/ntoskrnl/include/internal/ke.h
>trunk/reactos/ntoskrnl/include/internal/module.h
>trunk/reactos/ntoskrnl/include/ntoskrnl.h
>trunk/reactos/ntoskrnl/io/iomgr.c
>trunk/reactos/ntoskrnl/io/pnpreport.c
>trunk/reactos/ntoskrnl/kd/service.c
>trunk/reactos/ntoskrnl/kdbg/kdb.c
>trunk/reactos/ntoskrnl/kdbg/kdb_cli.c
>trunk/reactos/ntoskrnl/kdbg/kdb_serial.c
>trunk/reactos/ntoskrnl/kdbg/kdb_symbols.c
>trunk/reactos/ntoskrnl/ke/bug.c
>trunk/reactos/ntoskrnl/ke/catch.c
>trunk/reactos/ntoskrnl/ke/i386/exp.c
>trunk/reactos/ntoskrnl/ke/i386/irq.c
>trunk/reactos/ntoskrnl/ke/i386/syscall.S
>trunk/reactos/ntoskrnl/ldr/loader.c
>trunk/reactos/ntoskrnl/mm/RPoolMgr.h
>trunk/reactos/ntoskrnl/mm/marea.c
>trunk/reactos/ntoskrnl/ntoskrnl.def
>
>Deleted files:
>trunk/reactos/ntoskrnl/kd/dlog.c
>trunk/reactos/ntoskrnl/kd/gdbstub.c
>trunk/reactos/ntoskrnl/kd/kdebug.c
>
>_______________________________________________
>Ros-svn mailing list
>Ros-svn at reactos.com
>http://reactos.com:8080/mailman/listinfo/ros-svn
>
>
>  
>



More information about the Ros-dev mailing list