在筆者上一篇文章`《驅動開發:內核取應用層模塊基地址》`中簡單為大家介紹了如何通過遍歷`PLIST_ENTRY32`鏈表的方式獲取到`32位`應用程式中特定模塊的基地址,由于是入門系列所以并沒有封裝實作太過于通用的獲取函式,本章將繼續延申這個話題,并依次實作通用版`GetUserModuleBase... ......
2023-06-28 more注冊表是Windows中的一個重要的資料庫,用于存盤系統和應用程式的設定資訊,注冊表是一個巨大的樹形結構,無論在應用層還是內核層操作注冊表都有獨立的API函式可以使用,而在內核中讀寫注冊表則需要使用內核裝用API函式,如下將依次介紹并封裝一些案例,實作對注冊表的創建,洗掉,更新,查詢等操作。 ......
2023-06-22 more本文將對測驗驅動開發(TDD)進行探討,主要內容有:TDD基本理解、TDD常見誤區、TDD技術選型,以及案例實戰。希望通過本文,讀者能夠理解掌握TDD并將其應用于實際開發中。 ......
2023-06-14 more遠程執行緒注入是最常用的一種注入技術,在應用層注入是通過`CreateRemoteThread`這個函式實作的,通過該函式通過創建執行緒并呼叫 `LoadLibrary` 動態載入指定的DLL來實作注入,而在內核層同樣存在一個類似的內核函式`RtlCreateUserThread`,但需要注意的是此函式... ......
2023-06-14 more>譯者注:在微服務架構設計,構建API和服務間通信技術選型時,對 REST 和 gRPC 的理解和應用還存在知識盲區,近期看到國外的這篇文章:[A detailed comparison of REST and gRPC](https://kreya.app/blog/rest-vs-grpc/), ......
2023-06-11 more在應用層下的檔案操作只需要呼叫微軟應用層下的`API`函式及`C庫`標準函式即可,而如果在內核中讀寫檔案則應用層的API顯然是無法被使用的,內核層需要使用內核專有API,某些應用層下的API只需要增加Zw開頭即可在內核中使用,例如本章要講解的檔案與目錄操作相關函式,多數ARK反內核工具都具有對檔案的... ......
2023-06-10 more摘要:本文將探索內核中決議PE檔案的相關內容。 本文分享自華為云社區《驅動開發:內核PE結構VA與FOA轉換》,作者: LyShark 。 本章將探索內核中決議PE檔案的相關內容,PE檔案中FOA與VA、RVA之間的轉換也是很重要的,所謂的FOA是檔案中的地址,VA則是記憶體裝入后的虛擬地址,RVA是 ......
2023-06-09 moreWFP框架是微軟推出來替代TDIHOOK傳輸層驅動介面網路通信的方案,其默認被設計為分層結構,該框架分別提供了用戶態與內核態相同的AIP函式,在兩種模式下均可以開發防火墻產品,以下代碼我實作了一個簡單的驅動過濾防火墻。WFP 框架分為兩大層次模塊,用戶態基礎過濾引擎`BFE (BaseFilteri... ......
2023-06-08 more本文通過對貧血三層架構進行精煉,推匯出適合我們落地的應用架構,并且將之實作為Maven Archetype以應用到實際開發,然而應用架構只是落地DDD的一個知識點,要完整落地DDD還必須體系化地掌握限界背景關系、背景關系映射、充血模型、物體、值物件、領域服務、Factory、Repository等知識點... ......
2023-05-29 more不同團隊落地DDD所采取的應用架構風格可能不同,并沒有統一的、標準的DDD工程架構。即使無法制定通用的、標準的工程應用架構,但為團隊制定一個遵循領域驅動設計思想的參考架構依然有價值。 ......
2023-05-23 moreDDD作為架構設計思想幫助微服務控制規模復雜度,那它是怎么做到的呢? 一、架構設計是為了解決系統復雜度 談到架構,相信每個技術人員都是耳熟能詳,但如果深入探討一下,“為何要做架構設計?”或者“架構設計目的是什么?”類似的問題,大部分人可能從來沒有思考過,或者即使有思考,也沒有太明確可信的答案。 1. ......
2023-05-14 more1 六個問題 1.1 為什么使用DDD DDD方法論核心是將問題不斷分解,把大問題分解為小問題,大業務分解小領域,簡而言之就是分而治之,各個擊破。 分而治之是指直接面對大業務我們無從下手,需要按照一定方法進行分解,分解為高內聚的小領域,使得業務有邊界清晰,而這些小領域是我們有能力處理的,這就是領域驅 ......
2023-05-13 more學習DDD的意義 作為技術人,都有一個成為大牛的夢。 有些人可以通過自己掌握了比較底層、有深度、有難度的技術來證明自己的能力。 但對于絕大多數的應用研發工程師來說,其大部分的時間精力,會被消耗在讀不懂、講不清的屎山代碼中,以及復雜多變的業務迭代中。很少會有需要去接觸高深技術的機會,即便是接觸了,也很 ......
2023-05-12 moreHOOPS Communicator在2021版本中,推出了基于PBR(Physically Based Rendering)的渲染特性以提供更高質量的渲染技術。 PBR將材料表示為一系列方程,這些方程對光如何從表面反射進行建模,再通過GPU上運行的著色器代碼進行有效地實作。 一、工程領域可視化問題 ......
2023-04-19 more領域驅動設計(Domain Driven Design,簡稱:DDD)設計思想和方法論早在2005年時候就被提出來,但是一直沒有被重視和推薦使用,直到2015年之后微服務流行之后,再次被人重視和推薦使用。 下面我來介紹一下DDD設計思想和方法論,同時結合我們在實際專案中應用總結和思考。 目錄 1、為 ......
2023-03-24 more客觀的理解DDD DDD,即領域驅動設計,不僅帶給我們一套新的概念,還提供了一套全新的設計思路,應用在構建大型復雜軟體系統之上。 相對于DDD,我們使用的傳統的設計思路,常被稱為資料驅動設計,常被應用于中小型的專案。互聯網的專案,往往是快速迭代,起初一個小專案,慢慢會演化為一個中大型的專案,在演化過 ......
2023-03-11 more“ DDD設計的目標是關注領域模型而并非技術來創建更好的軟體,假設開發人員構建了一個SQL,并將它傳遞給基礎設施層中的某個查詢服務然后根據表資料的結構集取出所需資訊,最后將這些資訊提供給建構式或者Factory,開發人員在做這一切的時候早已不把模型看做重點了,這個整個程序就變成了資料處理的風格 ”... ......
2023-02-04 more最近看了一本書《解構-領域驅動設計》,書中提出了領域驅動設計統一程序(DDDRUP),它指明了實踐 DDD 的具體步驟,并很好地串聯了各種概念、模式和思想。因此,我對書本內容做了梳理、簡化,融入自己的理解,并結合之前閱讀的書籍以及實踐經驗,最終形成這篇文章。希望可以幫助大伙理順 DDD 的各種概念、... ......
2023-01-20 moreDDD(領域驅動設計)是 Eric Evans 于 2003 年提出的解決復雜的中大型軟體的方法,開始一直不慍不火。直到 Martin Fowler 于 2014 年發表的論文《Microservices》引起大家對微服務的關注,DDD 才重新慢慢的回到了大眾的視野中。
DDD 這幾年升溫的同時,... ......
摘要:華為云Solution as Code推出基于Ploto構建自動駕駛平臺解決方案。 本文分享自華為云社區《基于Ploto構建自動駕駛平臺》,作者:阿米托福 。 2022年6月15日,主題為“因聚而生 為你所能”的華為伙伴暨開發者大會 2022 正式開啟,在自動駕駛專場中,華為云攜手合作伙伴聯合 ......
2022-12-07 more博主最近失業在家,找作業之余,看了一些關于洋蔥(整潔)架構的資料和專案,有感而發,自己動手寫了個洋蔥架構解決方案,起名叫OnionArch。基于最新的.Net 7.0 RC1, 資料庫采用PostgreSQL, 目前實作了包括多租戶在內的12個特性。 該架構解決方案主要參考了NorthwindTra ......
2022-10-10 moreiOS開發相關的證書有很多種,iOS開發證書(iOS App Development)、iOS發布證書(iOS Distribution (App Store and Ad Hoc))、網站推送ID證書(Website Push ID Certificate)、Apple Pay付款處理證書(App ......
2022-09-02 moreMEMS傳感器即微機電系統(Micro-electro Mechanical Systems),是指將精密機械系統與微電子電路技術結合發展出來的一項工程技術,它的尺寸一般在微米量級。 ......
2022-08-23 more社交是一種永恒的需求,既有生存層面的必要,也有情感上的渴求。而隨著互聯網開始統治這個時代,社交被搬到了網上,并且越來越成為主流,社交也在發展成互聯網產品的一個重要賽道。本文將介紹Soul是如何破解Z世代社交密碼的。 文章目錄 01 年輕人的社交密碼 02 為什么對年輕人來說,Soul是那個對的產品? ......
2022-08-10 more本文分析Program.cs 中Main()函式中代碼的運行順序分析asp.net core程式的啟動,重點不是剖析原始碼,而是理清程式開始時執行的順序。到呼叫了哪些實體,哪些法方。asp.net core 3.1 的程式入口在專案Program.cs檔案里,如下。ususing System; us ......
uj5u.com 2020-09-09 22:07:49 more最近被websocket的一個問題困擾了很久,有一個需求是在web網站中搭建websocket服務。客戶端通過網頁與服務器建立連接,然后服務器根據ip給客戶端網頁發送資訊。 其實,這個需求并不難,只是剛開始對websocket的內容不太了解。上網搜索了一下,有通過asp.net core 實作的、有 ......
uj5u.com 2020-09-09 22:08:02 moreMagicodes.IE在Docker中使用 更新歷史 2019.02.13 【Nuget】版本更新到2.0.2 【匯入】修復單列匯入的Bug,單元測驗“OneColumnImporter_Test”。問題見(https://github.com/dotnetcore/Magicodes.IE/is ......
uj5u.com 2020-09-09 22:08:05 more如果你用過Asp.net webform, 說明你也算是.NET 開發的老兵了。WEBform應該是2011 2013左右,當時還用visual studio 2005、 visual studio 2008。后來基本都用的是MVC。 如果是新開發的專案,估計沒人會用webform技術。但是有些舊版 ......
uj5u.com 2020-09-09 22:08:50 more今天在iis服務器配置asp.net網站,遇到一個問題,記錄一下: 問題:由于擴展配置問題而無法提供您請求的頁面。如果該頁面是腳本,請添加處理程式。如果應下載檔案,請添加 MIME 映射。 WindowServer2012服務器,添加角色安裝完.netframework和iis之后,運行aspx頁面 ......
uj5u.com 2020-09-09 22:10:00 more帶著問題去思考,大家好! 問題1:HTTP請求和回傳相應的HTTP回應資訊之間發生了什么? 1:首先是最底層,托管層,位于WebAPI和底層HTTP堆疊之間 2:其次是 訊息處理程式管道層,這里比如日志和快取。OWIN的參考是將訊息處理程式管道的一些功能下移到堆疊下端的OWIN中間件了。 3:控制器處理 ......
uj5u.com 2020-09-09 22:11:13 more微信門戶應用管理系統,采用基于 MVC + Bootstrap + Ajax + Enterprise Library的技術路線,界面層采用Boostrap + Metronic組合的前端框架,資料訪問層支持Oracle、SQLServer、MySQL、PostgreSQL等資料庫。框架以MVC5,... ......
uj5u.com 2020-09-09 22:15:18 more帶著問題去思考,大家好!它是什么?它包含什么?它能干什么? 訊息 HTTP編程模型的核心就是訊息抽象,表示為:HttPRequestMessage,HttpResponseMessage.用于客戶端和服務端之間交換請求和回應訊息。 HttpMethod類包含了一組靜態屬性: private stat ......
uj5u.com 2020-09-09 22:15:23 more一、跨域 NuGet參考Microsoft.AspNet.WebApi.Cors WebApiConfig.cs中配置: // Web API 配置和服務 config.EnableCors(new EnableCorsAttribute("*", "*", "*")); 二、清除默認回傳XML格式 ......
uj5u.com 2020-09-09 22:15:48 moreTLDR: 視頻分割一直是重標注的一個task,這篇CVPR 2023文章研究了完全不需要標注的視頻物體分割。僅使用ResNet,RCF模型在DAVIS16/STv2/FBMS59上提升了7/9/5%。文章里還提出了不需要標注的調參方法。代碼已公開可用。 Paper title: Bootstrap ......
uj5u.com 2023-07-13 08:55:13 moreChatGPT 是一種強大的自然語言處理模型。在作業中,我們可以借助其卓越的自然語言生成能力,快速檢索代碼資訊,使程式員們能更加專注于業務邏輯的實作和優化。然而,由于它的知識庫僅覆寫至 2021 年 9 月前的資訊,一些新的技術檔案無法被查詢到,例如我們公司前端經常使用的開源框架 TDesign。本... ......
uj5u.com 2023-07-13 08:54:46 moreChatGPT 是一種強大的自然語言處理模型。在作業中,我們可以借助其卓越的自然語言生成能力,快速檢索代碼資訊,使程式員們能更加專注于業務邏輯的實作和優化。然而,由于它的知識庫僅覆寫至 2021 年 9 月前的資訊,一些新的技術檔案無法被查詢到,例如我們公司前端經常使用的開源框架 TDesign。本... ......
uj5u.com 2023-07-13 08:48:40 more學習數字信號處理演算法時整理的學習筆記。本篇介紹 VSB 殘留邊帶調幅信號的調制與解調,內附全套 MATLAB 代碼。 ......
uj5u.com 2023-07-13 08:46:20 more一、簡介: Eureka是由Netflix公司開源的一款提供服務注冊和發現的產品。因此,在添加依賴時,會有NetFlix。 該組件管理各種的服務功能:注冊、 發現、熔斷、負載、降級等。 Eureka采用的是基于C/S的設計架構。 Eureka由兩部分組成(Server/Client):Eureka服 ......
uj5u.com 2023-07-13 08:46:06 more# Python中實作定時任務 在專案中,我們可能遇到有定時任務的需求。 - 其一:每隔一個時間段就執行任務。 比如:壓測中每隔45分鐘調整溫箱的溫度。 - 其二:定時執行任務。 例如每天早上 8 點定時推送早報。 今天,我跟大家分享下 Python 定時任務的實作方法。 ## 固定時間間隔執行任務 ......
uj5u.com 2023-07-13 08:45:57 more# Python中實作定時任務 在專案中,我們可能遇到有定時任務的需求。 - 其一:每隔一個時間段就執行任務。 比如:壓測中每隔45分鐘調整溫箱的溫度。 - 其二:定時執行任務。 例如每天早上 8 點定時推送早報。 今天,我跟大家分享下 Python 定時任務的實作方法。 ## 固定時間間隔執行任務 ......
uj5u.com 2023-07-13 08:45:20 more一、簡介: Eureka是由Netflix公司開源的一款提供服務注冊和發現的產品。因此,在添加依賴時,會有NetFlix。 該組件管理各種的服務功能:注冊、 發現、熔斷、負載、降級等。 Eureka采用的是基于C/S的設計架構。 Eureka由兩部分組成(Server/Client):Eureka服 ......
uj5u.com 2023-07-13 08:39:42 more<a href="https://www.cnblogs.com/pandefu/" target="_blank"><img width="48" height="48" class="pfs" src="https://pic.cnblogs.com/face/1630815/20190315181946.png" alt="" /><...
uj5u.com 2023-07-13 08:37:03 more## 引言 在C#中,讓執行緒同步有兩種方式: - 鎖(lock、Monitor) - 信號量(EventWaitHandle、Semaphore、Mutex) 執行緒鎖的原理,就是鎖住一個資源,使得應用程式在此刻只有一個執行緒訪問該資源。通俗地講,就是讓多執行緒變成單執行緒。在C#中,可以將被鎖定的資源理解 ......
uj5u.com 2023-07-13 08:36:31 more