RV1126新增驱动IMX415 SENSOR,实现v4l2抓图
RV1126新增驱动IMX415 SENSOR,实现v4l2抓图。
1:内核dts修改
&csi_dphy0 {
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
mipi_in_ucam0: endpoint@1 {
reg = <1>;
remote-endpoint = <&ucam_out0>;
data-lanes = <1 2 3 4>;
};
};
port@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
csidphy0_out: endpoint@0 {
reg = <0>;
remote-endpoint = <&mipi_csi2_input>;
};
};
};
};
&i2c1 {
status = "okay";
clock-frequency = <400000>;
imx415: imx415@1a {
compatible = "sony,imx415";
reg = <0x1a>;
clocks = <&cru CLK_MIPICSI_OUT>;
clock-names = "xvclk";
power-domains = <&power RV1126_PD_VI>;
pinctrl-names = "rockchip,camera_default";
pinctrl-0 = <&mipicsi_clk0>;
avdd-supply = <&vcc3v3_sys>;
dovdd-supply = <&vcc_1v8>;
dvdd-supply = <&vcc_dvdd>;
/* reset is always pulled high in v10 */
reset-gpios = <&gpio1 RK_PD5 GPIO_ACTIVE_LOW>;
rockchip,camera-module-index = <1>;
rockchip,camera-module-facing = "front";
rockchip,camera-module-name = "YT10092";
rockchip,camera-module-lens-name = "IR0147-50IRC-8M-F20";
ir-cut = <&cam_ircut0>;
flash-leds = <&flash_ir>;
port {
ucam_out0: endpoint {
remote-endpoint = <&mipi_in_ucam0>;
data-lanes = <1 2 3 4>;
};
};
};
};
2:Makefile修改
obj-$(CONFIG_VIDEO_IMX415)+= imx415.o
3:Kconfig修改
config VIDEO_IMX415
4:驱动对应的宏开关打开
以上修改后,重新编译内核。重新总体编译。
5:单板启动注册成功
[root@RV1126_RV1109:/]
Media controllerAPI version 4.19.111
Media deviceinformation
------------------------
driver rkcif
model rkcif_mipi_lvds
serial
bus info
hw revision 0x0
driverversion 4.19.111
Device topology
- entity 1:stream_cif_mipi_id0 (1 pad, 4 links)
type Node subtype V4L flags 0
device node name /dev/video0
pad0: Sink
<-"rockchip-mipi-csi2":1 [ENABLED]
<-"rockchip-mipi-csi2":2 []
<-"rockchip-mipi-csi2":3 []
<-"rockchip-mipi-csi2":4 []
- entity 5:stream_cif_mipi_id1 (1 pad, 4 links)
type Node subtype V4L flags 0
device node name /dev/video1
pad0: Sink
<-"rockchip-mipi-csi2":1 []
<- "rockchip-mipi-csi2":2[ENABLED]
<-"rockchip-mipi-csi2":3 []
<-"rockchip-mipi-csi2":4 []
- entity 9:stream_cif_mipi_id2 (1 pad, 4 links)
type Node subtype V4L flags 0
device node name /dev/video2
pad0: Sink
<-"rockchip-mipi-csi2":1 []
<-"rockchip-mipi-csi2":2 []
<-"rockchip-mipi-csi2":3 [ENABLED]
<-"rockchip-mipi-csi2":4 []
- entity 13:stream_cif_mipi_id3 (1 pad, 4 links)
type Node subtype V4L flags 0
device node name /dev/video3
pad0: Sink
<-"rockchip-mipi-csi2":1 []
<-"rockchip-mipi-csi2":2 []
<-"rockchip-mipi-csi2":3 []
<-"rockchip-mipi-csi2":4 [ENABLED]
- entity 17:rockchip-mipi-csi2 (5 pads, 17 links)
type V4L2 subdev subtype Unknownflags 0
device node name /dev/v4l-subdev1
pad0: Sink
[fmt:SGBRG10_1X10/3864x2192field:none
crop.bounds:(12,16)/3840x2160
crop:(12,16)/3840x2160]
<-"rockchip-mipi-dphy-rx":1 [ENABLED]
pad1: Source
[fmt:SGBRG10_1X10/3864x2192field:none
crop.bounds:(12,16)/3840x2160
crop:(12,16)/3840x2160]
->"stream_cif_mipi_id0":0 [ENABLED]
->"stream_cif_mipi_id1":0 []
-> "stream_cif_mipi_id2":0 []
->"stream_cif_mipi_id3":0 []
pad2: Source
[fmt:SGBRG10_1X10/3864x2192field:none
crop.bounds:(12,16)/3840x2160
crop:(12,16)/3840x2160]
-> "stream_cif_mipi_id0":0 []
->"stream_cif_mipi_id1":0 [ENABLED]
->"stream_cif_mipi_id2":0 []
->"stream_cif_mipi_id3":0 []
pad3: Source
[fmt:SGBRG10_1X10/3864x2192field:none
crop.bounds:(12,16)/3840x2160
crop:(12,16)/3840x2160]
->"stream_cif_mipi_id0":0 []
->"stream_cif_mipi_id1":0 []
->"stream_cif_mipi_id2":0 [ENABLED]
-> "stream_cif_mipi_id3":0[]
pad4: Source
[fmt:SGBRG10_1X10/3864x2192field:none
crop.bounds:(12,16)/3840x2160
crop:(12,16)/3840x2160]
->"stream_cif_mipi_id0":0 []
-> "stream_cif_mipi_id1":0[]
->"stream_cif_mipi_id2":0 []
->"stream_cif_mipi_id3":0 [ENABLED]
- entity 23:rockchip-mipi-dphy-rx (2 pads, 2 links)
type V4L2 subdev subtype Unknownflags 0
device node name /dev/v4l-subdev2
pad0: Sink
[fmt:SGBRG10_1X10/3864x2192@10000/300000 field:none
crop.bounds:(12,16)/3840x2160]
<- "m01_f_imx4151-001a":0 [ENABLED]
pad1: Source
[fmt:SGBRG10_1X10/3864x2192@10000/300000field:none
crop.bounds:(12,16)/3840x2160]
->"rockchip-mipi-csi2":0 [ENABLED]
- entity 28:rkcif-mipi-luma (0 pad, 0 link)
type Node subtype V4L flags 0
device node name /dev/video4
- entity 31:m01_f_imx415 1-001a (1 pad, 1 link)
type V4L2 subdev subtype Sensorflags 0
device node name /dev/v4l-subdev3
pad0: Source
[fmt:SGBRG10_1X10/3864x2192@10000/300000 field:none
crop.bounds:(12,16)/3840x2160]
->"rockchip-mipi-dphy-rx":0 [ENABLED]
- entity 35:m01_f_ircut (0 pad, 0 link)
type V4L2 subdev subtype Lens flags1
device node name /dev/v4l-subdev4
[root@RV1126_RV1109:/]#
ioctl:VIDIOC_ENUM_FMT
Type: Video Capture Multiplanar
[0]: 'NV16' (Y/CbCr 4:2:2)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[1]: 'NV61' (Y/CrCb 4:2:2)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[2]: 'NV12' (Y/CbCr 4:2:0)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[3]: 'NV21' (Y/CrCb 4:2:0)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[4]: 'YUYV' (YUYV 4:2:2)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[5]: 'YVYU' (YVYU 4:2:2)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[6]: 'UYVY' (UYVY 4:2:2)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[7]: 'VYUY' (VYUY 4:2:2)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[8]: 'RGB3' (24-bit RGB 8-8-8)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[9]: 'RGBP' (16-bit RGB 5-6-5)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[10]: 'BGRH' (18-bit BGRX 6-6-6-14)
Size: Stepwise 64x64 - 3864x2192 withstep 8/8
[11]: 'RGGB' (8-bit Bayer RGRG/GBGB)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[12]: 'GRBG' (8-bit Bayer GRGR/BGBG)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[13]: 'GBRG' (8-bit Bayer GBGB/RGRG)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[14]: 'BA81' (8-bit Bayer BGBG/GRGR)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[15]: 'RG10' (10-bit Bayer RGRG/GBGB)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[16]: 'BA10' (10-bit Bayer GRGR/BGBG)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[17]: 'GB10' (10-bit Bayer GBGB/RGRG)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[18]: 'BG10' (10-bit Bayer BGBG/GRGR)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[19]: 'RG12' (12-bit Bayer RGRG/GBGB)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[20]: 'BA12' (12-bit Bayer GRGR/BGBG)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[21]: 'GB12' (12-bit Bayer GBGB/RGRG)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[22]: 'BG12' (12-bit Bayer BGBG/GRGR)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[23]: 'BYR2' (16-bit Bayer BGBG/GRGR)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[24]: 'Y16 ' (16-bit Greyscale)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[25]: 'GREY' (8-bit Greyscale)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[26]: 'EBD8' (Embedded data 8-bit,compressed)
Size: Stepwise 64x64 -3864x2192 with step 8/8
[27]: 'SPD6' (Shield pix data 16-bit,compressed)
Size: Stepwise 64x64 -3864x2192 with step 8/8
6:v4l2抓图成功
[root@RV1126_RV1109:/]#v4l2-ctl -d /dev/video0 --set-fmt-video=width=3840,heigh
t=2160,pixelformat=SGBRG10_1X10\--stream-mmap=3 \--stream-skip=3 \--stream-to=/
tmp/cif888.out\--stream-count=1 \--stream-poll
[ 216.222320] rkcif_mipi_lvds: stream[0] startstreaming
[ 216.222446] rockchip-mipi-csi2ffb10000.mipi-csi2: stream on, src_sd: d2dfee3b, sd_name:rockchip-mipi-dphy-rx
[ 216.222457] rockchip-mipi-csi2ffb10000.mipi-csi2: stream ON
[ 216.222484] rockchip-mipi-dphy-rxff4b0000.csi-dphy: stream on:1
[ 216.222500] rockchip-mipi-dphy-rx:data_rate_mbps 892
[ 216.223557] rockchip-mipi-dphy-rxff4b0000.csi-dphy: stream on:1
<<<[ 216.473292] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.506625] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.539958] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.573304] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.606626] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.639971] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.673278] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.706639] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.739943] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.773291] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.806637] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.839973] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.873305] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.906639] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.939971] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
[ 216.973304] rkcif_mipi_lvds: not activebuffer, skip current frame, mipi/lvds stream[0]
<[ 216.987827] rkcif_mipi_lvds: stream[0] startstopping
[ 217.006837] rockchip-mipi-csi2ffb10000.mipi-csi2: stream off, src_sd: d2dfee3b, sd_name:rockchip-mipi-dphy-rx
[ 217.006906] rockchip-mipi-csi2ffb10000.mipi-csi2: stream OFF
[ 217.006944] rockchip-mipi-dphy-rxff4b0000.csi-dphy: stream on:0
[ 217.008102] rockchip-mipi-dphy-rxff4b0000.csi-dphy: stream on:0
[ 217.009920] rkcif_mipi_lvds: stream[0]stopping finished
7:抓图文件查看
[root@RV1126_RV1109:/tmp]#ls -l
total 16512
drwxr-xr-x 2 avahiavahi 40 Jan 1 00:00 avahi-autoipd
-rw-r--r-- 1root root 16588800 Jan 1 00:03 cif888.out
-rw-r--r-- 1root root 66024 Jan 1 00:00 cl_viv_vx_ext.h
drwxr-xr-x 2root root 60 Jan 1 00:00 dbus
-rw-r--r-- 1root root 0 Jan 1 00:00 dnsmasq.leases
---------- 1root root 6 Jan 1 00:00 loglevel
-rw-r--r-- 1root root 25687 Jan 1 00:04 messages
-rw-r--r-- 1root root 204896 Jan 1 00:03 messages.0
-rw-r--r-- 1root root 1349 Jan 1 00:00 mountall.log
drwxr-xr-x 7root root 180 Jan 1 00:00 nginx
-rw-r--r-- 1root root 55 Jan 1 00:00 resolv.conf
drwxr-xr-x 2root root 60 Jan 1 00:00 subsys
drwx------ 2root root 40 Jan 1 00:00 tmp.4soNzzu8dM
8:至此驱动调试完成,欢迎讨论交流
相关文章:
RV1126新增驱动IMX415 SENSOR,实现v4l2抓图
RV1126新增驱动IMX415 SENSOR,实现v4l2抓图。1:内核dts修改&csi_dphy0 {status "okay";ports {#address-cells <1>;#size-cells <0>;port0 {reg <0>;#address-cells <1>;#size-cells <0>;mipi_in_uca…...

Hive 数据倾斜
数据倾斜,即单个节点任务所处理的数据量远大于同类型任务所处理的数据量,导致该节点成为整个作业的瓶颈,这是分布式系统不可能避免的问题。从本质来说,导致数据倾斜有两种原因,一是任务读取大文件,二是任务…...

2月刚上岸字节跳动测试岗面经
这时候发应该还不算太晚,金三银四找工作的小伙伴需要的可以看看。 一、测试工程师的工作是什么? 测试工程师简单点说就是找bug,然后反馈给开发人员,不要小看这个工作。 首先很明显的bug开发人员有时候自己就能找到,测…...

图解KMP算法
子串的定位操作通常称作串的模式匹配。你可以理解为在一篇英语文章中查找某个单词是否存在,或者说在一个主串中寻找某子串是否存在。朴素的模式匹配算法假设我们要从下面的主串S "goodgoogle" 中,找到T "google" 这个子串的位置。…...

Java Map和Set
目录1. 二叉排序树(二叉搜索树)1.1 二叉搜索树的查找1.2 二叉搜索树的插入1.3 二叉搜索树的删除(7种情况)1.4 二叉搜索树和TreeMap、TreeSet的关系2. Map和Set的区别与联系2.1 从接口框架的角度分析2.2 从存储的模型角度分析【2种模型】3. 关于Map3.1 Ma…...

【C/C++ 数据结构】-八大排序之 冒泡排序快速排序
作者:学Java的冬瓜 博客主页:☀冬瓜的主页🌙 专栏:【C/C数据结构与算法】 分享:那我便像你一样,永远躲在水面之下,面具之后! ——《画江湖之不良人》 主要内容:八大排序选…...

苹果ipa软件下载网站和软件的汇总
随着时间的流逝,做苹果版软件安装包下载网站和软件的渐渐多了起来。 当然,已经关站、停运、下架、倒闭的苹果软件下载网站和软件我就不说了,也不必多说那些关站停运下架倒闭的网站和软件了。 下面我统计介绍的就是苹果软件安装包下载网站和软…...

深度学习-【语义分割】学习笔记4 膨胀卷积(Dilated convolution)
文章目录膨胀卷积为什么需要膨胀卷积gridding effect连续使用三次膨胀卷积——1连续使用三次膨胀卷积——2连续使用三次膨胀卷积——3Understanding Convolution for Semantic Segmentation膨胀卷积 膨胀卷积,又叫空洞卷积。 左边是普通卷积,右边是膨胀…...

【10】SCI易中期刊推荐——工程技术-计算机:人工智能(中科院2区)
🚀🚀🚀NEW!!!SCI易中期刊推荐栏目来啦 ~ 📚🍀 SCI即《科学引文索引》(Science Citation Index, SCI),是1961年由美国科学信息研究所(Institute for Scientific Information, ISI)创办的文献检索工具,创始人是美国著名情报专家尤金加菲尔德(Eugene Garfield…...

模电计算反馈系数,有时候转化为计算电阻分压的问题
模电计算反馈系数,有时候转化为计算电阻分压的问题 如果是电压反馈,F的除数是Uo 如果是电流反馈,F的除数是Io 串联反馈,F的分子是Uf 并联反馈,F的分子是If 点个赞呗,大家一起加油学习!...

专治Java底子差,不要再认为泛型就是一对尖括号了
文章目录一、泛型1.1 泛型概述1.2 集合泛型的使用1.2.1 未使用泛型1.2.2 使用泛型1.3 泛型类1.3.1 泛型类的使用1.2.2 泛型类的继承1.4 泛型方法1.5 泛型通配符1.5.1 通配符的使用1)参数列表带有泛型2)泛型通配符1.5.2 泛型上下边界1.6 泛型的擦除1.6.1 …...

PayPal轮询收款的那些事儿
想必做跨境电商独立站的小伙伴,对于PayPal是再熟悉不过了,PayPal是一个跨国际贸易的支付平台,对于做独立站的朋友来说跨境收款绝大部分都是依赖PayPal以及Stripe条纹了。简单来说PayPal跟国内的支付宝有点类似,但是PayPal它是跨国…...

【Linux】项目自动化构建工具——make/Makefile
目录 1.make与Makefile的关系 Makefile make 项目清理 clean .PHONY 当我们编写一个较大的软件项目时,通常需要将多个源文件编译成可执行程序或库文件。为了简化这个过程,我们可以使用 make 工具和 Makefile 文件。Makefile 文件可以帮助我们自动…...

成本降低90%,OpenAI正式开放ChαtGΡΤ
今天凌晨,OpenAI官方发布ChαtGΡΤ和Whisper的接囗,开发人员现在可以通过API使用最新的文本生成和语音转文本功能。OpenAI称:通过一系列系统级优化,自去年12月以来,ChαtGΡΤ的成本降低了90%;现在OpenAI用…...

hls.js如何播放m3u8文件(实例)?
HLS(HTTP Live Streaming)是一种视频流传输协议,是苹果推出的适用于iOS与macOS平台的流媒体传输协议。它将视频分割成若干个小段,每个小段大小一般为2~10秒不等,并通过HTTP协议进行传输。通过在每个小段之间插入若干秒…...
大数据平台建设方法论集合
文章目录从0到1建设大数据解决方案大数据集群的方法论数据集成方法论机器学习算法平台方法论BI建设的方法论云原生大数据的方法论低代码数据中台的方法论大数据SRE运维方法论批流一体化建设的方法论数据治理的方法论湖仓一体化建设的方法论数据分析挖掘方法论数字化转型方法论数…...

25- 卷积神经网络(CNN)原理 (TensorFlow系列) (深度学习)
知识要点 卷积神经网络的几个主要结构: 卷积层(Convolutions): Valid :不填充,也就是最终大小为卷积后的大小. Same:输出大小与原图大小一致,那么N 变成了N2P. padding-零填充. 池化层(Subsampli…...
把数组里面数值排成最小的数
问题描述:输入一个正整数数组,将它们连接起来排成一个数,输出能排出的所有数字中最小的一个。例如输入数组{12, 567},则输出这两个能排成的最小数字12567。请给出解决问题的算法,并证明该算法。 思路:先将…...

云his系统源码 SaaS应用 基于Angular+Nginx+Java+Spring开发
云his系统源码 SaaS应用 功能易扩 统一对外接口管理 一、系统概述: 本套云HIS系统采用主流成熟技术开发,软件结构简洁、代码规范易阅读,SaaS应用,全浏览器访问前后端分离,多服务协同,服务可拆分ÿ…...
小红书场景营销怎么做?场景营销主要模式有哪些
小红书作为新兴媒体领域的佼佼者,凭借着生动,直观,代入感等元素的分享推荐收揽了巨额的流量。但是,随着时代的脚步逐渐加快,发展和变革随之涌来,传统的营销已经无法满足。所以场景营销就出现了。今天就来和…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面
代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...

《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

NFT模式:数字资产确权与链游经济系统构建
NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...
SQL Server 触发器调用存储过程实现发送 HTTP 请求
文章目录 需求分析解决第 1 步:前置条件,启用 OLE 自动化方式 1:使用 SQL 实现启用 OLE 自动化方式 2:Sql Server 2005启动OLE自动化方式 3:Sql Server 2008启动OLE自动化第 2 步:创建存储过程第 3 步:创建触发器扩展 - 如何调试?第 1 步:登录 SQL Server 2008第 2 步…...

MySQL的pymysql操作
本章是MySQL的最后一章,MySQL到此完结,下一站Hadoop!!! 这章很简单,完整代码在最后,详细讲解之前python课程里面也有,感兴趣的可以往前找一下 一、查询操作 我们需要打开pycharm …...
【HarmonyOS 5】鸿蒙中Stage模型与FA模型详解
一、前言 在HarmonyOS 5的应用开发模型中,featureAbility是旧版FA模型(Feature Ability)的用法,Stage模型已采用全新的应用架构,推荐使用组件化的上下文获取方式,而非依赖featureAbility。 FA大概是API7之…...

对象回调初步研究
_OBJECT_TYPE结构分析 在介绍什么是对象回调前,首先要熟悉下结构 以我们上篇线程回调介绍过的导出的PsProcessType 结构为例,用_OBJECT_TYPE这个结构来解析它,0x80处就是今天要介绍的回调链表,但是先不着急,先把目光…...

DeepSeek越强,Kimi越慌?
被DeepSeek吊打的Kimi,还有多少人在用? 去年,月之暗面创始人杨植麟别提有多风光了。90后清华学霸,国产大模型六小虎之一,手握十几亿美金的融资。旗下的AI助手Kimi烧钱如流水,单月光是投流就花费2个亿。 疯…...