- 博客(355)
- 资源 (21)
- 收藏
- 关注
原创 嵌入式设备的功能安全和信息安全?
功能安全主要侧重于确保设备在遭遇故障或异常情况下仍能以安全的方式运行,防止对环境和人员造成危害。它注重的是系统的容错能力与安全防护,通常通过冗余设计、故障检测与自恢复机制来实现。在一些关键领域,如汽车、工业控制和医疗设备,功能安全至关重要。例如,在汽车领域,如果车载嵌入式系统发生故障,可能会导致制动系统失效,造成严重的交通事故。功能安全其实比较好理解,功能安全的核心在于确保系统在预期的运行环境中,即使遇到故障也能保持安全状态或进入安全的失效模式。这不仅涉及到硬件的设计,还包括软件的开发、测试和验证。
2025-03-09 16:07:24
1228
原创 摄像头3A算法概述
摄像头的3A算法指的是自动对焦(Auto Focus)、自动曝光(Auto Exposure)和自动白平衡(Auto White Balance)三种自动调节摄像头参数的算法。3A算法可以帮助摄像头根据环境条件自动调整参数,从而获得更好的图像质量和效果。人眼在观察物体时,会根据不同光源的性质调整所观察到的物体颜色,从而使其看起来更加真实和自然。然而,相机在不同色温的光源下拍摄到的图像会产生偏色,这是由于不同光源的颜色温度不同,造成了图像中的色温偏差。
2023-12-07 13:28:27
4736
原创 智驾车载Camera基础知识
在汽车领域,车载摄像头不仅可以用于行车记录和倒车影像等基本功能,还被广泛用于高级驾驶辅助系统(ADAS)和自动驾驶技术中。通过车载摄像头采集的图像信息,可以实现对车辆周围环境的感知和识别,从而提供更准确的驾驶辅助和决策支持。在自动驾驶车辆中,感知系统由摄像头、毫米波雷达和激光雷达等传感器组成。其中,摄像头作为主要的环境感知传感器发挥着关键作用。它能够提供360°全方位视觉感知,弥补了雷达在物体识别上的局限性,同时也是最接近人类视觉的传感器之一。
2023-12-06 18:07:03
4281
原创 深入理解守护进程:守护进程干嘛的?
在计算机科学中,守护进程(Daemon)是一类在后台运行的系统服务进程,而不是在交互式用户界面下运行的进程。它们通常在系统启动时启动,并持续运行以提供某种服务或执行特定任务。守护进程独立于任何终端会话,通常不接受用户输入,而是通过系统的事件驱动或定时器来执行任务。Linux系统有很多守护进程,大多数服务都是用守护进程实现的。例如常见的常见的守护进程包括系统日志进程syslogdweb服务器httpd、邮件服务器sendmail和数据库服务器mysqld等。
2023-12-06 15:20:50
8237
原创 Linux入门指南:Linux环境变量解析
你是不是经常听说Linux环境变量,但又对它一头雾水?别着急,让我们一起来揭开这个神秘的面纱,探索一番吧!先来理解一下,环境变量到底是个什么玩意儿?简单来说,它就是一些系统级别的信息,比如命令搜索路径、用户配置等等。在Linux里,环境变量扮演着非常重要的角色,影响着系统的运行和用户的体验。你可能会问:“有哪些环境变量是我经常会碰到的呢?”别着急,这里给你列举一些。比如,PATH是用来指定可执行文件的搜索路径,HOME代表用户的主目录,USER表示当前登录的用户名,还有一堆类似的东西。
2023-12-06 13:22:02
1146
原创 深入探索Linux文件系统与挂载点:掌握分区、挂载技巧
本篇内容很简单,就是给分享一下挂载的小知识点。在挂载文件系统的时候,尽可能选择空目录进行挂载,当然了不是空的目录也可以,但是不建议。在实际的挂载中会出现这样一种情况,如果选择当挂载点的目录非空,当文件系统挂载上之后就会发现原来目录下的文件都“丢失”了,不是真的丢失了,只是隐藏了而已。当你把文件系统卸载之后机会发现目录下原来的文件又都回来了。👇点击下方公众号卡片获取资料👇。
2023-07-30 22:18:33
1963
原创 总结一下Linux中的压缩与解压缩工具以及详细使用方法
上面介绍了四个工具,但是实际只需要掌握一两个即可,这里推荐大家掌握tar命令和zip命令,这两个命令也是Linux环境下用的最多的一个压缩工具了。tar适合打包大量文件,gzip适合需要长期存储或传输的文件,bzip2适合需要节省存储空间的文件,zip适合在不同操作系统间传输文件。具体选择哪个工具取决于具体需求。
2023-07-29 22:14:35
2677
原创 今天给我的Ubuntu服务器挂在了一个4T的硬盘却只能识别到2T,原来是因为这!涨知识了
今天买的4T机械硬盘到了,准备给我的服务器加装上,用来作为Nextcloud的存储硬盘。把硬盘安装好后就迫不及待的进行挂载,挂载的操作倒是挺顺利的,但是无论怎么操作Ubuntu系统识别到的大小居然都是2T,最后没办法,又将硬盘挂载到我的Windows电脑上,结果你猜怎么着… …Windows电脑识别到的居然是4T。那现在已经确定不是硬件问题了,绝对是我在Ubuntu上挂载出现问题了。通过今天的折腾也学到了不少知识,至少知道了MBR和GPT分区的区别,之前重来没关注过MBR分区方式居然最大只能支持2T的硬盘。
2023-07-02 01:29:41
3609
原创 Linux内核代码60%都是驱动?驱动代码不会造成内核臃肿吗?
为什么Linux内核代码60%都是驱动?如果每支持新的设备就加入驱动,内核会不会变得越来越臃肿?内核代码和内核,这是两个完全不一样的概念,我们通过git clone命令从网上拉取下来的代码叫做内核代码,如果增加新的设备内核代码确实会变得越来越臃肿,这点是肯定的,但是内核并不会变得臃肿,具体原因我们接下里会进行讨论。说了那么多内核代码,那内核是什么呢?为什么内核代码变多了内核却不会变大?内核是我们通过交叉编译。
2023-06-26 22:34:50
756
原创 直到我买了服务器才知道有个自己的服务器有多爽!
但是vscode也有一个坑,就是ssh连接服务器之后CPU的消耗特别高,两个核直接占满了,造成服务器非常卡顿,所以使用了一段时间后放弃了使用shh连接服务器来看代码,现在使用samba打开代码,然后使用Mobaxterm ssh连接服务器来编译代码,如果你的服务器核数比较多可以忽略这个问题。
2023-06-19 21:04:43
1334
原创 Linux驱动:I2C驱动看这一篇就够了
I2C协议是在开发中使用非常频繁的一种协议,相信大家在学习单片机的时候经常会用到支持I2C协议的模块,I2C 总线仅仅使用 SCL、SDA 这两根信号线就实现了设备之间的数据交互,极大地简化了对硬件资源和 PCB 板布线空间的占用。因此,I2C 总线被非常广泛地应用在 EEPROM、实时钟、小型 LCD 等设备与 CPU 的接口中。但是与裸机开发不同的是在 Linux 系统中,I2C 驱动由 3 部分组成,即I2C 核心I2C 总线驱动和I2C 设备驱动。
2023-06-15 22:45:00
4536
1
原创 Linux电脑USB怎么识别到我插入的设备是什么设备?
不知道大家在学习Linux的时候有没有过这样的疑问,为什么我们通过同一个接口接入的不同USB设备,我们的电脑都可以识别到呢?为什么Linux电脑不会把鼠标识别成键盘呢?带着这些疑问我们一起来看一下USB的识别和加载过程。Linux系统识别USB设备的过程可以分为四个步骤:设备连接、驱动匹配、设备注册和设备访问。当用户将USB设备插入计算机时,内核将通过USB总线来检测设备的插入事件,并尝试查找与设备匹配的驱动程序。一旦找到了匹配的驱动程序,驱动程序将被加载并启动,它将尝试对设备进行初始化,并将其注册到内核。
2023-05-06 13:22:14
3326
1
原创 给大家分享一个比Top更好用的Linux进程管理工具htop
相信用过Linux操作系统的同学对Top应该都不陌生,我们通过Top命令可以查看CPU的占用率以及每个进程的详细信息,但是今天我要给大家分享一个比Top更好用的进程管理工具htopHigh Tophtop是一个高级系统监控工具,可用于查看正在运行的进程和占用资源的情况。它提供了更多功能和更友好的交互界面,常常被用作top命令的替代品,使用户可以更方便地管理进程和资源。下面给大家总结一下htop工具常用的一些功能:查看进程和资源使用情况。显示系统中运行进程的树形结构。支持鼠标操作以及键盘快捷方式。
2023-04-25 20:00:00
1665
原创 Linux内核进程管理与调度:策略优化与实践分析
今天给大家上点硬货,关于Linux的进程管理和调度是学习和理解Linux的必学知识。为协调多个进程“同时”运行,现代操作系统通常使用进程优先级这一基本手段。每个进程都有一个与之相关的优先级,如果有多个可执行的进程等待CPU资源,那么具有更高优先级的进程将优先被调度执行。今天就给大家讲解一下Linux内核中的进程管理和调度,文章内容较长,大家记得先赞后看。
2023-04-24 22:45:00
1239
原创 上下文切换,你确定了解吗?
上下文是指进程(或线程)的运行环境,它包括了当前执行的代码位置、寄存器内容、栈指针、内存映像、打开的文件、网络连接等状态信息。而上下文切换则是指当一个进程由于某种原因需要放弃 CPU 的控制权时,操作系统将它的上下文保存下来,并恢复另一个进程的上下文以便让其继续执行。
2023-04-23 21:45:00
2682
原创 通过一个实例讲解一下多线程和互斥锁的使用
最近在写多进程和Linux中的各种锁的文章,总觉得只有文字讲解虽然能够知道多进程和互斥锁是什么,但是还是不知道到底该怎么用,今天我就用一个买票的例子来给大家讲解一下多线程和互斥锁到底该如何使用,相信大家对于这个知识点会有一个更深的理解。有一个全局变量num线程1和线程2都可以对num做加一操作那理想情况下num这是我们的理想状态,但是如果用多线程会出现什么现象呢?我们一起来通过编程实现一下多线程。互斥锁是一种用于确保同一时间只有一个线程访问共享资源的机制。
2023-04-19 23:00:00
539
原创 通过一个小例子来看一下C语言指针 p、*p、&p、*&p、&*p分别代表什么
在C语言中,指针是非常重要的概念。指针是一个变量,其值为另一个变量的地址。使用指针可以直接访问内存中的数据,这使得C语言非常灵活和强大。在学习C语言时相比大家都已经知道了和的区别了,但是你知道*&p和&*p又代表什么吗?
2023-04-19 11:16:32
994
原创 作为嵌入式开发工程师,关于Linux kernel同步机制的这些知识点你不得不知道
同步就是进程与进程之间,进程与系统资源之间的交互。由于 Linux内核采用的是多任务,所以在多个进程之间,必须要有同步机制来保证彼此协调。在 Linux内核中,有很多种同步机制。今天我们主要讲一下 kernel中的异步和同步机制,其中重点介绍一下 kernel中的异步机制,kernel中的异步机制分为两种:一种是应用层的同步机制,也就是应用层线程之间的通信,另一种是内核的同步机制。
2023-04-19 00:24:18
548
原创 什么是信号量?如何在Linux内核中使用信号量?
当多个进程或线程同时访问共享资源时,容易出现竞争条件()问题,从而导致程序运行出错。为了避免这种情况,需要使用同步机制来协调进程或线程的访问,而信号量(Semaphore)就是一种常用的同步机制。本文将介绍信号量的基本概念、原理以及在Linux内核中的使用方法。信号量是一种计数器,用于控制对共享资源的访问。其本质是一个整型变量,可通过特定的操作进行访问和修改。信号量用于解决并发程序中的同步和互斥问题。在Linux中,信号量可以用于控制进程和线程对共享内存区域的访问。P操作和V操作。P。
2023-04-18 13:20:23
901
原创 什么是原子操作?如何在Linux内核中使用原子操作?
上篇文章已经给大家介绍了Linux中的各种锁(Linux内核中的互斥锁、读写锁、自旋锁、信号量该如何选择?),今天这篇文章给大家介绍一下Linux中的原子操作。原子操作是指一个或多个操作,这些操作在计算机系统中是不可分割的,也就是说,如果出现问题,整个操作都将失败,而不仅仅是部分操作。原子操作通常用于多线程编程,以确保多个线程之间的操作不会发生冲突。其实读-修改-写。
2023-04-18 11:24:40
650
原创 【Linux驱动开发100问】Linux系统调度
在计算机科学中,系统调用()是一种操作系统提供的服务,它允许应用程序通过软件中断的方式访问操作系统内核中的函数。这些函数提供了一系列与硬件相关的服务,例如文件系统访问、进程管理、网络通信等。应用程序通过系统调用接口来调用这些函数,以便实现各种功能。在Linux系统中,系统调用是一种非常重要的机制。它允许应用程序访问内核级别的资源和服务,例如文件系统、网络和设备等。这些服务通过系统调用接口提供给应用程序,因此应用程序可以使用这些服务来执行各种操作,例如读写文件、创建进程、发送数据等。
2023-04-18 11:11:47
616
原创 Linux内核中的互斥锁、读写锁、自旋锁、信号量该如何选择?
Linux内核中有许多不同类型的锁,它们都可以用来保护关键资源,以避免多个线程或进程之间发生竞争条件,从而保护系统的稳定性和可靠性。这些锁的类型包括:互斥锁(mutex)、读写锁(rwlock)、自旋锁(spinlock)和信号量(semaphore今天就给大家介绍一下Linux内核中的各种锁,以及我们在实际项目中该如何选择使用哪个锁。互斥锁(mutex是最常用的锁,它可以保护共享资源,使得在某个时刻只有一个线程或进程可以访问它。读写锁(rwlock。
2023-04-12 22:45:00
612
原创 如何在Linux系统中使用sysfs?
sysfs是一种文件系统,它允许用户和内核使用文件的方式来交互。sysfs通常用于与设备驱动程序交互,以便用户可以更改驱动程序的行为或访问有关驱动程序状态的信息。在本文中,我们将介绍如何在Linux系统中使用sysfs。sysfs是一种虚拟文件系统,它将系统中的设备、驱动程序和其他内核对象表示为文件和目录。sysfs通常被挂载到/sys目录中,其中每个设备和驱动程序都具有唯一的目录。每个目录中包含多个文件,用于控制设备的行为或提供有关设备状态的信息。sysfs。
2023-04-02 00:05:25
1247
原创 【Linux驱动开发100问】如何加载和卸载Linux模块?
Linux内核是一个可扩展的操作系统,它允许用户在运行时加载和卸载内核模块。内核模块可以添加新的功能或修改现有功能,而不需要重新编译整个内核。本文将介绍如何加载和卸载Linux模块。在Linux中,加载和卸载模块是一项非常重要的任务,可以让用户灵活地扩展和修改内核。使用insmod和rmmod命令可以方便地加载和卸载内核模块。👇点击下方公众号卡片获取资料👇。
2023-04-01 23:39:15
813
原创 【Linux驱动开发100问】什么是Kconfig?如何使用Kconfig?
一、什么是Kconfig?二、Kconfig使用方法2.1 使用make menuconfig命令进行配置2.2 手动编辑Kconfig文件进行配置三、结论Kconfig是Linux内核中的一个配置系统,允许用户自定义内核配置并生成相应的配置文件。本文将对Kconfig进行介绍,并提供Kconfig的使用方法。
2023-04-01 23:23:13
1403
原创 Linux中的常用网络命令:ping、traceroute和nslookup
本文介绍Linux中的三个常用网络命令:ping、traceroute和nslookup,帮助用户管理和维护网络连接,诊断网络故障和监控网络性能,快来一起学习一下吧!
2023-04-01 23:04:28
2716
原创 嵌入式 Linux 入门:如何在IMX6ULL开发板上安装和配置 Linux 操作系统
本文主要介绍了如何在IMX6ULL开发板上安装和配置 Linux 操作系统
2023-03-14 14:10:27
1075
原创 Linux驱动中的open函数是如何从软件打通硬件呢?
打开文件是Linux系统中最基本的操作之一,open函数可以实现打开文件的功能。下面我将为您介绍open函数打通上层到底层硬件的详细过程。
2023-02-27 21:00:00
2401
2
原创 Linux环境下的软件管理:如何查看、卸载和了解软件的作用和依赖项
本文介绍了在Linux环境下进行软件管理的方法,包括查看已安装的软件、卸载软件、了解软件的作用和依赖项。对于Linux初学者和有经验的用户,本文提供了命令行和GUI工具两种方法,使用户可以轻松地管理和维护Linux系统。如果您想更好地了解Linux环境下的软件管理,那么本文一定会对您有所帮助。
2023-02-22 21:30:00
2487
原创 时间管理在计算机世界中的重要性:从千年虫到现在的日期处理
今年 2 月的最后一天是 2023/2/28, 不是一个闰年,那么,你知道计算机是怎么开始处理日期的么? 你知道 “千年虫” 的紧急事件么? 你的代码在处理日期的时候,会出现什么bug 呢?
2023-02-22 10:07:57
509
SPP-C蓝牙模块技术手册.pdf
2020-04-03
SPP-C蓝牙模块AT指令集.pdf
2020-04-03
创客大赛流程.docx
2020-04-03
TAXT程序红外-超声波模块-可行.rar
2020-04-02
电梯仿真学习版使用指南(1).pdf
2020-04-02
STM32驱动舵机.zip
2020-04-02
OLED[IIC].rar
2020-04-02
灰度使用说明.pdf
2020-04-02
数码管两位1—20.rar
2020-04-02
STM32心形流水灯.rar
2020-04-02
串口接收和发送命令.rar
2020-04-02
串口控制LED.rar
2020-04-02
1-2-35-阵列键盘测试程序.zip
2020-04-02
STM32F103C8T6最小系统板.zip
2020-04-02
避障小车—超声波避障—李斌.rar
2020-04-02
超声波模块hc-sr04
2020-04-02
AD3D封装库.zip
2020-04-02
按键点亮LED.rar
2020-04-02
ASCII码表.py
2020-01-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人