1) Использую WMI для получения информации об оборудовании и его параметрах (процессор, память, видяшка и сетевые карты). Для получения всей инфы трубуется ~4 секунды. Есть ли боле ебыстрые методы обнаружения присутствующих устройств (даже если они временно отключены, вплане программно)? или WMI считается расово-верным решением получения инфо о системе?
2) У меня в компе стоят 2 сетевухи. При выполнении ipconfig получаю вагон сетевых интерфейсов, из которых только 2 - мои сетевухи. Откуда берётся этот хлам и что он там делает?
- Код: Выделить всё
C:\Users\Fenix>ipconfig
Windows IP Configuration
Ethernet adapter Home: - подключение по 1ой сетевухе
[вырезано]
Ethernet adapter Internet: - подключение по 2ой сетевухи
[вырезано]
Tunnel adapter isatap.{F124FC82-4DA3-47BE-AF8D-A95F881BCCA8}:
[вырезано]
Tunnel adapter Local Area Connection* 12:
[вырезано]
Tunnel adapter isatap.{C19E0E27-577E-4834-9293-02B660407614}:
[вырезано]
Tunnel adapter 6TO4 Adapter:
[вырезано]
Tunnel adapter Reusable Microsoft 6To4 Adapter:
[вырезано]
Tunnel adapter Local Area Connection* 9:
[вырезано]
Tunnel adapter Local Area Connection* 11:
[вырезано]
Tunnel adapter Local Area Connection* 13:
[вырезано]
Tunnel adapter Local Area Connection* 14:
[вырезано]
Tunnel adapter Local Area Connection* 15:
[вырезано]
Tunnel adapter Local Area Connection* 16:
[вырезано]
Tunnel adapter Local Area Connection* 19:
[вырезано]
Tunnel adapter Local Area Connection* 20:
[вырезано]
Tunnel adapter Local Area Connection* 21:
[вырезано]
Tunnel adapter Local Area Connection* 22:
[вырезано]
Tunnel adapter Local Area Connection* 23:
[вырезано]
3) Существует ли золотая середина количества потоков на процесс? Т.к. у меня самый многопоточный процесс - system (в Win7), у которого 111 потоков. То сейчас я беру в среднем ~100 потоков на процесс. Плохо ли это?
К примеру проектирование серверных приложений, приложений для перебора паролей и т.д.
4) Рационально ли в серверном приложении под каждого юзера выделять отдельный поток? Или оптимальнее делать очередь задач на всех юзеров и распределять на некоторое количество потоков?
5) Как я понимаю, DirectX выступает как прослойка между хардварным уровнем системы и приложением, в конечном счёте отвечающая за работу с видеокартой и системным бэкбуффером. Интересно, дало бы профит в производительности для .NET приложений, если DX был бы полностью перенесён на .NET?