自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Linux 设备驱动概述及开发环境构建 (一)

本章导读 本章将介绍Linux设备驱动开发的基本概念, 并对所有相关内容所基于的平台和开发环境进行讲解。 1.1节阐明设备驱动的概念和作用。 1.2节和1.3节分别讲解在无操作系统情况下和有操作系统情况下设备驱动的设计, 通过对设计差异的分析, 讲解

  • 博客(27)
  • 资源 (1)
  • 收藏
  • 关注

转载 一文读懂VCSEL

何谓激光?何谓半导体激光器?亦何谓之垂直腔面半导体激光器?

2024-06-25 16:13:45 712

原创 单点DToF激光测距传感器各家产品的比较

汇总DToF 单点测距传感器的相关信息

2024-03-13 14:06:10 893

原创 Windows Hello Enhanced Sign-In Security,通常被简称为“Secure Biometrics”

Windows Hello Enhanced Sign-In Security,通常被简称为“Secure Biometrics”。

2024-02-21 16:10:21 453

原创 AI和存储中相关名称解释

整理汇总了AI和存储中会接触到的专业名词及相关作用描述, 供各君参考, 如有错漏,请指正。

2024-02-21 10:31:54 244

原创 指纹识别 之 电容式、超声波和光学式 三面鼎立

指纹识别的3个方案

2023-07-06 10:03:09 299

转载 生物识别传感器 安全性要求背景

生物识别传感器可基于其欺骗和冒名攻击的接受率以及生物识别管道的安全分类为 3 类(之前的强)、2 类(之前的弱)或 1 类(之前的便利)。此分类确定生物识别传感器所具有的与平台和第三方应用接口的功能。若要将传感器归类为 1 类、2 类或 3 类,需要满足下面详述的额外要求。2 类和 3 类生物识别都可以获得下面详述的额外功能。

2022-10-12 11:34:55 245

原创 衡量生物识别解锁模式的安全性

生物识别安全性衡量及测试的描述

2022-10-12 11:25:45 461

原创 更好的生物识别

生物识别的安全性简介

2022-10-12 11:17:13 502

转载 转发 指纹识别身份验证 HIDL

Fingerprint HIDL在配有指纹传感器的设备上,用户可以注册一个或多个指纹,并使用这些指纹来解锁设备以及执行其他任务。Android 会利用 Fingerprint HIDL(硬件接口定义语言)连接到供应商专用库和指纹硬件(例如指纹传感器)。如需实现 Fingerprint HIDL,您必须在某个供应商专用库中实现IBiometricsFingerprint.hal。指纹匹配设备的指纹传感器通常处于闲置状态。不过,为了响应对authenticate或enroll的调用,指...

2021-06-04 11:16:41 266

转载 转载 讨论Android SAR 相关知识

生物识别借助生物识别因素,可在 Android 平台上实现安全的身份验证。Android 框架包含人脸和指纹生物识别身份验证方式。您可对 Android 进行自定义以支持其他形式的生物识别身份验证方式(例如虹膜)。所有生物识别实现都必须符合安全规范且具有较高的安全评级才能使用BiometricPrompt类。衡量生物识别的指标有冒名接受率 (IAR)和欺骗接受率 (SAR)。如需详细了解生物识别安全规范,请参阅衡量生物识别解锁模式的安全性。来源Android 10引入了Biome...

2021-06-04 11:05:42 484

原创 自旋锁

1. 自旋锁的的使用自旋锁(Spin Lock)是一种典型的对临界资源进行互斥访问的手段,其名称来源于它的工作方式。为了获得一个自旋锁,在某个CPU上运行的代码需要先执行一个原子操作, 该操作测试并设置(Test-And-Set)某个内存变量。 由于它是原子操作, 所以再该操作完成之前其他执行单位不可能访问这个内存变量。 如果测试结果表明锁已经空闲, 则程序获得这个自旋锁并继续执行;如果测试结...

2020-04-23 15:17:22 296

原创 修复Google Chrome浏览器无法在Windows 10上运行

修复Google Chrome浏览器无法在Windows 10上无法正常打开任何网页, 但是自带的IE是可以正常工作的。方法其实很简单, 就是使用window7的兼容模式, 就可以了1. 右键chrome图标, 打开“属性”, 设置下图, “以兼容模式运行这个程序”2. “以管理员身份运行此程序”3. 确认, 重新打开chrome, 就可以畅游了...

2020-04-08 14:35:10 2361

原创 Ubuntu 18 内存swap不够的完美优化方案---实测有效

在编译时遇到out of memory allocating 的完美解决方案Ubuntu 18 修改swap分区大小1、查看初始状态查看原先swap大小root@kevinl:~# free -h原先swap文件位置root@kevinl:~# swapon -s2、创建一个新的swap文件一般swap分区要大于或等于物理内存(1-1.5倍),最大一般有20G即...

2020-04-08 14:17:41 1129

原创 Linux的文件操作

1. 文件操作系统的调用Linux的文件操作系统调用(在Windows编程领域,操作系统提供的接口称为 API)涉及创建(create)、打开(open)、读写(read/write)和关闭(close)文件。1.1 创建int creat(const char *filename, mode_t mode)参数mode指定新建文件的存取属性, 它和umask一起决定了文件的最终...

2020-03-03 19:38:53 128

原创 SourceTree提示ssh密钥认证失败以及通过http方式gitclone出现内存不够问题的解决

问题描述1. 某一天一直出现git clone http:// xxxx 出现内存不够的错误, 基本上尝试了网上所有方法都不行2. 修改为ssh clone方式, 出现ssh 密钥认证失败经过学习大神们的方法, 加上自己的多次尝试, 得偿所愿完成通过ssh clone,记录以备后续学习。其实本身我的gitlab或者sourcetree 都有建立了ssh密钥, ...

2020-02-27 16:50:27 2203

原创 Linux编码风格

Linux 有独特的编码风格,在内核源代码下存在一个文件Documentation/CodingStyle,进行了比较详细的描述。Linux 程序的命名习惯和Windows 程序的命名习惯及著名的匈牙利命名法有很大的不同。在Windows 程序中,习惯以如下方式命名宏、变量和函数:#define PI 3.1415 // 用大写字母代表宏int minValue,...

2020-02-25 15:42:27 226

原创 Linux内核的引导

引导Linux 系统的过程包括很多阶段。一般的SoC 内嵌入了bootrom,上电时bootrom 运行。对于CPU0 而言,bootrom 会去引导bootloader,而其他CPU 则判断自己是不是CPU0,进入WFI 的状态等待CPU0 来唤醒它。CPU0 引导bootloader,bootloader 引导Linux 内核,在内核启动阶段,CPU0 会发中断唤醒CPU1,之后CPU0 和C...

2020-02-25 11:26:21 366

原创 Linux内核的编译及加载

1. Linux内核的编译Linux 驱动开发者需要牢固地掌握Linux 内核的编译方法以为嵌入式系统构建可运行的Linux 操作系统映像。在编译内核时,需要配置内核,可以使用下面命令中的一个:#make config (基于文本的最为传统的配置界面,不推荐使用)#make menuconfig (基于文本菜单的配置界面, 推荐使用)#make xconfig (要求QT被安装)...

2020-02-24 13:15:49 475

原创 Linux 内核的组成

1.1Linux 内核源代码的目录结构Linux 内核源代码包含如下目录。● arch :包含和硬件体系结构相关的代码,每种平台占一个相应的目录,如 i386、arm、arm64、powerpc、mips 等。Linux 内核目前已经支持30 种左右的体系结构。在arch目录下,存放的是各个平台以及各个平台的芯片对Linux 内核进程调度、内存管理、中断等的支持,以及每个具体的SoC 和...

2020-02-21 15:22:07 228

原创 Linux 内核的演变及新版Linux 内核的特点

Linux 操作系统是UNIX 操作系统的一种克隆系统,是一种类UNIX 操作系统,诞生于1991 年10 月5 日(第一次正式向外公布的时间),起初的作者是Linus Torvalds。Linux 操作系统的诞生、发展和成长过程依赖着5 个重要支柱:UNIX 操作系统、Minix 操作系统、GNU 计划、POSIX 标准和Internet。1. UNIX 操作系统UNIX 操作系统是美国...

2020-02-20 16:18:50 433

原创 驱动设计的硬件基础

本篇内容讲述底层驱动工程师必备的硬件基础,给出了嵌入式系统硬件原理及分析方法的一个完整而简洁的全景视图。第一节描述了微控制器、微处理器、数字信号处理器以及应用于特定领域的处理器各自的特点,分析了处理器的体系结构和指令集。第二节对嵌入系统中使用的各类存储器与CPU的接口、应用领域及特点进行了归纳整理。第三节分析了常见的外设接口与总线的工作方式,包括串口、I2C、SPI、USB、以太网接口...

2020-02-20 16:06:25 812

原创 Git基本教程

1.Git简介Git是目前世界上最先进的分布式版本控制系统,在处理各种项目时都十分高效Git是分布式版本控制系统,它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。2.Git安装(仅列出在Windows系统下的安装过程)打开Git官网下载安装程序,然后按照默认选项安装即可。安装完成后,打开Git bash软件,...

2020-02-17 10:19:05 208

原创 Linux 设备驱动概述及开发环境构建 (一)

目录本章导读1.1 设备驱动的作用1.2 无操作系统时的设备驱动1.3 有操作系统时的设备驱动1.4 Linux设备驱动本章导读本章将介绍Linux设备驱动开发的基本概念, 并对所有相关内容所基于的平台和开发环境进行讲解。1.1节阐明设备驱动的概念和作用。1.2节和1.3节分别讲解在无操作系统情况下和有操作系统情况下设备驱动的设计, 通过对设计差异的分析,...

2020-02-11 14:14:53 388

原创 Python3.6 Learning Note

20190813完成基础语法学习, 了解import 的引用20190814基本数据类型Python 变量不需要申明, 只要赋值就被申明, 且必须在使用前进行赋值 ounter = 100 # 整型变量 miles = 1000.0 # 浮点型变量 name = "runoob" # 字符串 ...

2019-08-14 16:14:19 132

原创 Linux Kernel log 定义

#define FP_DEBUG#ifdef FP_DEBUG#define egislog_a(fmt,args...) printk(KERN_ALERT "[][ALERT]: %s: Line %d: " fmt, __FUNCTION__,__LINE__,## args)#define egislog_d(fmt,args...) printk(KERN_DEBUG "[][DE...

2018-11-29 09:11:00 1388

原创 release_wake_lock/ret_acquire_wake_lock error code的详解

那位大侠知道Android M 关于wake lock的详细使用方式和返回代码的, 请赐教哦ret=-2 到底表示啥呢?Line 96786: 03-29 08:34:03.380594   339   339 I FingerprintHal: [fingerprint.c] [do_event_status:346] CAPTURE_WAIT_FINGER_ON Line

2016-03-31 14:10:04 488

原创 TTL和CMOS电路

一:TTL电路;TTL电路就是TTL电路中流过的电流,TTL是晶体管-晶体管逻辑电路(Transistor-Transistor Logic)的缩写。TTL电路是电流控制器件。1、标准输出的TTL电路:标准TTL电路为16mA;LS-TTL电路为8mA;S-TTL电路为20mA;ALS-TTL电路为8mA;AS-TTL电路为20mA; 2、大电流输出的TTL电路:标准TTL电路

2015-09-16 12:45:36 499

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除