自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(584)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

原创 Linux系统软件工程师/嵌入式Linux应用开发工程师 知识体系构建 500篇(持续更新)

今年受疫情影响,企业经营必不可免地受到冲击,企业在选人用人方面比以往都更加谨慎,招聘也更加苛刻。hr都试图用最低的成本去招最优秀的人才。本人从事嵌入式软件开发多年,结合自己的经验,推出了《嵌入式软件工程师技术面专题》,预计会有40篇,分成硬件协议、多进程多线程编程、网络编程、linux基础、C/C++等几大模块,每一篇在末尾都总结了相关提问,其中有些知识,即使是工作了两三年的同学也未必都懂,所以社招的同学也可以看,对于找工作绝对有帮助。**不打无准备之战,提前做好准备,方可立于不败之地**。欢迎大家订阅,只

2020-09-13 11:12:01 39476 61

原创 Linux C/C++ or 嵌入式面试之《多进程多线程编程系列》(3) 守护进程

守护进程(daemon),是一种运行在后台 的特殊进程,它独立于控制终端 ,并周期性地执行某项任务或等待处理某些发生的事件。守护进程是个特殊的孤儿进程,这种进程脱离终端,为什么要脱离终端呢?之所以脱离于终端是为了避免进程被任何终端所产生的信息所打断,其在执行过程中的信息也不在任何终端上显示。由于在 Linux 中,每一个系统与用户进行交流的界面称为终端,每一个从此终端开始运行的进程都会依附于这个终端,这个终端就称为这些进程的控制终端,当控制终端被关闭时,相应的进程都会自动关闭。但是守护进程却能突破这种限制

2020-08-17 09:21:18 2667 4

原创 Linux C/C++ or 嵌入式面试之《多进程多线程编程系列》(4) 进程同步和通信的方式有哪些?

占个坑

2020-08-16 16:27:48 9481 3

原创 Linux C/C++ or 嵌入式面试之《多进程多线程编程系列》(15) 内核空间、用户空间、内核态、用户态

占个坑

2020-08-16 16:18:39 9552 2

原创 Linux C/C++ or 嵌入式面试之《多进程多线程编程系列》(13) 请你描述下进程虚拟内存空间布局

对于这个问题,面试官可能拿出一张白纸,让你尝试画出linux下进程的虚拟内存空间布局,然后=再让你简述下每个分区的作用,可能会挑几个重点分区,例如堆区、栈区来进行深入展开,考察你对堆栈的理解等等。文章目录1 内核空间2 栈(stack)3 内存映射段(mmap)4 堆(heap)5 BSS段6 数据段(Data)7 代码段(text)8 保留区问题提问在多任务操作系统中,每个进程都运行在属于自己的内存沙盘中。这个沙盘就是虚拟地址空间(Virtual Address Space),在32位模式下它是一个4

2020-08-16 16:00:34 1116 2

原创 Linux C/C++ or 嵌入式面试之《多进程多线程编程系列》(1) 进程和线程的基本概念与区别

占个坑

2020-08-15 12:59:17 2290 2

原创 Linux C/C++ or 嵌入式面试之《网络编程系列》(4) tcp四次断开若干问题

占个坑

2020-08-15 12:52:33 9241 2

原创 取得脚本路径

${BASH_SOURCE[0]},待写

2021-07-26 11:46:08 14

原创 apt-get update报“Temporary failure resolving ‘mirrors.ustc.edu.cn‘

apt-get update报“Temporary failure resolving ‘mirrors.aliyun.com’"解决办法:1.打开/etc/resolv.conf;$sudo vim /etc/resolv.conf2.修改nameserver后的ip地址;加入:nameserver 8.8.8.8nameserver 8.8.4.43.重起网络服务;sudo /etc/init.d/network restart...

2021-07-26 10:55:10 19

原创 nnvg使用

https://nunavut.readthedocs.io/en/latest/docs/cli.html

2021-07-21 15:37:24 17

原创 网络接口数据接收发送量解析[/proc/net/dev]

#include<stdlib.h>#include<stdio.h> #define BUFFER_SIZE 256 int main(){ FILE *stream; char buffer[BUFFER_SIZE];//缓冲区 char *line_return;//记录每次返回值(行) int line_count = 0;//记录行数 char tmp_itemName[32];//临时存放文件中的每行的项目名称 int itemReceive;//存

2021-07-20 11:14:47 18

原创 netstat使用

待写

2021-07-20 11:01:37 20

原创 全网唯一UAVCAN中文教程(27)linux socket can编程详解

待写

2021-07-19 13:01:54 34

原创 uavcan v1协议

2021-07-18 20:39:19 28

转载 程序员英语语法学习(1)句子成分有八个,你却只知主谓宾?

句子成分有八个,你却只知主谓宾?在这之前,我们讲了语法需搞定三个部分,我们了解了句子,今天我们继续来了解,何谓句子成分?其实就是组成句子的各个部分。句子成分有八个,莫方,莫走,想学好语法,这个坑必须迈过,跟我看一场戏。好戏开场,主角登台!(自带啪啪啪音效)若是在句子中,句子中的主语就相当于主角。我们就写一句以Zhanhuwei为主语的话吧。(我们就演一场以斩护卫为主角的戏吧。)主角上场,定有大事发生!斩护卫做的这个“抱”的动作就表示谓语。谓语就是主.

2021-07-18 13:38:35 16

转载 程序员英语语法学习(2)认识词性(名词、动词、副词、形容词、冠词、介词、连词、语气词)

基础语法,你可以从词性开始之前我们讲了句子和句子成分,主谓宾句型I hit you.句子成分可以拆解为,I hit you.主 谓 宾那每个句子成分的词性是什么呢?今天我们来说说十大词性。句子,句子成分,词性他们仨啥关系呢?单词相对于句子成分就像,单词是句子成分最小的单位,而每个单词都有词性。那十大词性,又是个啥呢?本包把他们拆分为三类。憋怕,咱先来小菜开开胃,我们先看非重点又简单的。根据英文定义,pronoun = pro.

2021-07-18 13:25:47 20

转载 程序员英语语法学习(4)扒一扒名词与形容词的关系

扒一扒形容词与名词的关系热门电视剧最常出现你发现了吗?一个小小的形容词,就让画风突变。上一秒还是后宫嫔妃间的撕[—哔—],下一秒就是霸道总裁式的宠溺。小身材,大能量。没错,今天我们要开始讲话说这形容词呀,还是个情种, 爱慕名词多年,名词走到哪,它跟到哪,常伴左右,不离不弃。今天,就让我们来扒一扒形容词与名词的关系:前置定语和后置定语名词短语中,用形容词修饰一个名词,通常结构为限定词+形容词+名词a stupid dog一只蠢蠢的狗the handso.

2021-07-18 12:24:50 27

原创 关于python文件名慎取的案例

用pip安装pyserial后:sudo -H pip install pyserial,运行新建的程序,名称为serial.py,程序中用到:import serial.toos.list_ports,但总是提示ImportError:No module named tools.list_ports,在度娘一顿乱搜后,在stack overflowhttp://stackoverflow.com/questions/14108428/pyserial-no-module-named-tools看到有人问这

2021-07-17 20:46:23 17

原创 python串口操作

https://pyserial.readthedocs.io/en/latest/tools.html#serial.tools.list_ports.ListPortInfowindows下import serialimport serial.tools.list_portsplist = list(serial.tools.list_ports.comports())if len(plist) <= 0: print("The Serial port can't find!

2021-07-12 11:33:13 19

原创 python按序解析,变量赋值即定义,变量未定义不可使用

class A(): def fun(self): print(self.name)a = A()a.name = "hh"a.fun()让我们学习C++的同学感到不可思议的是,定义类A的时候,并没有定义成员name,但是居然可以在实例化对象之后,增加成员name。如果先调用函数fun,就会报错:class A(): def fun(self): print(self.name)a = A()a.fun()a.name = "hh"...

2021-07-11 23:46:27 23 1

原创 python中的注释

Python中的注释有单行注释和多行注释:Python中单行注释以 # 开头,例如::# 这是一个注释print("Hello, World!")print("Hello, World!") # 这是一个注释单行注释可以位于语句之后。多行注释用三个单引号 ‘’’ 或者三个双引号 “”" 将注释括起来,例如:1、单引号(’’’)#!/usr/bin/python3 ''' 这是多行注释,用三个单引号 这是多行注释,用三个单引号 这是多行注释,用三个单引号 ''' print(

2021-07-11 22:58:21 22

原创 pycharm在项目中添加多个文件,并且切换文件进行执行

选中要运行的文件,右键,选择Run “xx”第一次运行之后,右上角就会出现切换选项,后面需要运行可以进行切换。

2021-07-11 22:52:10 24

原创 进军PyQt5 !!!

发现用pyqt5来写测试工具实在是太高效了,今天起我来写一个PyQt5零基础教程,毕竟此刻我就是零基础的,python语法都不熟哈哈哈。敬请期待。

2021-07-11 16:12:11 25

原创 PyCharm集成PyQt5以及使用

文章目录PyCharm 安装PyQt5PyQt5在Pycharm配置PyCharm 安装PyQt5在Pycharm中安装软件时比较方便的,直接File -> Settings…接着进入Project -> Project Interpreter,然后点击右上角的加号。在检索文本框中输入PyQt5 和 pyqt5-tools,并安装对应模块安装完以后在Lib\site-packages目录下可以看到对应文件PyQt5在Pycharm配置安装结束以后我们开始配置PyQt5.第

2021-07-11 14:03:48 43 1

原创 全网唯一UAVCAN中文教程(26)pyuavcan v1版本 初次体验

待写

2021-07-10 16:51:19 26

原创 全网唯一UAVCAN中文教程(25)uavcan v0协议python版本 初次体验

首先安装python3.4或者以上,其次安装uavcan包。uavcan包集成了对slcan和socketcan的支持。所谓的slcan是指将can帧转为串口发送,而socketcan是将can操作封装成socket形式,linux直接以can线接入can网络。之所以有slcan的存在,是因为串口线操作比较方便,pc支持usb转串口,但并不支持can口。此外还有usb转can,比如常见的can分析仪最终接入电脑,会提供一个可视化的操作ui。import uavcannode = uavcan.ma

2021-07-10 12:58:53 48 2

原创 全网唯一UAVCAN中文教程(24)uavcan gui tool

安装方法见:https://legacy.uavcan.org/GUI_Tool/Overview/

2021-07-10 11:57:24 36

原创 全网唯一UAVCAN中文教程(23)半成品libcanard如何结合driver使用

待写

2021-07-08 14:18:36 33

原创 全网唯一UAVCAN中文教程(22)libcanard源码分析(1)

待写

2021-07-08 14:17:18 39

原创 全网唯一UAVCAN中文教程(21)libcanard简介

xxx

2021-07-08 11:39:52 41

原创 grpc协议详解

待写

2021-07-07 16:28:00 35

原创 protocolbuf协议详解

待写

2021-07-07 15:12:11 33

原创 udev详解(2)udev规则书写

xxx

2021-07-05 11:39:38 25

原创 udev详解(1)udev概述

xxx

2021-07-05 11:38:56 20

原创 linux启动流程(7)systemd关闭服务的三个层次

1、停止服务,但是服务仍然会被激活(比如手动激活,socket、dbus、系统重启或者硬件插拔)$ systemctl stop ntpd.service因此这是一种临时性的手段。2、disable服务,能防止服务被socket、dbus、系统重启或者硬件插拔而激活,但是我们仍然可以手动开启服务,需要注意的是,disable服务并不会stop正在运行的服务。$ systemctl disable ntpd.service3、mask一个服务,这种方式更加彻底,连手动开启服务都被禁止了,$ s

2021-07-04 20:33:28 30

原创 动态监视ps命令的输出,按内存、cpu等排序

1秒刷新一次,cpu占比前3的进程:watch -n 1 'ps -aux --sort -%cpu | head -n 4'%cpu对应的是ps -aux输出的其中一个条目,注意的是要换成小写。hongjh@ubuntu:~$ ps -auxUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.0 0.2 185416 6004 ? Ss 19

2021-07-04 14:49:18 31

原创 linux查看进程命令ps小记

ps命令的参数太复杂了,这里应该有历史原因,就是各个版本没有统一。让人记忆起来太烦了,这里记录常用选项如下。-f 显示更多的信息条目hongjh@ubuntu:~$ ps -fUID PID PPID C STIME TTY TIME CMDhongjh 5524 5523 1 22:47 pts/19 00:00:00 -bashhongjh 5543 5524 0 22:47 pts/19 00:00:00 ps -f

2021-07-04 14:07:05 29

原创 stringstream处理

待写

2021-07-02 09:49:11 29

转载 ubuntu和debian的关系

饮水思源:Ubuntu用户应关注Debian当今最热门的桌面Linux非Ubuntu莫属,它已经拥有数量众多的爱好者,已经成为PC用户的主流操作系统之一。尽管Ubuntu相对还比较年 轻,但是它的前身却是拥有多年历史和经验的Debian项目,或者说它继承了Debian这个最古老、最具影响力的Linux发行版的优点。这两个最受欢迎的Linux发行版之间存在着密不可分的“血缘”关系。尽管Debian对Ubuntu的过去和将来都有着重要的影响,不过很多新Ubuntu用户却对Ubuntu的根源知之甚少,自然也不

2021-06-28 00:18:48 41

原创 net start mysql 发生系统错误 5。 拒绝访问。的解决方法

权限不足引起,以管理员身份运行cmd,再执行命令:

2021-06-23 10:29:52 23

HI3519AV100最新SDK smaple

海思最新SDK 程序 版本V2.0.1.0 最新

2019-03-29

v4l2读取摄像头

v4l2读取摄像头,能在linux下编译,生成yuv文件,可以指定文件帧数

2018-01-30

RTP协议在嵌入式网络摄像机中的设计及实现.pdf

rtp,网络摄像头开发,描述了rtp推流,h264编码,v4l2视频流获取

2018-04-27

空空如也

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

TA关注的人 TA的粉丝

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