-
击上方“一口Linux”,选择“置顶/星标公众号”干货福利,第一时间送达!目录一、走进 linux 内存二、 linux 内存地址空间三、 Linux 内存分配算法四、 内存使用场景五、 内存使用那些坑一、走进 linux 内存1、内存 ...
-
ARM系列文章,请点击以下汇总链接:《从0学arm合集》一、MDK和GNU伪指令区别我们在学习汇编代码的时候经过会看到以下两种风格的代码:gnu代码开头是:.global _start_start: @汇编入口 ldr sp,=0x410 ...
-
以前已经发过I2C的文章,但是是三篇分开的,而且原文有诸多错误和格式问题,现在更正了一些错误,同时调整了格式,去掉了图片水印。 本文基于三星Cortex-A9架构,Exynos4412讲解I2C原理、以及基于I2C ...
-
一、程序状态寄存器访问指令ARM微处理器支持程序状态寄存器访问指令,用于在程序状态寄存器和通用寄存器之间传送数据。MRSMRS{条件} 通用寄存器,程序状态寄存器(CPSR或SPSR)MRS指令用于将程序状态寄存器的内容 ...
-
通讯问题,和交通问题一样,也有高速、低速、拥堵、中断等等各种情况。如果把串口通讯比做交通,UART比作车站,那么一帧的数据就好比汽车。汽车跑在路上,要遵守交通规则。如果是市内,一般限速30、40,而高速公路则 ...
-
点击左上方蓝色“一口Linux”,选择“设为星标”第一时间看干货文章 【干货】嵌入式驱动工程师学习路线【干货】一个适合初学者的Linux物联网综合项目【干货】Linux嵌入式知识点思维导图免费获取 1一口君最近在玩 ...
-
1.什么是线程?linux内核中是没有线程这个概念的,而是轻量级进程的概念:LWP。一般我们所说的线程概念是C库当中的概念。1.1线程是怎样描述的?线程实际上也是一个task_struct,工作线程拷贝主线程的task_struct, ...
-
击上方“一口Linux”,选择“星标公众号”干货福利,第一时间送达!其实“多核”这个词已经流行很多年了,世界上第一款商用的非嵌入式多核处理器是2002年IBM推出的POWER4。当然,多核这个词汇的流行主要归功与AMD和 ...
-
本文只针对软件技术人员。观点如有偏差,欢迎讨论!有粉丝问我台企究竟怎么样,下面是给大家整理的10个去台企和不去台企的理由! 1. 台企都比较小气 台企很多的企业文化基因都是从日、美继承而来,这一点很容易理解 ...
-
SPI概述Serial Peripheral interface 通用串行外围设备接口是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI, ...
-
一、粉丝提问i2c的设备树和驱动是如何匹配以及何时调用probe的?粉丝手里的I2C外设是ov5640,一个摄像头。粉丝提问,一口君必须安排。二、问题分析设备树信息如下: ov5640: ov5640@3c { compatible = "ovt ...
-
ARM系列文章合集如下:《从0学arm合集》本文基于三星Cortex-A9架构,Exynos4412讲解I2C原理、以及基于I2C的mpu6050陀螺仪的数据读取实例(包括在裸机模式下数据的读取以及基于Linux驱动的读取)。还会分析Linux内核 ...
-
击上方“一口Linux”,选择“星标公众号”干货福利,第一时间送达!前言文章基于HD-IMX6ULL-MB 系列开发板测试验证,该开发板由武汉芯路遥科技有限公司与武汉万象奥科电子有限公司合作推出。此开发板基于 NXP iMX6U ...
-
击上方“一口Linux”,选择“星标公众号”干货福利,第一时间送达!作者:时间里的尘埃公司服务器有的服务器需要扩容,自己在网上查找资料学习,顺便整理记录一下你觉得还不错的话,别忘记点赞哦。以下就是Linux根 ...
-
一、概念看门狗的简称是WDT(Watch Dog Timer),exynos4412scp中的看门狗定时器(WDT)是一种定时装置。1. 工作原理由(一般需要客户编写)软件读写定时器相关的寄存器,打开看门狗,并设定计数时间(以秒或分钟计算),定 ...
-
点击关注公众号,回复【1024】免费领学习资料本文将以图例的形式结合通俗易懂的语言对计算机网络中常提到的防火墙技术做详细的解读,旨在让广大读者朋友们认识、了解防火墙的“故 ...
-
什么是多路复用IO多路复用IO (IO multiplexing) 是指内核一旦发现进程指定的一个或者多个IO条件准备读取,它就通知该进程。在Linux系统中,常用的 多路复用IO 手段有 select、poll 和 epoll。多路复用IO 主 ...
-
使用ubuntu的朋友一定会接触一个命令就是apt-get 。使用该工具安装各种应用程序那叫一个爽。在 Ubuntu 16.04 发行后,apt使用渐渐频繁起来。那么,apt-get 与 apt 命令之间到底有什么区别呢?如果它们有类似的命令 ...
-
击上方“一口Linux”,选择“置顶/星标公众号”干货福利,第一时间送达!驱动认知1. 什么是驱动 驱动就是对底层硬件设备的操作进行封装,并向上层提供函数接口。设备分类:linux系统将设备分为3类:字符设备、块设 ...
-
ELF文件格式的详解1.说明2.elf文件的基本格式3.elf文件的头部信息4.elf文件的节区(Section)4.1 节区的作用4.2 节区的组成5.elf文件的段(Segment)6.用python解析elf文件7.总结 1.说明 ELF的英文全称是The Executab ...
-
DNS 是互联网核心协议之一。不管是上网浏览,还是编程开发,都需要了解一点它的知识。本文详细介绍DNS的原理,以及如何运用工具软件观察它的运作。我的目标是,读完此文后,你就能完全理解DNS。一、DNS 是什么?DNS ...
-
Linux内核是GNU/Linux操作系统的核心组件。它是一个免费、开源、庞大、模块化、多任务的类Unix的操作系统内核。它最初是由Linus Torvalds在1991年为他的i386 PC创造的。实际上我们可以在系统中安装多个内核。有没有 ...
-
点击左上方蓝色“一口Linux”,选择“设为星标”第一时间看干货文章 【干货】嵌入式驱动工程师学习路线【干货】Linux嵌入式知识点思维导图 1国庆假期接近尾声,但是为祖国庆生这个事,还未尽兴!我觉得可以再来一 ...
-
一、什么是僵死进程?一般情况下,程序调用exit(包括_exit和_Exit,它们的区别这里不做解释),它的绝大多数内存和相关的资源已经被内核释放掉,但是在进程表中这个进程项(entry)还保留着(进程ID,退出状态,占 ...
-
ARM系列文章,请点击以下汇总链接:《从0学arm合集》一、gcc 内联汇编内联汇编即在C中直接使用汇编语句进行编程,使程序可以在C程序中实现C语言不能完成的一些工作,例如,在下面几种情况中必须使用内联汇编或嵌入 ...
-
粉丝问题如何制作rootfs?安排!想直奔主题的,直接跳到第四章。一、分析 1. 文件系统简介理论上说一个嵌入式设备如果内核能够运行起来,且不需要运行用户进程的话,是不需要文件系统的,文件系统简单的说就是一种 ...
-
击上方“一口Linux”,选择“星标公众号”干货福利,第一时间送达!1. Linux中主要有哪几种内核锁?Linux的同步机制从2.0到2.6以来不断发展完善。从最初的原子操作,到后来的信号量,从大内核锁到今天的自旋锁。这 ...
-
推荐关注下方公众号学习更多Linux、驱动知识!1.为“ssh”生成、管理和转换认证密钥的命令是ssh-keygen(选项)2.如何指定登录用户ssh root@192.168.0.1023.指定端口登录$ ssh 192.168.0.102 -p 2224.ssh创建秘钥$ ss ...
-
1 Linux概述 1.1 Linux操作系统架构简介Linux操作系统总体上由Linux内核和GNU系统构成,具体来讲由4个主要部分构成,即Linux内核、Shell、文件系统和应用程序。内核、Shell和文件系统构成了操作系统的基本结构, ...
-
设备树是一种描述硬件的数据结构,它起源于OpenFirmware(OF)。在Linux 2.6中, ARM架构的板极硬件细节过多地被硬编码在arch/arm/plat-xxx和arch/arm/mach-xxx中,采用设备树后,许多硬件的细节可以直接通过它传递 ...
-
系统学习IO性能对于一个系统的影响是至关重要的。一个系统经过多项优化以后,瓶颈往往落在数据库;而数据库经过多种优化以后,瓶颈最终会落到IO。而IO性能的发展,明显落后于CPU的发展。Memchached也好,NoSql也好 ...
-
粉丝的提问,必须安排。两个线程,两个互斥锁如何形成死锁?程序流程图如下:程序流程图如上图所示:t0时刻,主线程创建子线程,并初始化互斥锁mutex1、mutex2;t1时刻,主线程申请到了mutex1、子线程申请到了mutex ...
-
击上方“一口Linux”,选择“星标公众号”干货福利,第一时间送达!io_uring是 2019 年 Linux 5.1内核首次引入的高性能异步 I/O 框架,能显着加速 I/O 密集型应用的性能。但如果你的应用已经在使用传统 Linux AIO ...
-
击上方“一口Linux”,选择“置顶/星标公众号”干货福利,第一时间送达!作者:小田BSP本文基于RockPi 4A Debian系统介绍i2c设备的调试工具i2c-tools。i2c-tools的相关命令常用于linux系统读写i2c设备寄存器的在线 ...
-
农家乐 春暖花开,正好有朋友家在南京附近乡下,有自己的鱼塘、茶场、鸡场。可以现场采摘茶叶,还可以顺便品尝美味的农家菜。现在的孩子特别的辛苦,宝宝下午本来有英语课,计划上午玩一下,中午就赶回去,看到这田 ...
-
在Linux内核中,提供了一个用来创建双向循环链表的结构 list_head。虽然linux内核是用C语言写的,但是list_head的引入,使得内核数据结构也可以拥有面向对象的特性,通过使用操作list_head 的通用接口很容易实现 ...
-
击上方“一口Linux”,选择“置顶/星标公众号”干货福利,第一时间送达!内存泄漏原因内存泄漏在C/C++这种不带GC(Garbage Collection)的语言里,是一个经常发生的问题。因为没有GC,所以分配的内存需要程序员自己调 ...
-
推荐关注下方公众号学习更多Linux、ARM、驱动知识!HTTPS随着 HTTPS 建站的成本下降,现在大部分的网站都已经开始用上 HTTPS 协议。大家都知道 HTTPS 比 HTTP 安全,也听说过与 HTTPS 协议相关的概念有 SSL 、非对 ...
-
一、1个端口号可以同时被两个进程绑定吗?根据端口号的绑定我们分以下几种情况来讨论:2个进程分别建立TCP server,使用同一个端口号88882个进程分别建立UDP server,使用同一个端口号88882个进程1个建立TCP server ...
-
推荐关注下方公众号学习更多Linux、驱动知识!这里包含Linux 性能资料的工具图。这些使用大字体可以用作海报幻灯片。也可以将它们打印出来贴在办公室墙上。它们展示了:Linux 可观察性工具、 Linux 静态性能分析工 ...
-
Windows防火墙是Windows操作系统的组成部分,它管理流经计算机网络端口的流量,以确保未被注意的数据包不会进入计算机并确保其安全。它还负责打开和关闭或侦听网络端口。Windows服务和应用程序使用网络端口通过网络 ...
-
死亡之 Ping 攻击是一种拒绝服务 (DoS) 攻击,攻击者旨在通过发送大于最大允许大小的数据包来破坏目标计算机,从而导致目标计算机冻结或崩溃。原始的死亡之 Ping 攻击如今并不常见。称为 ICMP 洪水攻击的相关攻击更 ...
-
点击左上方蓝色“一口Linux”,选择“设为星标”第一时间看干货文章 【干货】嵌入式驱动工程师学习路线【干货】一个适合初学者的Linux物联网综合项目【干货】Linux嵌入式知识点思维导图免费获取 1所有瑞芯微的文 ...
-
本文的目的是通过随机截取的一段网络数据包,然后根据协议类型来解析出这段内存。学习本文需要掌握的基础知识:网络协议C语言Linux操作抓包工具的使用其中抓包工具的安装和使用见下文:《一文包你学会网络数据抓包 ...
-
击上方“一口Linux”,选择“星标公众号”干货福利,第一时间送达!一、前言 很多工程师都习惯了使用linux下一些命令,再去用Windows的 cmd 简直难以忍受。要在windows上运行linux命令,目前比较流行的方式由:GunW ...
-
一、为什么需要位置无关码?首先我们需要了解一下ARM板子的启动流程。1. exynos 4412启动流程首先看一下 exynos 4412 memory map :可知:iROM基地址是0x00000000iRAM基地址是0x02020000这两块内存都在 SOC中。查看 ...
-
击上方“一口Linux”,选择“星标公众号”干货福利,第一时间送达!作者:江南一散人友情提醒:本文介绍的调试技巧非常实用,但为了讲解清楚,篇幅较长,请耐心看完,我保证你定会有收获!引言程序调试时,你是否遇 ...
-
推荐关注下方公众号学习更多Linux、ARM、驱动知识!CAN(“Controller Area Network”,控制器局域网)作用:将整车中各种不同的控制器连接起来,实现信息的可靠共享,并减少整车线束数量。可以设想一种极端情况 ...
-
点击左上方蓝色“一口Linux”,选择“设为星标”第一时间看干货文章 【干货】嵌入式驱动工程师学习路线【干货】一个适合初学者的Linux物联网综合项目【干货】Linux嵌入式知识点思维导图 1一、Linux基础1、任意3种 ...
-
击左上方蓝色“一口Linux”,选择“设为星标”第一时间看干货文章 【干货】嵌入式驱动工程师学习路线【干货】Linux嵌入式知识点思维导图免费获取【就业】一个可以写到简历的基于Linux物联网综合项目【就业】找工作 ...