Всем привет.
Написал библиотеку для обучения нейронной сети. Кому интересно, прошу.
Читать полностью »
Рубрика «разработка под windows» - 29
Нейросеть для разработчиков C++
2018-10-14 в 15:03, admin, рубрики: c++ библиотеки, ml, open source, искусственный интеллект, машинное обучение, нейронные сети, разработка по, Разработка под Linux, разработка под windowsMC.exe (Message compiler), rc.exe, link.exe для формирования .dll для EventMessageFile
2018-10-11 в 19:19, admin, рубрики: .net, Event Viewer, eventlog, for dummies, windows, винда, для чайников, журнал событий, логирование, разработка под windowsДобрый день, уважаемые читатели Хабра. Данный пост представляет из себя гайд по созданию динамической библиотеки .dll, которая содержит в себе сообщения, необходимые для отображения в кастомном логере, располагающимся в Windows Event ViewerApplication and Services Logsуууу (в качестве примера).
Интеграция HTML движка в нативное Windows приложение – выбор и архитектура
2018-10-09 в 7:29, admin, рубрики: 1С, Blink, chromium, Google Chrome, GTK+, qtwebkit, webkit, wincairo, Анализ и проектирование систем, Блог компании 1С, разработка под windowsКак мы перевели работу с HTML в 1С:Предприятии с Internet Explorer на WebKit
Возможность отображать HTML в формах 1С появилась в платформе 1С:Предприятие еще в версии 8.0 (выпущена в 2003 г.). Для работы с HTML в платформе использовался движок браузера Internet Explorer (1С:Предприятие на тот момент работало только под Windows). Движок браузера использовался платформой для утилитарных целей. Например, писать с нуля полноценный элемент для редактирования текста а-ля Word – с возможностью различных цветовых и шрифтовых решений, вставки картинок и т.д. – весьма непростая задача. А если задействовать для этих целей HTML и использовать в качестве средства отображения движок интернет-браузера, то задача сильно упрощается. Также при помощи движка был реализован ряд других механизмов (например, отображение справочной информации) и элементов (например, Планировщик).
Ну а возможность для разработчиков прикладных решений отображать с помощью HTML нестандартный, по меркам мира учетных систем, дизайн позволяла иногда привносить разнообразные приятные изюминки в интерфейс бизнес-приложений.
Время шло, платформа стала поддерживать сначала Linux, а потом и macOS. Для работы с HTML в этих ОС Internet Explorer не подходил по понятным причинам; в Linux нами был задействован WebKitGTK+, а в macOs — библиотека на основе Cocoa. Таким образом, единство кодовой базы для разных ОС (которое мы стараемся поддерживать для клиентского кода на уровне 95%) в этой области было нарушено. Ну и движок IE к этому времени стал источником ряда проблем.
Читать полностью »
Моё разочарование в софте
2018-09-20 в 11:46, admin, рубрики: индустрия ПО, ожирение софта, прогресс, Разработка под android, Разработка под Linux, разработка под windows, Софт
Суть разработки программного обеспечения
— Нужно проделать 500 отверстий в стене, так что я сконструировал автоматическую дрель. В ней используются элегантные точные шестерни для непрерывной регулировки скорости и крутящего момента по мере необходимости.
— Отлично, у неё идеальный вес. Загрузим 500 таких дрелей в пушку и выстрелим в стену.
Я занимаюсь программированием уже 15 лет. Но в последнее время при разработке не принято думать об эффективности, простоте и совершенстве: вплоть до того, что мне становится грустно за свою карьеру и за IT-отрасль в целом.
Для примера, современные автомобили работают, скажем, на 98% от того, что физически позволяет нынешняя конструкция двигателя. Современная архитектура использует точно рассчитанное количество материала, чтобы выполнять свою функцию и оставаться в безопасности в данных условиях. Все самолёты сошлись к оптимальному размеру/форме/нагрузке и в основном выглядят одинаково.
Только в программном обеспечении считается нормальным, если программа работает на уровне 1% или даже 0,01% от возможной производительности. Ни у кого вроде нет возражений.Читать полностью »
Как сэкономить память на вкладках браузера, но не потерять их содержимое. Опыт команды Яндекс.Браузера
2018-09-20 в 7:37, admin, рубрики: chromium, discard, Google Chrome, hibernate, Блог компании Яндекс, браузеры, разработка под windows, яндекс, яндекс.браузерКогда браузерам не хватает памяти, они выгружают из нее наиболее старые вкладки. Это раздражает, потому что клик по такой вкладке приводит к принудительной перезагрузке страницы. Сегодня мы расскажем читателям Хабра о том, как команда Яндекс.Браузера решает эту проблему с помощью технологии Hibernate.
Браузеры, основанные на Chromium, создают по процессу на каждую вкладку. У этого подхода множество достоинств. Это и безопасность (изоляция сайтов друг от друга), и стабильность (падение одного процесса не тянет за собой весь браузер), и ускорение работы на современных процессорах с большим количеством ядер. Но есть и минус – более высокое потребление оперативной памяти, чем при использовании одного процесса на всё. Если бы браузеры ничего с этим не делали, то их пользователи постоянно видели бы что-то подобное:
В проекте Chromium борются с потреблением памяти фоновыми вкладками с помощью очистки различных кэшей. Речь не про тот кэш, в котором хранятся картинки загруженных страниц. С ним проблем нет – он живет на жестком диске. В современном браузере много другой закэшированной информации, которая хранится в оперативной памяти.
Также в Chromium уже достаточно давно работают над тем, чтобы останавливать JS-таймеры в фоновых вкладках. Иначе очистка кэшей теряет смысл, т.к. активности в фоновых вкладках их восстанавливают. Считается, что если сайты хотят работать в фоне, то нужно использовать service worker, а не таймеры.
Адаптация проекта MR под HoloLens
2018-09-04 в 7:15, admin, рубрики: AR, AR и VR, hololens, microsoft, mixed reality, mixed reality toolkit, MR, unity, unity3d, Visual Studio, VR, Блог компании Microsoft, гайд, кейс, Разработка под AR и VR, разработка под windows, руководство, цикл статейВот и подходит к концу наш цикл статей по Windows Mixed Reality. В нем мы разрабатывали с нуля приложение со смешанной реальностью на Unity в формате lab work (лабораторной работы). Сегодня — завершающий аккорд, в котором мы поговорим об очень интересной теме — о HoloLens и адаптации проекта под это устройство. Присоединяйтесь!
Перенос базы данных в более старую версию MS SQL Server
2018-08-29 в 23:37, admin, рубрики: Microsoft SQL Server, mssql, sql, t-sql, Transact-SQL, администрирование, Администрирование баз данных, базы данных, разработка под windows, Серверное администрирование, системное администрирование
У вас есть база данных MS SQL Server, которую нужно перенести на другой физический комп. Вы уже сделали бэкап и радостно приступаете к восстановлению. Но тут обнаруживается, что на том компе, куда нужно перенести базу, установлена более старая версия MS SQL Server. Stack Overflow уверяет вас, что всё плохо. Но так ли это на самом деле?
Читать полностью »
SandboxEscaper-PoC-LPE: что внутри?
2018-08-29 в 7:10, admin, рубрики: ALPC, LPE, SchRpcSetSecurity, spoolsv, Task Scheduler, информационная безопасность, разработка под windows, системное программированиеНа хабре уже есть новость об этой уязвимости, но, к сожалению, без технических деталей. Предлагаю заглянуть внутрь опубликованного (автор — SandboxEscaper) архива.
Под катом расположен перевод документа-описания, находящегося в архиве.
Читать полностью »
24-ядерный CPU, а я не могу набрать электронное письмо (часть 2)
2018-08-24 в 13:18, admin, рубрики: cfg, control flow guard, MMU, VirtualScan, vmmap, блок управления памятью, блокировки, разработка под windows, системное программирование, таблицы страницВ прошлой статье я обещал подробнее раскрыть некоторые детали, которые опустил во время расследования [подвисаний Gmail в Chrome под Windows — прим. пер.], включая таблицы страниц, блокировки, WMI и ошибку vmmap. Сейчас восполняю эти пробелы вместе с обновлёнными примерами кода. Но сначала вкратце изложим суть.
Речь шла о том, что процесс с поддержкой Control Flow Guard (CFG) выделяет исполняемую память, одновременно выделяя память CFG, которую Windows никогда не освобождает. Поэтому если вы продолжаете выделять и освобождать исполняемую память по разным адресам, то процесс накапливает произвольный объём памяти CFG. Браузер Chrome делает это, что приводит к практически неограниченной утечке памяти и подвисаниям на некоторых машинах.
Нужно заметить, что подвисаний трудно избежать, если VirtualAlloc начинает работать более чем в миллион раз медленнее, чем обычно.
Читать полностью »
Windows 95 портировали на Electron
2018-08-24 в 12:37, admin, рубрики: electron, Windows 95, ненормальное программирование, разработка под windows
В последние годы операционная система Windows 95 стала эдаким эталоном для демонстрации необычных возможностей портирования: её уже запускали на умных часах Apple Watch и Android Wear и даже на консоли Xbox One. Сейчас разработчик Феликс Ризенберг из компании Slack вышел на новый уровень, выпустив Windows 95 в виде приложения Electron, которое можно скачать и запустить на macOS, Windows или Linux.
Читать полностью »