主頁 >  其他 > 2020-10-24

2020-10-24

2020-10-26 07:01:55 其他

IPC通信

  1. IPC的基本概念
    處理器間通信(IPC)提供了一個與處理器無關的API,可用于多處理器環境中處理器之間的通信(內核間)、與同一處理器上的其他執行緒的通信(行程間)和與外圍設備(設備間)的通信,API支持訊息傳遞、流和鏈接串列,IPC可用于與以下方面進行通信:
    同一處理器上的其他執行緒
    運行SYS/BIOS的其他處理器上的執行緒
    運行HLOS的其他處理器上的執行緒(例如Linux、QNX、Android)
    在這里插入圖片描述

處理器間/處理器內部通信(IPC)是一種產品,用于在多處理器環境中實作處理器之間的通信,IPC的特點包括訊息傳遞、多處理器門、共享記憶體原語等.
IPC被設計用于與運行SYS/BIOS應用程式的處理器一起使用,這通常是ARM或DSP,IPC包括支持高級作業系統(HLOS),如Linux,以及SYS/BIOS RTOS,在HLOS環境中支持的IPC特征的寬度被減少,以便簡化產品,
IPC通常分布并安裝在更大的SDK中,在這些情況下,不需要安裝,
在SDK之外,IPC可以在這里下載,并作為zip檔案發布,要安裝,只需提取檔案即可…這將在目錄中提取IPC產品及其產品名稱和版本資訊(例如,c:/ti/ipc_),
IPC產品提供多個處理器之間的軟體連接,每個處理器可以運行HLOS(例如
Linux、QNX)或RTOS(例如,SYS/BIOS),IPC是一個開源的專案, 你可以在這里找到它http://git.ti.com/ipc/ipcdev.

處理器SDKInstaller(ti-processor-sdk-linux-[platformName]-evm-xx.xx-Linux-x86-Install.bin)將安裝必要的組件,以便在TI微處理器上啟動您的開發,SDK由MatrixAppLauncher起始點應用程式的源代碼、一個開發檔案系統、一個目標檔案系統、示例應用程式、工具鏈和板支持包、易用性腳本和檔案組成,處理器SDK現在包括ARM GCC工具鏈,處理器SDK是根據特定的Linux發行版名稱和版本Ubuntu16.04和18.04構建和測驗的,注意,這并不妨礙用戶在其他Linux發行版上安裝SDK,
最后一步是下載并安裝處理器-SDKRTOS,要獲取本軟體的最新版本,請參見設備的“軟體產品”頁,
示例的二進制影像位于主機和各個內核的相應目錄中,可以通過使用通過JTAG的CCS加載和運行二進制檔案來運行示例,
本文面向在Cortex A 15上運行Linux的AM57xx用戶,其目標是幫助用戶了解如何獲得AM57xx的DSP(C66x)和IPU (Cortex M4)子系統的權限,
AM572x設備有兩個IPU (IPUSS),每個子系統有兩個核心,IPU 2被用作多媒體應用程式中的控制器,所以如果您在運行處理器SDK Linux,那么IPU 2很可能已經加載了韌體,但是,IPU 1是開放的,用于通用編程來卸載ARM任務,
這個任務有很多方面:構建、加載、除錯、MMU、記憶體共享等等,本文打算采取漸進的步驟來理解所有這些部分,

  1. IPC for AM57xx
    AM57xxSOC“S”有多個處理器內核-CortexA15、C66xDSP和ARMM4內核,A15通常運行諸如Linux/QNX/Android之類的HLOS,而RemoteCore(DSP)S和M4)運行RTOS,在正常操作中,引導加載器(U-boot/SPL)引導并加載帶有HLOS的A15,A15啟動DSP和M4內核,
    在這里插入圖片描述

在這個序列中,電源復位與遠程設備(即DSP和M4)之間的間隔取決于HLOS初始化時間,

下圖說明ARMLinux內核的遠程proc/rpMsg驅動程式如何與運行RTOS的從處理器(如DSP、IPU等)上的IPC驅動程式通信,
在這里插入圖片描述

為了在從內核上設定IPC,我們在IPC包中提供了一些可從ARMLinux運行的預先構建的示例,接下來的章節描述了如何構建和運行此示例,并將其用作此作業的起點,

CMEM
To view the allocation at run-time:
root@am57xx-evm:~# cat /proc/cmem

這表明我們在0xA0000000的物理基地址上定義了一個CMEM塊,其總大小為0xc 000000(192 MB),此塊包含由1個緩沖區組成的緩沖池,池中的每個緩沖區(本例中只有一個)被定義為大小為0xc000000(192 MB),

更改DSP記憶體映射
首先,重要的是要理解,存在一對位于DSP子系統和L3互連之間的存盤器管理單元(MMUS),其中一個MMUUS用于DSP核心,另一個是針對其本地EDMA,它們都用于將虛擬地址(即,由DSP子系統觀看的地址)轉換為物理地址(即,從L3互連觀看的地址)的相同目的,

DSP物理地址DSP代碼/資料實際駐留的物理位置由CMA carveouts進行定義,要更改此位置,您必須更改香芹的定義,在LinuxDTS檔案中定義了DSP carveouts,例如對于AM57xxEVM:

您可以同時更改大小和位置,小心不要重疊任何其他carveouts!

此外,當您更改分出位置時,必須對資源表進行相應的更改,首先,如果您正在進行記憶體更改,則需要一個自定義資源表,資源表是一個大型結構,是物理記憶體和虛擬記憶體之間的“橋梁”,此結構用于配置位于DSP子系統前面的MMU,IPCResourceCustomTable一文中提供了詳細的資訊,
創建自定義資源表后,必須將phys_mem_IPC_VRING的地址更新為與相應的CMA相同的基址,

DSP虛擬地址
這些地址是DSP子系統看到的地址,也就是聯結器命令檔案中的地址,等等,您必須確保節的大小與資源表中的相應定義一致,您應該創建自己的資源表,以修改記憶體映射,這是在頁IPC資源自定義表中描述的,您可以查看IPC中的現有資源表:
換句話說,由于我們使用了身份映射,所以可以在它們的物理地址處訪問外圍設備,
運行時檢查DSPIOMMU頁面表
可以使用以下命令轉儲DSPIOMMU頁表:
一般來說,MMU 0和MMU 1的編程方式是相同的,所以您只需要查看其中一個或另一個就可以理解給定DSP的映射,
“da”(“設備地址”)列反映虛擬地址,它是從索引中派生的,即在頁表中不存在“da”暫存器或欄位,地址空間中的每個MB映射到表中的條目,顯示“da”,使其易于找到感興趣的虛擬地址,
“pte”(“頁表項”)列可以根據上述表20-4進行解碼,例如:

1: 0x4a000000 0x4a040002
0x4a040002向我們表明,它是一個基地址0x4A000000的超值,這給了我們一個16 MB的記憶體頁面,注意后面重復的條目,這是MMU的要求,
為了充分理解CortexM4IPU子系統的記憶體映射,認識到存在兩種不同/獨立的記憶體轉換級別很有幫助,以下是TRM中的片段以說明:

CortexM4 IPU物理地址
M4代碼/資料實際所在的物理位置由CMA carveout進行定義,要更改此位置,您必須更改香芹的定義,M4 carveout在LinuxDTS檔案中定義,例如對于AM57xxEVM:

此外,當您更改 carveout的位置時,必須對資源表進行相應的更改,首先,如果您正在進行記憶體更改,您需要自定義資源表,資源表是一個大型結構,是物理記憶體和虛擬記憶體之間的“橋”,此結構用于配置IPUxMMU(不是UniCacheMMU),在文章IPC資源定制表中提供了詳細資訊,創建自定義資源表時,必須將physmemIPCvring的地址更新為與相應CMA相同的基地址,

CortexM4IPU虛擬地址
UniCacheMMU,
UniCacheMMU最接近CortexM4,它提供了一級地址翻譯,UniCacheMMU實際上是由CortexM4“自行編程”的,UniCacheMMU也被稱為屬性MMU(AMMU),有固定數量的小、中和大頁面,以下是顯示一些關鍵映射的片段:

這3頁是“身份”映射,對關聯的地址范圍執行請求通過,這些中間地址在下一級翻譯(IOMMU)中被映射到它們的物理地址,用于代碼和資料的AMMU范圍需要是標識映射,因為否則RemoteProc加載器將無法與相關聯的IOMMU映射從ELF檔案中匹配這些部分,這些映射應足以滿足任何應用,即無需調整這些映射,修改的更可能區域是下一節中的資源表,AMMU映射主要用于理解關于CortexM4存盤器映射的完整影像,

IOMMU
IOMMU位于離L3互連最近的地方,它獲取來自AmMu的中間地址輸出,并將其轉換為L3互連所使用的物理地址,IOMMU是由ARM基于相關資源表撰寫的,如果您正在計劃任何記憶體更改,那么您將需要創建一個自定義資源表,如頁面IPC資源自定義表中所描述的那樣,

來自資源表的3個條目都來自相關聯的IPUCMA池(即,如由型別_CARSOUT所指示的),第二引數表示虛擬地址(即對IOMMU的輸入地址),這些地址必須與AMMU映射以及聯結器命令檔案一致,來自IPC的EX02_MessageQ示例在檔案示例/Dra7xx_Linux_ELF/EX02_MessageQ/共享/config.bld.中定義了這些記憶體部分您可以使用以下命令卸載IPUIOMMU頁面表:

示例:從IPU訪問UART5在本例中,假定引導加載程式中已經設定了PIN-MUXED,如果不是這樣,你就得在這做,UART5模塊需要通過CM_L4PER_UART5_CLKCTRL暫存器使能,這位于物理地址0x4A009870,因此,從M4,我們將在虛擬地址0x6A009870上對該暫存器進行編程,將值2寫入此暫存器將啟用外圍設備,在完成上一個步驟后,UART5暫存器將變為可訪問的,通常UART5可在物理基礎地址0x48066000處訪問,這將相應地從IPU在0x68066000處訪問,
默認情況下,IPU和DSP自動空閑,這可以防止您能夠使用JTAG連接到設備,也無法通過devme 2訪問本地記憶體,在sysfs中有一些選項是必要的,以強制這些子系統運行,有時這是開發和除錯目的所需要的,這些操作需要一些源自設備樹(dra7.dtsi)的硬編碼設備名稱:
在這里插入圖片描述

要將這些系統FS名稱映射到關聯的RemoteProc條目,您可以運行以下命令:
root@am57xx-evm:~# ls -l /sys/kernel/debug/remoteproc/
root@am57xx-evm:~# cat /sys/kernel/debug/remoteproc/remoteproc*/name
命令的結果將是一對一的映射,例如,58820000.ipu對應于remoteproc0,
類似地,要查看每個核心的電源狀態:
root@am57xx-evm:~# cat /sys/class/remoteproc/remoteproc*/state
狀態可以掛起、運行、脫機等,只有當狀態“運行”時,才能附加JTAG,如果它顯示為“暫停”,則必須強制它運行,例如,假設DSP 0被“掛起”,可以運行以下命令強制執行:
root@am57xx-evm:~# echo on > /sys/bus/platform/devices/40800000.dsp/power/control
任何核心都是如此,但是用上面圖表中關聯的系統FS名稱替換40800000.dsp,

  1. 將IPC添加到從內核上的現有TI-RTOS
    應用程式將IPC添加到DSP上現有的TIRTOS應用程式上
    人們想要做的一個常見的事情是采用現有的DSP應用程式,并將IPC添加到它,當從DSP遷移到帶有ARM+DSP的異構SoC時,這很常見,這是本部分的重點,為了描述這個程序,我們需要一個示例測驗用例來處理,為此,我們將使用GPIO_LEDBLINK_EVMAM572X_C66XExample專案示例,該示例是PDK的一部分(作為處理器SDKRTOS的一部分安裝),您可以在C:TiPDK_AM57xx_1_0_4PackageMyExample_GPIO_LEDBLINK_EVMAM572X_C66XExample專案中找到它,此示例使用SYS/BIOS并將用戶0閃爍在AM572XGPEVM上,它在EVM絲印螢屏上標記為D4,恰好位于藍色重置按鈕的右側,

有幾個步驟進行整個程序作業,每個步驟將在下面的章節中進行描述,并使用代碼撰寫器Studio(CCS)在EVM上運行“開箱即用”LED閃爍示例,從IPC軟體包獲取EX02_訊息示例,并將其轉換為CCS專案,建立它并修改Linux啟動代碼以使用此新映像,這只是一個明智的檢查步驟,以確保我們可以在CCS中構建IPC示例,并讓它們在EVM啟動時運行,在CCS中,進行開箱即用的LED示例的克隆,并將其重命名為“S”示例的IPC版本,然后,使用EX02_MessageQ示例作為參考,在IPC塊中添加到LED示例,從CCS構建然后將其添加到Linux韌體檔案夾中,

將IPC添加到LED閃爍示例第一步是克隆出開箱即用的LED閃爍CCS專案,并將其重命名為使用IPC表示它,執行此操作的最簡單方法是使用CCS,下面是步驟……在“編輯”(Edit)透視圖中,進入“專案瀏覽器”(ProjectExplorer)視窗,右鍵單擊GPIO_LEDBLINK_EVMAN572XC66XExampleProject專案,然后從彈出式選單中選擇“復制”(Copy),Maske確定專案不是關閉狀態,Rick單擊專案瀏覽器視窗的“In”和“空”區域,然后選擇“過去”,彈出對話框,修改名稱以表示它使用IPC,一個好的名稱是GPIO_LEDBLINK_EVMAM572XC66XExamplejec_with_IPC,

右鍵單擊GPIO_LedBlink_evmAM572x c66xExampleProjec_With_IPC專案并在左側窗格中選擇Properties,單擊CCS General,在右側,單擊RTSC選項卡上的XDCtools版本:在產品和存盤庫串列中選擇3.32.0.06_core,檢查以下.IPC 3.43.2.04 SYS/BIOS 6.45.1.29 am57xx PDK 1.0.4 for Target,選擇ti.Target ts.elf.C66作為平臺,選擇ti.platforms.evmDRA7XX,在平臺被選中后,編輯其名稱BueHand并追加:dsp 1到末尾,在此之后,應該是ti.platforms.evmDRA7XX:dsp 1,然后將構建組態檔設定為DEBUG,按下OK按鈕,現在,我們希望將EX02_MessageQIPC示例的配置和源檔案復制到我們的專案中,IPC示例位于C:TiIPC_3_43_02_04ExampleDra7xx_Linux_ELFEX02_MessageQ,要將檔案復制到CCS專案中,您可以簡單地選擇Windows資源管理器中所需的檔案,然后將它們拖放到CCS中的專案中,將這些檔案復制到CCS專案中……

人們想要做的一件常見的事情就是使用一個現有的IPU應用程式,它可以控制串行或控制介面,并將IPC添加到其中,這樣韌體就可以從ARM加載,當從唯一的IPU解決方案遷移到具有MPUSS(ARM)和IPUSS的異構SoC時,這種情況很常見,這是本節的重點,為了描述這個程序,我們需要一個TI RTOS測驗用例來處理,為此,我們將使用屬于PDK(安裝為處理器SDKRTOS的一部分)的UART_BasicExgrom_evmAM572x_m4ExampleProject示例,此示例使用TI RTOS并在AM572xGP EVM上使用UART 3埠執行串行IO操作,它在EVM螢屏上被標記為SerialDebug,

為使整個程序作業采取了若干步驟,每個步驟將在下面的章節中進行描述使用代碼ComposerStudio(CCS)構建并運行EVM上的開箱即用UARTM4示例從IPC軟體包構建并運行EX02_MessageQ示例,并將其轉換為CCS專案,建立它并修改Linux啟動代碼以使用此新映像,這只是一個明智的檢查步驟,以確保我們可以在CCS中構建IPC示例,并讓它們在EVM啟動時運行,在CCS中,進行開箱即用UARTM4示例的克隆,并將其重命名為該示例的IPC版本,然后使用EX02_MessageQ示例作為參考,在IPC塊中添加到UART示例代碼,從CCS構建然后將其添加到Linux韌體檔案夾中,

Linux內核啟用所有配置所需的SOCHW模塊,適當的驅動程式配置所需的時鐘并初始化HW暫存器,對于所有未使用的IP,沒有配置時鐘, 使用設備樹在內核中禁用uart3節點,此外,這限制了內核將這些IP放到睡眠模式,
在每個IPU 1和IPU 2子系統中都有兩個MMU,L1 MMU稱為IPU_UNICACHE_MMU或AmMu和L2 MMU,關于如何在IPC-Remoteproc中配置這一點的說明已在Changing_Cortex_M4_ IPU _Memory_Map一節中進行了描述,IPC處理L1和L2 MMU不同于PDK驅動程式示例如何使用這些MMU設定記憶體訪問,用戶在集成組件時需要管理這些MMU,這種差異突出如下:

PDK示例將地址(0x4X000000)用于外圍暫存器,并使用以下MMU設定L2 MMU使用默認1:1映射Ammu Configuration將物理0x4X000000訪問轉換為邏輯0x4X000000
IPC遠程proc ARM M4要求IPU使用邏輯地址(0x6X000000),并使用以下MMU設定L2 MMU,使MMU將0x6X000000訪問地址轉換為地址0x4X000000(配置為1:1映射和0x6X000000)

因此,在將IPC與PDK驅動程式集成之后,建議使用別名地址來訪問外圍設備和PRCM暫存器,這需要更改PDK驅動程式和應用程式代碼中使用的地址,然后對IPU應用程式源代碼進行以下更改:
將UART_SOC.C檔案添加到專案中,并修改UART_HATTRS中所有IPUUART暫存器實體的基本地址,以使用別名地址:

添加自定義SOC配置還意味著您應該使用通用的UART驅動程式,而不是內置在SOC設定中的驅動程式,要執行此注釋,請在.cfg中使用以下行:

在應用代碼中也有一個實體,在該實體中,我們將指標添加到需要改變如下的PRCM暫存器,現在,您已經準備好構建韌體,構建.out之后,將擴展名更改為.xem 4,并將其復制到用于加載M4韌體的檔案系統中的位置,

  1. IPC模塊的子系統
    IPC模塊初始化IPC的各個子系統,并同步多個處理器,
    MessageQ模塊支持可變長度訊息的結構化發送和接收,
    ListMP模塊是一個基于鏈表的模塊,旨在提供不同處理器之間的通信方式,它使用共享記憶體為多個處理器提供共享、傳遞或存盤資料緩沖區、訊息或狀態資訊的方法,
    HeapMP模塊提供3種型別的記憶體管理、固定大小的緩沖區、多個不同的固定大小緩沖區和可變大小的緩沖區.
    GateMP模塊通過其實體執行本地和遠程背景關系保護,通知模塊通過硬體中斷管理軟體中斷的復用/解復用,
    SharedRegion模塊設計用于多處理器環境中,其中存在跨不同處理器共享和訪問的記憶體區域,串列模塊支持創建雙鏈接的物件串列,MultiProc模塊在多處理器環境中將處理器ID管理集中到一個模塊中,
    NameServerModule管理本地名稱/值對,這使得應用程式和其他模塊能夠基于名稱來調整和檢索值,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/191500.html

標籤:其他

上一篇:Tomcat:第三章:Tomcat各組件

下一篇:2020年程式員節雜記:老驥明知桑榆晚,不用揚鞭自奮蹄

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more