Отладка драйверов Win Vista

Тема в разделе "WASM.NT.KERNEL", создана пользователем drem1lin, 12 авг 2010.

  1. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    Есть задача создания драйвера под висту. До этого писал по ХР, и привык пользоваться связкой WinDBG + VmWare Workstation. Как эту связку настроить для отладки виртуальной висты? Читал http://www.microsoft.com/whdc/driver/tips/debug_vista.mspx, сделал все по инструкции, но не могу подключить WinDbg. Строка запуска
    Код (Text):
    1.  windbg -b -k com:pipe,port=\\.\pipe\com_1,resets=0.
    Настройки виртуальной машины: добавил serial port, Use named pipe, name "\\.\pipe\com_1" Этот конец сервер, второй конец приложение и галочку поставил Yield CPU on Poll. при запуске висты появляется две записи Microsoft Windows Vista и DebugEntry [с отладчиком], выбираю вторую, запускаю батник со строкой запуска, запускается windbg, пишет
    Код (Text):
    1. Opened \\.\pipe\com_1
    2. waiting for reconnect
    и больше ничего не происходит, виста загружается, появляется рабочий стол, а отладчик молчит. Может кто то знает, в чем руки кривые, или знает что можно почитать..
     
  2. x64

    x64 New Member

    Публикаций:
    0
    Регистрация:
    29 июл 2008
    Сообщения:
    1.370
    Адрес:
    Россия
    Под Windows Vista и выше в виртуалке я обычно делаю так:

    Символы для {NewGuid} копируешь из консоли.
    При перезагрузке выбираешь новый пункт загрузочного меню и вуаля.
     
  3. Treant

    Treant Member

    Публикаций:
    0
    Регистрация:
    24 май 2009
    Сообщения:
    248
    drem1lin
    ничего и не должно появиться - ctrl+break жмите
     
  4. x64

    x64 New Member

    Публикаций:
    0
    Регистрация:
    29 июл 2008
    Сообщения:
    1.370
    Адрес:
    Россия
    Да?
     
  5. Treant

    Treant Member

    Публикаций:
    0
    Регистрация:
    24 май 2009
    Сообщения:
    248
    x64
    у меня так - win 7
     
  6. juggler

    juggler New Member

    Публикаций:
    0
    Регистрация:
    17 дек 2009
    Сообщения:
    18
    drem1lin
    вот копипаст из моих батников:
    Код (Text):
    1. bcdedit /dbgsettings serial debugport:1 baudrate:115200
    2. bcdedit /copy {current} /d "Windows 7 [debug]"
    3. bcdedit /enum > enum.txt
    в enum.txt смотрим GUID только что созданной записи, а затем выполняем

    Код (Text):
    1. bcdedit /set {GUID} debug on
    почти то же, что и в x64, но может чем-нить и поможет..
     
  7. Ev0lwaves

    Ev0lwaves New Member

    Публикаций:
    0
    Регистрация:
    26 дек 2008
    Сообщения:
    125
    ключ /break - и останов произойдёт
     
  8. fsd

    fsd New Member

    Публикаций:
    0
    Регистрация:
    4 июл 2010
    Сообщения:
    353
    run->msconfig
    [​IMG]
     
  9. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    x64 за скрипты спасибо, но я по сути сделал тоже самое (ссылка с описанием в первом топике)
    пробовал ваши, все равно не цепляет. может дело в том, что у меня реальная Win 7? А команда подключения к VM написана правильно??
    содержание bcdedit
    Код (Text):
    1. Диспетчер загрузки Windows
    2. --------------------
    3. идентификатор           {bootmgr}
    4. device                  partition=C:
    5. description             Windows Boot Manager
    6. locale                  ru-RU
    7. inherit                 {globalsettings}
    8. default                 {default}
    9. displayorder            {54e13040-a5d7-11df-842a-e142c9448d2a}
    10.                         {default}
    11.                         {current}
    12.                         {c170eae3-a5d4-11df-b367-000c296f15fa}
    13. toolsdisplayorder       {memdiag}
    14. timeout                 30
    15.  
    16. Загрузка Windows
    17. -------------------
    18. идентификатор           {54e13040-a5d7-11df-842a-e142c9448d2a}
    19. device                  partition=C:
    20. path                    \Windows\system32\winload.exe
    21. description             Microsoft Windows Vista
    22. locale                  ru-RU
    23. inherit                 {bootloadersettings}
    24. osdevice                partition=C:
    25. systemroot              \Windows
    26. resumeobject            {54e13041-a5d7-11df-842a-e142c9448d2a}
    27. nx                      OptIn
    28.  
    29. Загрузка Windows
    30. -------------------
    31. идентификатор           {default}
    32. device                  partition=C:
    33. path                    \Windows\system32\winload.exe
    34. description             DebugEntry
    35. locale                  ru-RU
    36. inherit                 {bootloadersettings}
    37. osdevice                partition=C:
    38. systemroot              \Windows
    39. resumeobject            {54e13041-a5d7-11df-842a-e142c9448d2a}
    40. nx                      OptIn
    41. debug                   Yes
    42.  
    43. Загрузка Windows
    44. -------------------
    45. идентификатор           {current}
    46. device                  partition=C:
    47. path                    \Windows\system32\winload.exe
    48. description             Windows Vista [debug]
    49. locale                  ru-RU
    50. inherit                 {bootloadersettings}
    51. osdevice                partition=C:
    52. systemroot              \Windows
    53. resumeobject            {54e13041-a5d7-11df-842a-e142c9448d2a}
    54. nx                      OptIn
    55. debug                   Yes
    56.  
    57. Загрузка Windows
    58. -------------------
    59. идентификатор           {c170eae3-a5d4-11df-b367-000c296f15fa}
    60. device                  partition=C:
    61. path                    \Windows\system32\winload.exe
    62. description             Windows Vista [debug]
    63. locale                  ru-RU
    64. inherit                 {bootloadersettings}
    65. osdevice                partition=C:
    66. systemroot              \Windows
    67. resumeobject            {54e13041-a5d7-11df-842a-e142c9448d2a}
    68. nx                      OptIn
    69. debug                   Yes
    Первая запись - по умолчанию, вторую делал по MS инструкции, третью и четвертую получил запуском скрипта
     
  10. x64

    x64 New Member

    Публикаций:
    0
    Регистрация:
    29 июл 2008
    Сообщения:
    1.370
    Адрес:
    Россия
    Ok, возможно, я что-то упустил.
    В таком случае у меня ещё пару замечаний:

    Не вижу, чтобы ты указывал debugport для пункта отладки. И второе: у VMware на Windows 7 баг есть, он отладчик не всегда подцепляет. Мне обычно приходится после запуска виртуалки (уже после прохождения загрузочного меню) закрывать WinDbg и открывать снова с теми же параметрами, - тогда подцепляет. Хотя хрен знает, может быть в настройках виртуального COM-порта дело, а может быть и вправду баг, - проверь.
     
  11. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    а где это должно быть указано? если можно пример с указанным портом..
     
  12. x64

    x64 New Member

    Публикаций:
    0
    Регистрация:
    29 июл 2008
    Сообщения:
    1.370
    Адрес:
    Россия
    Писал же я выше уже.
     
  13. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    Код (Text):
    1. bcdedit /dbgsettings serial debugport:1 baudrate:115200
    об этом речь? тогда, я это делал, я видно не так понял. мне показалось среди
    Код (Text):
    1. Загрузка Windows
    2. -------------------
    3. идентификатор           {default}
    4. device                  partition=C:
    5. path                    \Windows\system32\winload.exe
    6. description             DebugEntry
    7. locale                  ru-RU
    8. inherit                 {bootloadersettings}
    9. osdevice                partition=C:
    10. systemroot              \Windows
    11. resumeobject            {54e13041-a5d7-11df-842a-e142c9448d2a}
    12. nx                      OptIn
    13. debug                   Yes
    должно быть видно порт.
     
  14. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    В деле появились новые подробности, а именно, виртуальная машина Windows Xp отказывается цепляться к отладчику. настраивал с помощью boot.ini скопировал запись и дописал
    Код (Text):
    1. /debug /debugport=com1 /baudrate=115200
    симптомы теже, папй открывает, коннект не происходит.. может дело в отладчике? или в vmware? использую VMware workstation 7.1 и windbg 6.11 все это установлено на windows 7 x86 ult
     
  15. ntcdm

    ntcdm New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2007
    Сообщения:
    247
    а у тебя в самой виртуалке настроено перенаправлять ком-порт на пайп?
     
  16. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    у меня на виртуальной машине стоит serial port \\.\pipe\com_1 который используется в windbg..