Kernel debug in Windbg using tcp - is it possible?

Hi there!
In order to debug my driver, I would like to use windbg and a serial cable connecting two machines, but one of them doesn´t have free serial ports. I guess I can create a pipe between a virtual serial port and a tcp port in both machines in order to achieve this (i.e, virtual com <-> ethernet <-> virtual com), but I don´t know how. Does anybody here use this technique to connect two machines? What program/service I need to use? Is there another way to do this?

Thank you so much!

Lucas.


Fale com seus amigos de graça com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/

Have you thought of getting FireWire/1394 cards (which are dirt cheap,
if you look in the right places) and using them instead of RS232? You
might be a bit more satisfied with that, though I’ve never used it
myself (I probably will once this project is over and I have some time
to play with PCI cards other than the one I’m working on).

David Riley
Hardware Engineer
Mantaro Networks
20410 Century Blvd
Germantown, MD 20874
(301)528-2244 x532

Lucas Bracher wrote:

Hi there!
In order to debug my driver, I would like to use windbg and a serial
cable connecting two machines, but one of them doesn´t have free serial
ports. I guess I can create a pipe between a virtual serial port and a
tcp port in both machines in order to achieve this (i.e, virtual com <->
ethernet <-> virtual com), but I don´t know how. Does anybody here use
this technique to connect two machines? What program/service I need to
use? Is there another way to do this?

Thank you so much!

Lucas.


Fale com seus amigos de graça com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/ — Questions? First check the Kernel
Driver FAQ at http://www.osronline.com/article.cfm?id=256 To
unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Hi,
I’ don’t know if it will help you , and I’ve never tried it -   but you can use USB2 for debugging  …
On Tue 16 Jan 14:36 2007 Lucas Bracher wrote:
Hi there!
In order to debug my driver, I would like to use windbg and a serial cable connecting two machines, but one of them doesn´t have free serial ports. I guess I can create a pipe between a virtual serial port and a tcp port in both machines in order to achieve this (i.e, virtual com <-> ethernet <-> virtual com), but I don´t know how. Does anybody here use this technique to connect two machines? What program/service I need to use? Is there another way to do this?
Thank you so much!
Lucas.  


Fale com seus amigos de graça com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/ — Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256 To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

You cannot use TCP/IP on this you have to use:

  1. Serial ports
  2. 1394 channels - consider getting the cards from OSR since not all
    cards/chipsets are reliable
  3. USB - this is vista only and is not particularily reliable.

You can use a virtual machine and debug on one system with virtual serial
ports, but your model will not work.


Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
http://www.windrvr.com
Remove StopSpam from the email to reply

“Lucas Bracher” wrote in message
news:xxxxx@ntdev…
> Hi there!
> In order to debug my driver, I would like to use windbg and a serial
> cable connecting two machines, but one of them doesn´t have free serial
> ports. I guess I can create a pipe between a virtual serial port and a
> tcp port in both machines in order to achieve this (i.e, virtual com <->
> ethernet <-> virtual com), but I don´t know how. Does anybody here use
> this technique to connect two machines? What program/service I need to
> use? Is there another way to do this?
>
> Thank you so much!
>
> Lucas.
>
> __________________________________________________
> Fale com seus amigos de graça com o novo Yahoo! Messenger
> http://br.messenger.yahoo.com/

Use 1394a cards with the Texas Instruments chipset. You can buy them from
OSR. If you get the cheapest firewire cards, you will want to use serial.
The VIA chipset is not too bad, but just stick with the TI, especially on
the target. The IO code is contained in the OS and not a driver, so it
appears to have been written for the TI chipset and has problems with
others.

“David Riley” wrote in message news:xxxxx@ntdev…
> Have you thought of getting FireWire/1394 cards (which are dirt cheap,
> if you look in the right places) and using them instead of RS232? You
> might be a bit more satisfied with that, though I’ve never used it
> myself (I probably will once this project is over and I have some time
> to play with PCI cards other than the one I’m working on).
>
>
> David Riley
> Hardware Engineer
> Mantaro Networks
> 20410 Century Blvd
> Germantown, MD 20874
> (301)528-2244 x532
>
> Lucas Bracher wrote:
>> Hi there!
>> In order to debug my driver, I would like to use windbg and a serial
>> cable connecting two machines, but one of them doesn´t have free serial
>> ports. I guess I can create a pipe between a virtual serial port and a
>> tcp port in both machines in order to achieve this (i.e, virtual com <->
>> ethernet <-> virtual com), but I don´t know how. Does anybody here use
>> this technique to connect two machines? What program/service I need to
>> use? Is there another way to do this?
>>
>> Thank you so much!
>>
>> Lucas.
>>
>> __________________________________________________
>> Fale com seus amigos de graça com o novo Yahoo! Messenger
>> http://br.messenger.yahoo.com/ — Questions? First check the Kernel
>> Driver FAQ at http://www.osronline.com/article.cfm?id=256 To
>> unsubscribe, visit the List Server section of OSR Online at
>> http://www.osronline.com/page.cfm?name=ListServer
>>
>

Dell Optiplex computers seem to work well with USB2. The requirements are
interesting and anyone planning to use USB should read the docs and make
sure they understand EHCI and a couple of other terms. That little dongle
is rather expensive, but seems to be available from only one source, though
there are a couple of resellers.

“Don Burn” wrote in message news:xxxxx@ntdev…
> You cannot use TCP/IP on this you have to use:
>
> 1. Serial ports
> 2. 1394 channels - consider getting the cards from OSR since not all
> cards/chipsets are reliable
> 3. USB - this is vista only and is not particularily reliable.
>
> You can use a virtual machine and debug on one system with virtual serial
> ports, but your model will not work.
>
>
> –
> Don Burn (MVP, Windows DDK)
> Windows 2k/XP/2k3 Filesystem and Driver Consulting
> http://www.windrvr.com
> Remove StopSpam from the email to reply
>
>
>
> “Lucas Bracher” wrote in message
> news:xxxxx@ntdev…
>> Hi there!
>> In order to debug my driver, I would like to use windbg and a serial
>> cable connecting two machines, but one of them doesn´t have free serial
>> ports. I guess I can create a pipe between a virtual serial port and a
>> tcp port in both machines in order to achieve this (i.e, virtual com <->
>> ethernet <-> virtual com), but I don´t know how. Does anybody here use
>> this technique to connect two machines? What program/service I need to
>> use? Is there another way to do this?
>>
>> Thank you so much!
>>
>> Lucas.
>>
>> __________________________________________________
>> Fale com seus amigos de graça com o novo Yahoo! Messenger
>> http://br.messenger.yahoo.com/
>
>
>

The short answer to your question is no. The physical connection between
the two machines must be either serial or 1394. (USB2 is a partially
supported answer that I wouldn’t personally recommend.) The 1394 connection
can be through an adapter card, including Cardbus or ExpressCard.

The TCP discussion in the WinDbg docs is about connecting to the debugger
machine over the network, not about connecting to the target machine from
the debugger.

  • Jake Oshins
    Windows Kernel Team

“Lucas Bracher” wrote in message
news:xxxxx@ntdev…
Hi there!
In order to debug my driver, I would like to use windbg and a serial cable
connecting two machines, but one of them doesn´t have free serial ports. I
guess I can create a pipe between a virtual serial port and a tcp port in
both machines in order to achieve this (i.e, virtual com <-> ethernet <->
virtual com), but I don´t know how. Does anybody here use this technique to
connect two machines? What program/service I need to use? Is there another
way to do this?

Thank you so much!

Lucas.

__________________________________________________
Fale com seus amigos de graça com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/

Lucas,

If the machine lacking the serial port is the
running the debugger rather than being the
target, one solution is to use a USB/Serial
converter. Windbg runs fine through a virtual serial port.

It was only after I got my laptop that I found it
had no serial ports at all on it and this was the
ideal solution for running WinDbg on the
laptop. A USB/Serial convert is cheap.

Cheers,

Mark.

“Lucas Bracher” wrote in message
>news:xxxxx@ntdev…
>Hi there!
>In order to debug my driver, I would like to use windbg and a serial cable
>connecting two machines, but one of them doesn?t have free serial ports. I
>guess I can create a pipe between a virtual serial port and a tcp port in
>both machines in order to achieve this (i.e, virtual com <-> ethernet <->
>virtual com), but I don?t know how. Does anybody here use this technique to
>connect two machines? What program/service I need to use? Is there another
>way to do this?
>
>Thank you so much!
>
>Lucas.

You need to have either a serial or a 1394 port available on the target host. You do not need to have a serial or 1394 port on debugger host.

My target machines sit in the lab and their serial port (only pins 2,3 and 5 connected!) are connected to a “Digi” console server box. This box in turn exposes a TCP port to which I connect a COM emulator application (e.g TCP-com). This application in turn exposes a virtual com port on my desktop where I run windbg.

Harish

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:bounce-275773-
xxxxx@lists.osr.com] On Behalf Of Mark S. Edwards
Sent: Tuesday, January 16, 2007 10:58 AM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Kernel debug in Windbg using tcp - is it possible?

Lucas,

If the machine lacking the serial port is the
running the debugger rather than being the
target, one solution is to use a USB/Serial
converter. Windbg runs fine through a virtual serial port.

It was only after I got my laptop that I found it
had no serial ports at all on it and this was the
ideal solution for running WinDbg on the
laptop. A USB/Serial convert is cheap.

Cheers,

Mark.

>“Lucas Bracher” wrote in message
> >news:xxxxx@ntdev…
> >Hi there!
> >In order to debug my driver, I would like to use windbg and a serial
> cable
> >connecting two machines, but one of them doesn?t have free serial ports.
> I
> >guess I can create a pipe between a virtual serial port and a tcp port in
> >both machines in order to achieve this (i.e, virtual com <-> ethernet <->
> >virtual com), but I don?t know how. Does anybody here use this technique
> to
> >connect two machines? What program/service I need to use? Is there
> another
> >way to do this?
> >
> >Thank you so much!
> >
> >Lucas.
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer

It’s worth mentioning that if you’re using the serial port, generally it
has to be a built-in port on the target machine (i.e. most PCI serial
cards won’t work; only ones that respond to the original ISA I/O ranges
will, which isn’t going to be any modern ones). The general idea here
is that the port used can’t require any drivers to run for kernel
debugging (which is obvious when you think about it); the serial ports
(at the legacy I/O locations) and 1394 have support built into the OS.

I had my company order me a Dell for debugging purposes specifically
with a serial port built in, but Dell’s idea of a built-in serial port
on their cheap machines is a PCI card (for which they only supply the
drivers as preinstalled!). So beware.

David Riley
Hardware Engineer
Mantaro Networks
20410 Century Blvd
Germantown, MD 20874
(301)528-2244 x532

Harish Arora wrote:

You need to have either a serial or a 1394 port available on the target host. You do not need to have a serial or 1394 port on debugger host.

My target machines sit in the lab and their serial port (only pins 2,3 and 5 connected!) are connected to a “Digi” console server box. This box in turn exposes a TCP port to which I connect a COM emulator application (e.g TCP-com). This application in turn exposes a virtual com port on my desktop where I run windbg.

Harish

> -----Original Message-----
> From: xxxxx@lists.osr.com [mailto:bounce-275773-
> xxxxx@lists.osr.com] On Behalf Of Mark S. Edwards
> Sent: Tuesday, January 16, 2007 10:58 AM
> To: Windows System Software Devs Interest List
> Subject: Re:[ntdev] Kernel debug in Windbg using tcp - is it possible?
>
>
> Lucas,
>
> If the machine lacking the serial port is the
> running the debugger rather than being the
> target, one solution is to use a USB/Serial
> converter. Windbg runs fine through a virtual serial port.
>
> It was only after I got my laptop that I found it
> had no serial ports at all on it and this was the
> ideal solution for running WinDbg on the
> laptop. A USB/Serial convert is cheap.
>
> Cheers,
>
> Mark.
>
>
>
>> “Lucas Bracher” wrote in message
>>> news:xxxxx@ntdev…
>>> Hi there!
>>> In order to debug my driver, I would like to use windbg and a serial
>> cable
>>> connecting two machines, but one of them doesn´t have free serial ports.
>> I
>>> guess I can create a pipe between a virtual serial port and a tcp port in
>>> both machines in order to achieve this (i.e, virtual com <-> ethernet <->
>>> virtual com), but I don´t know how. Does anybody here use this technique
>> to
>>> connect two machines? What program/service I need to use? Is there
>> another
>>> way to do this?
>>>
>>> Thank you so much!
>>>
>>> Lucas.
>> —
>> Questions? First check the Kernel Driver FAQ at
>> http://www.osronline.com/article.cfm?id=256
>>
>> To unsubscribe, visit the List Server section of OSR Online at
>> http://www.osronline.com/page.cfm?name=ListServer
>
> —
> Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>

I tried to put TCP-Com on both sides to emulate a serial cable, but Don´s article (thanks, Don!) tells the debugger uses directly the port. So I guess my solution (use virtual ports on both sides) will not work… :frowning:
Or there´s a weird & nerd & assured way to use virtual ports on both sides?

Thanks!

Lucas.

Harish Arora escreveu: You need to have either a serial or a 1394 port available on the target host. You do not need to have a serial or 1394 port on debugger host.

My target machines sit in the lab and their serial port (only pins 2,3 and 5 connected!) are connected to a “Digi” console server box. This box in turn exposes a TCP port to which I connect a COM emulator application (e.g TCP-com). This application in turn exposes a virtual com port on my desktop where I run windbg.

Harish

> -----Original Message-----
> From: xxxxx@lists.osr.com [mailto:bounce-275773-
> xxxxx@lists.osr.com] On Behalf Of Mark S. Edwards
> Sent: Tuesday, January 16, 2007 10:58 AM
> To: Windows System Software Devs Interest List
> Subject: Re:[ntdev] Kernel debug in Windbg using tcp - is it possible?
>
>
> Lucas,
>
> If the machine lacking the serial port is the
> running the debugger rather than being the
> target, one solution is to use a USB/Serial
> converter. Windbg runs fine through a virtual serial port.
>
> It was only after I got my laptop that I found it
> had no serial ports at all on it and this was the
> ideal solution for running WinDbg on the
> laptop. A USB/Serial convert is cheap.
>
> Cheers,
>
> Mark.
>
>
>
> >“Lucas Bracher” wrote in message
> >news:xxxxx@ntdev…
> >Hi there!
> >In order to debug my driver, I would like to use windbg and a serial
> cable
> >connecting two machines, but one of them doesn´t have free serial ports.
> I
> >guess I can create a pipe between a virtual serial port and a tcp port in
> >both machines in order to achieve this (i.e, virtual com <-> ethernet <->
> >virtual com), but I don´t know how. Does anybody here use this technique
> to
> >connect two machines? What program/service I need to use? Is there
> another
> >way to do this?
> >
> >Thank you so much!
> >
> >Lucas.
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

__________________________________________________
Fale com seus amigos de graça com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/

What it comes down to is this: your target device (the one on which you
load your driver) has to be a physical serial port (the kind you could
talk to with QBASIC, let’s say). The host can be anything… my host
has the aforementioned PCI serial card (scavenged from Dell’s Cracker
Jacks prize) along with its built-in serial port and talks to three
devices just fine (of course, it would probably be more efficient to
just use a switchbox, but I had the card on hand).

Virtual serial ports require drivers, and those won’t work for a
kernel-mode debugger (not for Windows, anyway… OS X can be debugged
via UDP/IP, but it helps that Apple can assume a limited number of
Ethernet chipsets on which it will run, plus its ARP facilities in
remote kernel mode aren’t super).

David Riley
Hardware Engineer
Mantaro Networks
20410 Century Blvd
Germantown, MD 20874
(301)528-2244 x532

Lucas Bracher wrote:

I tried to put TCP-Com on both sides to emulate a serial cable, but
Don´s article (thanks, Don!) tells the debugger uses directly the port.
So I guess my solution (use virtual ports on both sides) will not work… :frowning:
Or there´s a weird & nerd & assured way to use virtual ports on both sides?

Thanks!

Lucas.

*/Harish Arora /* escreveu:
>
> You need to have either a serial or a 1394 port available on the
> target host. You do not need to have a serial or 1394 port on
> debugger host.
>
> My target machines sit in the lab and their serial port (only pins
> 2,3 and 5 connected!) are connected to a “Digi” console server box.
> This box in turn exposes a TCP port to which I connect a COM
> emulator application (e.g TCP-com). This application in turn exposes
> a virtual com port on my desktop where I run windbg.
>
> Harish
>
> > -----Original Message-----
> > From: xxxxx@lists.osr.com [mailto:bounce-275773-
> > xxxxx@lists.osr.com] On Behalf Of Mark S. Edwards
> > Sent: Tuesday, January 16, 2007 10:58 AM
> > To: Windows System Software Devs Interest List
> > Subject: Re:[ntdev] Kernel debug in Windbg using tcp - is it possible?
> >
> >
> > Lucas,
> >
> > If the machine lacking the serial port is the
> > running the debugger rather than being the
> > target, one solution is to use a USB/Serial
> > converter. Windbg runs fine through a virtual serial port.
> >
> > It was only after I got my laptop that I found it
> > had no serial ports at all on it and this was the
> > ideal solution for running WinDbg on the
> > laptop. A USB/Serial convert is cheap.
> >
> > Cheers,
> >
> > Mark.
> >
> >
> >
> > >“Lucas Bracher” wrote in message
> > >news:xxxxx@ntdev…
> > >Hi there!
> > >In order to debug my driver, I would like to use windbg and a serial
> > cable
> > >connecting two machines, but one of them doesn´t have free serial
> ports.
> > I
> > >guess I can create a pipe between a virtual serial port and a tcp
> port in
> > >both machines in order to achieve this (i.e, virtual com <->
> ethernet <->
> > >virtual com), but I don´t know how. Does anybody here use this
> technique
> > to
> > >connect two machines? What program/service I need to use? Is there
> > another
> > >way to do this?
> > >
> > >Thank you so much!
> > >
> > >Lucas.
> >
> > —
> > Questions? First check the Kernel Driver FAQ at
> > http://www.osronline.com/article.cfm?id=256
> >
> > To unsubscribe, visit the List Server section of OSR Online at
> > http://www.osronline.com/page.cfm?name=ListServer
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
>
> __________________________________________________
> Fale com seus amigos de graça com o novo Yahoo! Messenger
> http://br.messenger.yahoo.com/ — Questions? First check the Kernel
> Driver FAQ at http://www.osronline.com/article.cfm?id=256 To
> unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>

Lucas Bracher wrote:

Or there´s a weird & nerd & assured way to use virtual ports on both
sides?

The debugger comes up way before any custom drivers are loaded – the
debugger serial port driver (and FireWire driver) is actually part of
the debugger/kernel. Your only other choice for the target machine is to
use FireWire – or use a virtual driver for transport, but run it to a
serial console, which in turn is set to forward to a physical serial
cable hooked to the target machine (such things can be bought).

However, I HIGHLY recommend FireWire. It’s about a bajillion times faster.

Last, there is a mailing list dedicated to WinDbg.

Cheers,

/ h+

Only if the target machine is a VM…


Ken Johnson (Skywing)
Windows SDK MVP
http://www.nynaeve.net
“Lucas Bracher” wrote in message news:xxxxx@ntdev…
I tried to put TCP-Com on both sides to emulate a serial cable, but Don?s article (thanks, Don!) tells the debugger uses directly the port. So I guess my solution (use virtual ports on both sides) will not work… :frowning:
Or there?s a weird & nerd & assured way to use virtual ports on both sides?

Thanks!

Lucas.

Harish Arora escreveu:
You need to have either a serial or a 1394 port available on the target host. You do not need to have a serial or 1394 port on debugger host.

My target machines sit in the lab and their serial port (only pins 2,3 and 5 connected!) are connected to a “Digi” console server box. This box in turn exposes a TCP port to which I connect a COM emulator application (e.g TCP-com). This application in turn exposes a virtual com port on my desktop where I run windbg.

Harish

> -----Original Message-----
> From: xxxxx@lists.osr.com [mailto:bounce-275773-
> xxxxx@lists.osr.com] On Behalf Of Mark S. Edwards
> Sent: Tuesday, January 16, 2007 10:58 AM
> To: Windows System Software Devs Interest List
> Subject: Re:[ntdev] Kernel debug in Windbg using tcp - is it possible?
>
>
> Lucas,
>
> If the machine lacking the serial port is the
> running the debugger rather than being the
> target, one solution is to use a USB/Serial
> converter. Windbg runs fine through a virtual serial port.
>
> It was only after I got my laptop that I found it
> had no serial ports at all on it and this was the
> ideal solution for running WinDbg on the
> laptop. A USB/Serial convert is cheap.
>
> Cheers,
>
> Mark.
>
>
>
> >“Lucas Bracher” wrote in message
> >news:xxxxx@ntdev…
> >Hi there!
> >In order to debug my driver, I would like to use windbg and a serial
> cable
> >connecting two machines, but one of them doesn?t have free serial ports.
> I
> >guess I can create a pipe between a virtual serial port and a tcp port in
> >both machines in order to achieve this (i.e, virtual com <-> ethernet <->
> >virtual com), but I don?t know how. Does anybody here use this technique
> to
> >connect two machines? What program/service I need to use? Is there
> another
> >way to do this?
> >
> >Thank you so much!
> >
> >Lucas.
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

__________________________________________________
Fale com seus amigos de gra?a com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/

As you’ve heard from others, you can’t do exactly that.
I personally recommend the firewire. Firewire interfaces are generally
available for just about anything (I believe OSR sells some cards
known to work), and it’s one heck of a lot faster than serial.

The only other thing I can think of is to possibly find a copy of
SoftIce. In it’s last incarnation (it’s a discontinued product now!),
it could supposedly debug over ethernet, but only certain 10 base T
cards. Please note that I never got this functionality to work at all,
in spite of having the boss shell out the $20 for the ‘correct’
ethernet card. I do NOT recomment this solution at all.

Really, just get firewire cards. It’s your best bet.

On 1/16/07, Lucas Bracher wrote:
> Hi there!
> In order to debug my driver, I would like to use windbg and a serial cable
> connecting two machines, but one of them doesn?t have free serial ports. I
> guess I can create a pipe between a virtual serial port and a tcp port in
> both machines in order to achieve this (i.e, virtual com <-> ethernet <->
> virtual com), but I don?t know how. Does anybody here use this technique to
> connect two machines? What program/service I need to use? Is there another
> way to do this?
>
> Thank you so much!
>
> Lucas.
>
>
> __________________________________________________
> Fale com seus amigos de gra?a com o novo Yahoo! Messenger
> http://br.messenger.yahoo.com/ — Questions? First check the Kernel Driver
> FAQ at http://www.osronline.com/article.cfm?id=256 To
> unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer


Michael Kohne
xxxxx@kohne.org

Some of us never got SoftIce to not mess up the way the system was supposed
to work, so I for one would highly recomend against it. I applauded it
demise or as Mark Twain said ‘‘I didn’t attend the funeral, but I sent a
nice letter saying I approved of it.’’


Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
http://www.windrvr.com
Remove StopSpam from the email to reply

“Michael Kohne” wrote in message news:xxxxx@ntdev…
As you’ve heard from others, you can’t do exactly that.
I personally recommend the firewire. Firewire interfaces are generally
available for just about anything (I believe OSR sells some cards
known to work), and it’s one heck of a lot faster than serial.

The only other thing I can think of is to possibly find a copy of
SoftIce. In it’s last incarnation (it’s a discontinued product now!),
it could supposedly debug over ethernet, but only certain 10 base T
cards. Please note that I never got this functionality to work at all,
in spite of having the boss shell out the $20 for the ‘correct’
ethernet card. I do NOT recomment this solution at all.

Really, just get firewire cards. It’s your best bet.

On 1/16/07, Lucas Bracher wrote:
> Hi there!
> In order to debug my driver, I would like to use windbg and a serial
> cable
> connecting two machines, but one of them doesn´t have free serial ports.
> I
> guess I can create a pipe between a virtual serial port and a tcp port in
> both machines in order to achieve this (i.e, virtual com <-> ethernet <->
> virtual com), but I don´t know how. Does anybody here use this technique
> to
> connect two machines? What program/service I need to use? Is there
> another
> way to do this?
>
> Thank you so much!
>
> Lucas.
>
>
> __________________________________________________
> Fale com seus amigos de graça com o novo Yahoo! Messenger
> http://br.messenger.yahoo.com/ — Questions? First check the Kernel
> Driver
> FAQ at http://www.osronline.com/article.cfm?id=256 To
> unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer


Michael Kohne
xxxxx@kohne.org

> ----------

From: xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com] on behalf of Don Burn[SMTP:xxxxx@acm.org]
Reply To: Windows System Software Devs Interest List
Sent: Wednesday, January 17, 2007 1:53 AM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Kernel debug in Windbg using tcp - is it possible?

Some of us never got SoftIce to not mess up the way the system was supposed
to work, so I for one would highly recomend against it. I applauded it
demise or as Mark Twain said ‘‘I didn’t attend the funeral, but I sent a
nice letter saying I approved of it.’’

Really wise. Nobody forced you to use SoftICE but for some of us it was the easiest way how to explore live system. It allowed me to make my work faster and better within all these years. The demise means there is no choice, just WinDbg. Great post-mortem analysis tool and rather clumsy debugger. Debugger is matter of personal preferences but it is always better if there is a choice. And competition which makes software better.

BTW, for previous poster, I successfully made SoftICE via TCP/IP working. Just for curiosity; the real value for me was one computer development.

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]

“Michal Vodicka” wrote in message
news:xxxxx@ntdev…
> ----------
> From:
> xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com]
> on behalf of Don Burn[SMTP:xxxxx@acm.org]
>> Reply To: Windows System Software Devs Interest List
>> Sent: Wednesday, January 17, 2007 1:53 AM
>> To: Windows System Software Devs Interest List
>> Subject: Re:[ntdev] Kernel debug in Windbg using tcp - is it possible?
>>
>> Some of us never got SoftIce to not mess up the way the system was
>> supposed
>> to work, so I for one would highly recomend against it. I applauded it
>> demise or as Mark Twain said ‘‘I didn’t attend the funeral, but I sent a
>> nice letter saying I approved of it.’’
>>
> Really wise. Nobody forced you to use SoftICE but for some of us it was
> the easiest way how to
> explore live system. It allowed me to make my work faster and better
> within all these years. The demise
> means there is no choice, just WinDbg. Great post-mortem analysis tool
> and rather clumsy debugger.
> Debugger is matter of personal preferences but it is always better if
> there is a choice. And competition
> which makes software better.

Actually as a consultant there were times I was forced to use SoftICE.
About 3 years ago, I started telling my customers there was a 25% surcharge
if I had to use that piece of crap. Everytime I used it I found places
where they altered the normal behavior of the system. I did benefit once,
since I had a customer call me saying “The driver crashes unless it is run
under SoftICE, and we have no way to debug it” Between using WinDBG and
driver verifier I found over 10 bugs that SoftICE had obscured.


Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
http://www.windrvr.com
Remove StopSpam from the email to reply

> ----------

From: xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com] on behalf of Don Burn[SMTP:xxxxx@acm.org]
Reply To: Windows System Software Devs Interest List
Sent: Wednesday, January 17, 2007 2:38 AM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Kernel debug in Windbg using tcp - is it possible?

Actually as a consultant there were times I was forced to use SoftICE.
About 3 years ago, I started telling my customers there was a 25% surcharge
if I had to use that piece of crap.

Forced? They forbid you to use your own notebook with WinDbg and connect it to their computer? In this case I’d want more than 25% surcharge. Consultant should be allowed to use tools of his choice.

Everytime I used it I found places
where they altered the normal behavior of the system. I did benefit once,
since I had a customer call me saying “The driver crashes unless it is run
under SoftICE, and we have no way to debug it” Between using WinDBG and
driver verifier I found over 10 bugs that SoftICE had obscured.

It is quite possible. Did you report these bugs? I was a beta tester for years and after endless complaints support eventually started to work and bugs were really fixed.

Well, opinions differ. I usually don’t need a debugger at all but with OS of Vista “quality” I really regret SI demise.

BTW, wasn’t WinDbg updated faster when there was a choice?

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]

If you have an additional machine sitting around that you can spare, you can connect to WinDbg remotely. It is actually quite easy, although the documentation does its very, very best to obscure this fact by creating about fifty different variations on the word “Client” and “Sever.” Basically, you can either just connect the spare machine as you normally would and then use the “.server” metacommand, or run kdsrv on it. On the host side, you just connect differently. Unfortunately, if you are trying to do this remotely, IT is almost certainly going to stomp on this, but whatever firewall issues you may experience have nothing to do with WinDbg. I’ve used this a couple of times, and its not 100% reliable, but it works pretty well.

SOFTICE:

I also would not recommend SoftICE, as it is no more, and even if it were still around and kicking, there are only a couple of good reasons, in my opinion, to pay those absolute pirates at Compuware who got exactly what they deserved, only it should have come sooner. In practice, probably what you would really want here is Visual SoftICE, which comes with SoftICE. Visual SoftICE, while a lot more attractive the WinDbg, most definitely has been known to have issues with losing connections, but it is still works well enough to use productively if you have remote connectivity needs. It certainly did have its problems, and the crap that was packaged with was insulting (curiously, as kernel dev, I never found use for the really kick ass VisualBasic code optimization tool that was itself written in VB) to the point that it bordered on being abusive. That being said, I used it for long time, and still do from time to time, and its not nice to pick on a dead man. What gets left out of this conversation is that WinDbg was no prize for a long time, and, in my opinion, was insufferable until FireWire came along. The dev here is actually hitting on one of the two reasons it might still be used: if you have a hard requirement for remote connectivity. I used the ethernet transport for years, and I never really had much of a problem with it. To be sure I had some, but they were all addressable, and much more so than getting WinDbg to connect from 100 miles away. Although they supported only three families of ethernet chipsets (3c90x, 825XX and RTL8139), in something like seven years, I ran across a single machine that did not contain embedded support for one of these. In my experience, a machine having support for one of these is at least an order of magnitude more lilkely then a machine having a 1394 card, and, the connectivity issues are more less common than ones involving screwy 1394 chipsets. Whatever the case, it can be solved for probably less than $20 at any store that sells anything related to computers, and you don’t have to know things about the chipsets that aren’t listed on the package, unlike 1394. If all of this fails, you can use UNDI support, which is what I did, and it does kind of suck, and you can’t use it early in the boot process. But none of these problems are as anywhere near as common, as difficult to immediately remedy or as expensive as the 1394 case with WinDbg. What was a real problem was, back in the day, before the added universal video support via DirectX (I’m told that part of the deal with aquiring the rights for this was that the had to purchase the all the other garbage that they ended up packaging with SI; I have no idea of whether that is true or not, but it seems kind of unlikely - splitting your time between a pretty cutting edge idea and suites of visual basic tools) was being limited to a small set of graphics cards. That really sucked, and even the UVD was not without its issues, but all of this was for a while cheaper than a second machine and whatever software licenses you needed.

All that being said, now that WinDbg has a reasonable transport, it is a much, much better setup, even leaving cost out of it, unless you have remote connectivity needs , or are doing some specific types of reverse engineering (for which WinDbg is a complete waste of time), because it is more stable, and mostly because you can do so much more and more easily with the extensions. It is true that these can be used with Visual SoftICE (that claim is made for SoftICE, which was not my experience, but I didn’t use it remotely much), but Visual SoftICE’s connectivity is fairly suspect. I was very leary about going to WinDbg, and, retrospectively, I wish I had a little earlier, but most definitely not much earlier. Not having to go to a client’s site immediately or sooner every time there was a problem was really, really wonderful. Ultimately, I of course ended up there anyway, but being able to do it in a somewhat controlled and more convenient manner was great, and they (other than IT) liked the idea that I was able to connect remotely (where possible) when they needed, even if, in truth, it really was sort of a cosmetic.

Its not nice to pick on the dead. Just kidding. It, like, say, Apple, basically committed suicide by abusive marketing practices.

mm

>> xxxxx@acm.org 2007-01-16 19:53 >>>
Some of us never got SoftIce to not mess up the way the system was supposed
to work, so I for one would highly recomend against it. I applauded it
demise or as Mark Twain said ‘‘I didn’t attend the funeral, but I sent a
nice letter saying I approved of it.’’


Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
http://www.windrvr.com
Remove StopSpam from the email to reply

“Michael Kohne” wrote in message news:xxxxx@ntdev…
As you’ve heard from others, you can’t do exactly that.
I personally recommend the firewire. Firewire interfaces are generally
available for just about anything (I believe OSR sells some cards
known to work), and it’s one heck of a lot faster than serial.

The only other thing I can think of is to possibly find a copy of
SoftIce. In it’s last incarnation (it’s a discontinued product now!),
it could supposedly debug over ethernet, but only certain 10 base T
cards. Please note that I never got this functionality to work at all,
in spite of having the boss shell out the $20 for the ‘correct’
ethernet card. I do NOT recomment this solution at all.

Really, just get firewire cards. It’s your best bet.

On 1/16/07, Lucas Bracher wrote:
> Hi there!
> In order to debug my driver, I would like to use windbg and a serial
> cable
> connecting two machines, but one of them doesn?t have free serial ports.
> I
> guess I can create a pipe between a virtual serial port and a tcp port in
> both machines in order to achieve this (i.e, virtual com <-> ethernet <->
> virtual com), but I don?t know how. Does anybody here use this technique
> to
> connect two machines? What program/service I need to use? Is there
> another
> way to do this?
>
> Thank you so much!
>
> Lucas.
>
>
> __________________________________________________
> Fale com seus amigos de gra?a com o novo Yahoo! Messenger
> http://br.messenger.yahoo.com/ — Questions? First check the Kernel
> Driver
> FAQ at http://www.osronline.com/article.cfm?id=256 To
> unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer


Michael Kohne
xxxxx@kohne.org


Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer