Лет 20 тому назад в качестве сетевых шлюзов использовались обычные серверы или даже офисные компьютеры. Простые фильтры пакетов ничего не знали о прикладном уровне модели OSI, не умели анализировать разнообразный контент, а тем более — распознавать сетевые атаки. Развитие комбинированных решений в сфере безопасности началось с продуктов для Windows, но со временем их сменили специализированные аппаратные шлюзы. Даже корпорация Microsoft отказалась от Forefront TMG (в девичестве — ISA Server), сохранив, впрочем, расширенную поддержку продукта до 2020 года. Мы тоже не остались в стороне от новых рыночных тенденций, создав линейку работающих под управлением FreeBSD устройств. Тем не менее, мы продолжаем поддерживать наше Windows-решение, на днях выпустив его обновление. Делаем мы это не из жалости к “старичку” — он до сих востребован у заказчиков и неплохо продаётся. Поэтому громко заявляем: слухи о смерти программных шлюзов безопасности для “виндовс”, мягко говоря, преувеличены.
Рубрика «разработка под windows» - 36
Пациент скорее жив, чем мертв или Слухи о смерти шлюзов под Windows несколько преувеличены
2018-03-31 в 5:57, admin, рубрики: Блог компании Smart-Soft, информационная безопасность, межсетевой экран нового поколения, межсетевые экраны, разработка под windows, сетевое администрирование, Сетевое оборудование, сетевой экран, Сетевые технологии, системное администрированиеИгра на UWP: расширенный экран-заставка
2018-03-29 в 6:11, admin, рубрики: design, development, iOS, microsoft, Universal Windows Platform, uwp, Visual Studio, win, Блог компании Microsoft, Дизайн игр, приложение, разработка, разработка игр, разработка под windows, универсальная платформаПривет! Мы продолжаем нашу экспериментальную серию статей для программистов-самоучек, в которой Алексей Плотников, один из участников нашего сообщества Microsoft Developer, рассказывает о создании игры на UWP. Сегодня поговорим о расширенном экране-заставке. Не забывайте оставлять комментарии, вы можете повлиять на ход разработки.
Окна на чистом WinAPI. Или просто о сложном
2018-03-26 в 23:02, admin, рубрики: api, c++, GUI, WinAPI, windows, Программирование, разработка под windowsDisclaimer
Казалось бы, что WinAPI уходит в прошлое. Давно уже существует огромное количество кросс-платформенных фреймфорков, Windows не только на десктопах, да и сами Microsoft в свой магазин не жалуют приложения, которые используют этого монстра. Помимо этого статей о том, как создать окошки на WinAPI, не только здесь, но и по всему интернету, исчисляется тысячами по уровню от дошколят и выше. Весь этот процесс разобран уже даже не по атомам, а по субатомным частицам. Что может быть проще и понятнее? А тут я еще…
Но не все так просто, как кажется.
Читать полностью »
Ускорение перечисления процессов и потоков в ОС Windows
2018-03-26 в 13:37, admin, рубрики: c++, NtQuerySystemInformation, Блог компании Инфопульс Украина, разработка под windows, реверс-инжиниринг, системное программированиеИногда бывает нужно перечислить все процессы или потоки, которые в данный момент работают в ОС Windows. Это может понадобиться по разным причинам. Возможно, мы пишем системную утилиту вроде Process Hacker, а может быть мы хотим как-то реагировать на запуск/остановку новых процессов или потоков (писать лог, проверять их, внедрять в них свой код). Самым правильным способом это реализовать является, конечно же, написание драйвера. Там всё просто — используем PsSetCreateProcessNotifyRoutine и PsSetCreateThreadNotifyRoutine для установки колбек-функций, которые будут вызываться при запуске/остановке процессов и потоков. Работает очень быстро и не ест ресурсы. Именно так и делают все серьёзные инструменты. Но разрабатывать драйвера — не всегда подходящий способ. Их нужно уметь правильно писать, их с недавних пор обязательно нужно подписывать сертификатами (что не бесплатно) и регистрировать в Microsoft (что не быстро). И ещё их не удобно распространять — например, программы с ними нельзя выкладывать в Microsoft Store.
Ну, давайте тогда пользоваться тем, что предлагает публичный WinAPI. А предлагает он функцию CreateToolhelp32Snapshot(), которую предлагается использовать как-то вот так. Всё, кажется, хорошо — есть информация о процессах, потоках. Немного расстраивает тот факт, что вместо элегантных колбеков мы вынуждены делать бесконечный пулинг в цикле, но это ладно.
Самая большая проблема здесь — это производительность. Связка CreateToolhelp32Snapshot() + Process32First() + Process32Next() работает ну очень медленно. Возможно, проблема лежит где-то в той же области, что и описанная вот в этой статье проблема с Heap32First() + Heap32Next(). Кратко — в силу исторических причин кое-где проход по линейному списку занимает квадратичное время.
Можно ли как-то всё это ускорить? Можно. Но придётся сойти со светлого пути использования одних лишь публичных функций WinAPI.
Читать полностью »
Почему функция Heap32Next() работает так медленно на Windows 7?
2018-03-26 в 12:57, admin, рубрики: c++, Heap32Next, Блог компании Инфопульс Украина, отладка, разработка под windows, системное программированиеЕсли вы занимаетесь системным программированием под Windows, то могли бы заметить, что весьма полезные функции Heap32First/Heap32Next и другие из того же семейства стали работать существенно медленнее начиная с Windows 7. Что же с ними случилось?
Давайте перенесёмся в далёкий 1992 год. Разрабатывается Windows 3.1. Одним из новых компонентов в ней стал ToolHelp. Он позволил немного покопаться во внутренностях ядра ОС. Для нас в нём наиболее интересны функции, позволяющие просматривать данные в куче (heap). Поскольку Windows 3.1 использовала кооперативную многозадачность, вызывая подобные функции можно было быть уверенным в том, что содержимое кучи не изменится между вызовами HeapFirst и HeapNext, ведь у ОС не было права прервать выполнение процесса и переключить контекс на выполнение другого. Вот были времена!
Читать полностью »
Контроллер Arduino с датчиком температуры и Python интерфейсом для динамической идентификации объектов управления
2018-03-25 в 0:53, admin, рубрики: python, Анализ и проектирование систем, датчиком температуры, интерфейс, контроллер Arduino, кривая разгона, математика, программирование микроконтроллеров, разработка под windowsВведение
Возможность получения действительной информации о состоянии реальных объектов в реальном масштабе времени позволяет обоснованно приступать к следующему этапу анализа и синтеза систем – математическому моделированию динамических характеристик объектов управления.
В данной публикации рассматривается доступный в реализации проект системы измерения технологического параметра – температуры, с дистанционной передачей сигнала в вычислительную среду для дальнейшей обработки измерительной информации.
В основу данного проекта положены аппаратные средства для прототипирования на базе платформы Arduino со множеством совместимых с ними модулей и свободных программных средств Python, образующих интегрированную среду разработки Arduino Software.
Встречаем Windows Machine Learning — WinML
2018-03-21 в 12:22, admin, рубрики: api, data mining, ONNX, Windows Machine Learning, WinML, Дизайн игр, машинное обучение, разработка под windowsИскусственный интеллект и машинное обучение — две хайповые тенденции последних лет. Необходимые для AI&ML объемы вычислений обычно выполняются в ЦОДах на специальном высокопроизводительном и энергоэффективном оборудовании (например, серверах с TPU). Эволюция циклична, и маятник качнулся обратно, в сторону вычислений на периферийных устройствах, таких как ПК, планшеты и IoT. В частности, это приведет к повышению скорости реакции устройств на голосовые команды и повысит комфортность общения с персональными ассистентами.
WinML — это новый набор API-интерфейсов, который позволит разработчикам использовать все возможности любого устройства Windows 10 для вычислений предварительно обученных моделей машинного обучения и загруженных в приложение в формате Open Neural Network Exchange (ONNX).
Читать полностью »
Срыв масштабной хакерской атаки на пользователей Windows в России: часть 2
2018-03-21 в 8:24, admin, рубрики: Dofoil, windows, Windows Defender, антивирусная защита, Блог компании Microsoft, информационная безопасность, кибератаки, машинное обучение, разработка под windows, уязвимостиСовсем недавно мы предотвратили массовую атаку с применением трояна Dofoil, целью которой была установка вредоносного ПО для майнинга криптовалют на сотни тысяч компьютеров. С помощью поведенческого мониторинга, моделей машинного обучения и многоуровневой системы защиты антивирусная программа Windows Defender смогла эффективно выявить и заблокировать атаку в течение несколько миллисекунд.
Сегодня мы еще подробнее расскажем о самой атаке, путях заражения и поделимся временно́й шкалой. Заглядывайте под кат!
Математическая модель тепловыделяющего элемента ядерного реактора
2018-03-17 в 20:56, admin, рубрики: python, Алгоритмы, Анализ и проектирование систем, вложенные функции, математика, разработка под windows, распределение температуры, тепловыделяющий элемент, теплопроводность, ядерный реактор
Введение
Тепловыделяющий элемент (ТВЭЛ) — главный конструктивный элемент активной зоны гетерогенного ядерного реактора, содержащий ядерное топливо [1].
В ТВЭЛах происходит деление тяжелых ядер урана 235 или плутония 239, сопровождающееся выделением тепловой энергии, которая затем передаётся теплоносителю.
ТВЭЛ должен обеспечить отвод тепла от топлива к теплоносителю и препятствовать распространению радиоактивных продуктов из топлива в теплоноситель.
Поэтому расчёт температурных полей в ТВЭЛах является важной задачей проектирования ядерного реактора.
Проекту ReactOS требуются студенты для участия в Google Summer of Code 2018
2018-03-17 в 16:18, admin, рубрики: api, gsoc, hal, kernel, open source, opensource, reactos, reverse engineering, windows, wine, Блог компании Фонд ReactOS, разработка под windows, реверс-инжиниринг
Привет!
Спешим сообщить, что операционная система ReactOS уже третий год подряд получает слот на Google Summer of Code!
В случае успешной сдачи работы участник Google Summer of Code получит 2 400 евро.
Кто может участвовать?
Участвовать могут любые студенты и аспиранты (т.к. в юрисдикции США аспиранты считаются PhD Students).
Что надо сделать, чтобы участвовать?
- Зарегистрироваться на https://summerofcode.withgoogle.com/;
- Выбрать вариант участия как студент;
- Выбрать ReactOS как проект участия;
- Описать в свободной форме то, что вы хотите сделать для проекта;
- Подписаться на почтовую рассылку разработчиков и продублировать туда текст из пункта 4;
- Обговорить в IRC свое участие;
- Взять в вашем учебном заведении Proof of Enrollment – бумагу, которая подтверждает, что вы являетесь студентом (или аспирантом) этого учебного заведения на срок Google Summer of Code.
Поторопитесь! Подача заявок закончится 27 марта!
Возможные идеи для участия – под катом.