Как работают виртуальные рабочие столы в Windows.

September 13th, 2011 22 comments

Читаю статью на Хабре про виртуальные рабочие столы в Windows. В конце статьи висит вопрос:

UPD: Если вы знаете принцип работы подобных программ или какой-либо отдельной в частности, поделитесь этими знаниями, нам всем будет очень интересно.

И «ответ» – цитата из комментария пользователя enktyptor:

Многие «менеджеры десктопов» Windows работают по схожему принципу — они скрывают все окна (чуть ли не через SW_HIDE), относящиеся не к текущему десктопу (при этом как таковых «десктопов» в системе нет, есть скорее наборы окон). В итоге новые окна и мессадж боксы любая программа открывает на первом десктопе, а не на текущем, плюс появляется ряд проблем, если программа сама использует сокрытие своих окон (например, когда прячется в трей).

Удивительно, но автор статьи разместил только этот кусочек полностью меняя смысл комментария. Часть про то, что поддержка виртуальных рабочих столов встроена в Windows со времен цара Гороха почему-то была аккуратно вырезана. WTF? В смысле, «доколе?» :-)

Tags:

Отпуск.

August 29th, 2011 8 comments

С завтрашнего дня и до почти середины октября я в отпуске. Поеду навестить родителей и остальную родню. Телефон для связи вывешу, когда отосплюсь после перелета. :-)

Update: мой номер на ближайший месяц – +38-098-649-8382

Команда Bing стала немного больше.

August 23rd, 2011 13 comments

На объявление Bing Search will be hosting a recruiting trip to Russia в этом блоге откликнулось, по словам рекрутера, больше 20-ти человек. Из них трое прошли все интервью и получили предложение о работе. Довольно неплохо, я полагаю.

«Паллада».

August 16th, 2011 2 comments

На прошлой неделе в Сиэтл заходил учебный фрегат «Паллада» (согласно морскому регистру – барк). По такому случаю я слинял с работы на пару часов его пофотографировать.

"Паллада" у 66-ого пирса.

"Паллада".

Read more…

Microsoft Advertising will be hosting a recruiting trip to Russia.

July 25th, 2011 3 comments

Команда Microsoft Advertising собирается приехать в Москву в октябре собеседовать разработчиков из России и соседних стран, желающих вступить в ряды империи зла перебраться в США. Просьба, при посылке резюме ссылаться на меня (Alexey Pakhunov) – очень интересно посмотреть статистику. :-)


Microsoft Advertising will be hosting a recruiting event in mid-October this year to recruit top talent from all over Russia and neighboring countries specifically focusing on Software Developers of all experience levels who are interested in relocating to the U.S. At this time, we are looking to hire engineers for the roles below. ALL roles require strong coding and development experience.

  • Software Development Engineer (SDE)
  • Software Development Engineer II (SDE II)
  • Principal SDE
  • Engineering Leads

If interested – please send your information and Resume/CV to the Recruiter organizing this event: eugenial@microsoft.com by Wednesday, August 31st. We are focused on broad-based software development skills when considering potential candidates (across the board – no specific technology/product niche requirements). If you are strong in C++, C# or JAVA, we would love to hear from you!

Read more…

Можно ли использовать функцию RtlCaptureContext() из x86 кода?

July 24th, 2011 2 comments

Вопрос из почты:

The question is really simple: could we use RtlCaptureContext on X86? The MSDN (http://msdn.microsoft.com/en-us/library/ms680659(v=VS.85).aspx) says it’s only for 64 but the bug is for X86 and I see some kernel code are using it on x86.

Вопрос на самом деле очень прост: можем ли мы использовать функцию RtlCaptureContext на x86? MSDN говорит, что эта функция только для 64-х бит но баг-репорт (имеется ввиду баг-репорт, ранее упомянутый в письме) воспроизводится для x86 и я вижу, что код в ядре использует эту функцию на x86.

Ответ: можно. Действительно, упомянутая страница MSDN утверждает, что:

The following functions are used only on 64-bit Windows.

Следующие функции используются только в 64-х разрядных версиях Windows.

Однако, страница, описывающая саму функцию RtlCaptureContext() указывает Windows XP и Windows Server 2003 в качестве минимальных версий клиента и сервера. Сравните с функцией RtlAddFunctionTable(), действительно не реализованной на x86. Минимальные версии клиента и сервера для неё – Windows XP Professional x64 Edition и 64-bit editions of Windows Server 2003 соответственно.

Другой способ удостовериться в этом – проверить таблицу экспорта NTDLL. Хотя такой способ, конечно, не дает никакой информации о том, документирована функция (иными словами – поддерживается ли обратная совместимость для неё) или нет.

C:\>link /dump /exports c:\Windows\SysWOW64\ntdll.dll | findstr RtlCaptureContext
        667  28D 00046B2B RtlCaptureContext

C:\>link /dump /exports c:\Windows\SysWOW64\ntdll.dll | findstr RtlAddFunctionTable

C:\>

Bing Search will be hosting a recruiting trip to Russia.

June 22nd, 2011 Comments off

Пробежало по внутренней рассылке. Рекрутер (Anubha Mahajan) просила ссылаться на меня (Alexey Pakhunov), чтобы отследить кандидатов, пришедших с этого блога.


Bing will be hosting a recruiting event in late July/Early August this year to recruit top talent from all over Russia for software developers of all seniorities and experience levels who are interested in relocating to the U.S. At this time, we are looking to fill the below opportunities and all roles require strong coding and development experience.

  • SDE
  • SDE II
  • Principal SDE
  • Leads

If interested – please send your information and CV to the sourcing recruiter for this event at anubham@microsoft.com by July 8th. We are focused on broad-based software development skills when considering potential candidates (across the board – no specific technology/product niche requirements). If you are good in C++, C# or JAVA, we’d like to hear about you!

Read more…