自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 Ubuntu 20.04换国内源

参考:https://zhuanlan.zhihu.com/p/421178143

2023-04-16 12:10:27 6299 1

原创 如何安装JetPack?

jetpack的安装

2022-10-19 02:04:33 1420

转载 使用PSCI机制的SMP启动分析

使用PSCI机制的SMP启动分析其他core的入口文件:arch/arm64/kernel/head.Ssecondary_entry:在从bl31切到EL1上的Linux Kernel后:第595行,在el2_setup中设置EL1和EL0为小端模式,然后将w0设置为BOOT_CPU_MODE_EL1,并返回第596行,记录cpuX的启动模式到__boot_cpu_mode,目前是BOOT_CPU_MODE_EL1secondary_.

2022-03-30 11:04:56 1756

原创 ubuntu虚拟机NAT模式及此模式下samba服务设置和上网设置

一、背景之前一直是使用ubuntu虚拟机的桥接模式,然后再使用samba共享,这次想直接使用NAT模式,看看能不能使用samba服务器,在搭建过程中,遇到了一些问题,借此了解了一下NAT模式,在此记录下一些自己的理解,不一定正确,所以看到此文章的朋友不要转载,以免传播错误,可以在留言区批评指正,谢谢各位啦。如下是我对NAT模式的一个理解,自己画的一个简图:总结的要点就是,虚拟机网卡和VMware提供的VMnet8交换机,以及windows主机的VM network adapter VMnet8网

2022-01-05 20:10:31 1889

原创 uboot启动过程

1、Bootloader中典型分区结图 Bootloader上电后的第一个程序。 Boot parameteres分区中可设置的参数(IP,串口,传递给内核的命令行参数)。 DTB设备数文件 uImage系统镜像 Rootfs文件系统2.Bootloader启动流程Bootloader的启动流程一般分两个阶段:Stage1(阶段一主要通过汇编语言实现,依赖cpu体系结构初始化 进行硬件的初始化(watchdog,ram初始化)。 为...

2021-12-29 15:36:24 451

转载 Uboot启动流程源码分析

Uboot启动流程分析(五) - Cqlismy - 博客园参考:https://www.cnblogs.com/Cqlismy/p/12152400.html还有https://blog.csdn.net/luciferful/article/details/9371891

2021-12-29 14:55:59 66

转载 ARM 汇编笔记

1、LDR r0, label 和 LDR r0, =label的区别LDR 是ARM中的指令,也是伪指令。当用 LDR r0, =num编译时,编译器会根据num是否能表示为立即数,决定用 ldr 指令或者是mov或mvn指令。当num能表示为立即数,就将它翻译成一条mov或mvn指令。不能,编译器会将num存在一个内存单元中,然后再用一条ldr指令加载这个内存单元的的值到r0中。LDR r0, label 和 LDR r0, =label的区别:LDR r0, =label 会把lab..

2021-12-29 10:15:26 210

原创 DDR3、DDR4、LPDDR3、DDR3L

参考:DDR内存是什么意思 DDR3和DDR4内存区别分析【详解】 - 知乎DDR内存是什么?   内存是电脑中重要的核心部件之一,内存是其它硬件与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的。  专业来说, 内存(Memory)也被称为内存储器,由内存芯片、电路板、金手指等部分组成的。内存的作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来,内存的运

2021-11-23 16:52:56 15923

原创 NOR falsh、NAND flash、SDEMMC、QSPI flash、SPI flash

1、NOR flashNOR flash数据线和地址线分开,可以实现ram一样的随机寻址功能,可以读取任何一个字节。但是擦除仍要按块来擦。2、NAND flashNAND flash数据线和地址线复用,不能利用地址线随机寻址。读取只能按页来读取,同样按块擦除。对比:由于NAND flash数据线引脚和地址线引脚复用,因此读取速度比NOR flash慢,但是擦除和写 入 速度比NOR flash快很多。 NAND flash数据密度大,体积小,成本也低。因此大容量的flash都是nand型的

2021-11-05 10:27:59 3277

转载 buildroot使用介绍

原文链接:buildroot使用介绍 - ArnoldLu - 博客园

2021-11-03 17:03:37 142

转载 Buildroot笔记

原文章链接:Buildroot笔记 | hceng blog

2021-11-03 16:59:32 114

原创 几句话表达系列(一):接口技术

1、面向对象技术主要从软件重用角度考虑问题,而接口技术主要从集成角度考虑问题。component可以看作是用接口包装的、跨语言的“类”;CORBA就采用了接口技术2、软件中的接口技术与硬件上的接口技术有着类似的特点,不管厂家或者软件开发人员是谁,都必须达到、完成接口中规定的指标及内容;不管厂家或者软件一切人员采用哪种技术,从同一种接口中都应该获得相同的功能。要把接口当作一种规定和指标。...

2021-10-28 19:53:25 298

转载 大话版用户态和内核态

原文地址:https://www.cnblogs.com/shangxiaofei/p/5567776.html一:大话版用户态和内核态(1)用户态和内核态的概念?--->内核态:CPU可以访问内存所有数据, 包括外围设备, 例如硬盘, 网卡. CPU也可以将自己从一个程序切换到另一个程序--->用户态:只能受限的访问内存, 且不允许访问外围设备. 占用CPU的能力被剥夺, CPU资源可以被其他程序获取(2)为什么需要用户态和内核态?--->由于需要限制..

2021-08-09 19:23:09 81

原创 zynq PL programming解决方案

2018.1之后,zynq PL programming解决方案步骤1、Generating .bin from .bit file using Bootgen bootgen -image Full_Bitstream.bif -arch zynq -process_bitstream bin Full_Bitstream.bif file should contains the below lines: all: { design...

2021-06-15 11:20:08 779

转载 多核处理器基础:SMP、AMP和BMP 以及 AP、BP和CP

原文链接:https://www.cnblogs.com/zamely/p/4334979.html多核处理器也称片上多核处理器(ChipMulti-Processor,CMP)。1.多核处理器的流行多核出现前,商业化处理器都致力于单核处理器的发展,其性能已经发挥到极致,仅仅提高单核芯片的速度会产生过多热量且无法带来相应性能改善,但CPU性能需求大于CPU发展速度。尽管增加流水线提高频率,但缓存增加和漏电流控制不力造成功率大幅增加,性能反而不如之前低频率的CPU。功率增加,散热问题也严重..

2021-04-08 10:39:10 3700

转载 Xilinx FPGA开发环境vivado使用流程

原文链接:https://www.cnblogs.com/chensimin1990/p/6837122.html

2020-07-02 15:13:57 915

原创 关于uboot版本选择以及新旧版本的区别

写这一篇文章我因为我正在学习linux内核以及文件系统的移植,查阅了一些文章,做如下记录,非原创,只是觉得有的写的好像有点道理,所以把一些文章的内容集中在此,希望得到大家的建议与指导:=================================================================================一、uboot版本选择U-boot版本下载...

2020-04-16 09:59:40 2910

转载 compile ksymoops

compile ksymoopsWhen you try to compile ksymoops tool, it may print the following message.gcc -Dlinux -Wall -Wno-conversion -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -DINSTALL_P...

2020-03-04 23:52:02 125

转载 悄悄地进入Linux内核调试(一)

悄悄地进入Linux内核调试(一)本文基址:http://blog.csdn.net/cugxueyu/archive/2007/12/21/1957740.aspx※ 调试工作艰苦,是内核级开发区别于用户级开发的一个显著特点。※ 驾驭内核调试的能力,很大程度上取决于经验和对整个操作系统的把握。一、调试前的准备内核级bug具有行为不可靠,定义不清晰或者说很难再现的诸...

2020-03-04 12:24:53 168

转载 Zynq Linux设备树文件的创建(使用SDK)

一、准备工作l开发环境:a)Vivado 2014.2b)SDK 2014.2l利用Vivado搭建硬件环境,生成bitstream。l下载用于生成device-tree文件的资源包a)下载链接:https://github.com/Xilinx/device-tree...

2020-02-25 18:48:20 1685

转载 Busybox构建根文件系统和制作Ramdisk

https://www.cnblogs.com/LoTGu/p/7020418.html定制根文件系统的方法很多,最常用的是使用BusyBox来构建定制根文件系统。它集成压缩了Linux的许多工具和命令,可以使用户迅速方便地建立一套相对完整、功能丰富的文件系统,其中包括大量常用的应用程序。下面详细介绍有关Busybox定制根文件系统。一、系统环境:1、操作系统:Ubuntu140...

2020-02-24 00:47:44 477

转载 u-boot 1.3.4源码分析详细教程

每款MCU上电之后,并不是立即执行到主程序的,而是最先初始化整个系统资源,俗称“Boot loader”。所以,u-boot是一种普遍用于嵌入式系统中的Boot loader,Boot loader是在操作系统运行之前执行的一小段程序,通过它,可以初始化硬件设备、建立内存空间的映射表,从而建立适当的软硬件环境,为最终调用操作系统内核做好准备。Boot loader的主要运行任务就是将内核映象从硬盘...

2020-02-18 18:11:20 242

转载 Qt下绘制图表——QtCharts版

Qt Charts 在Qt4时代就有了,不过一直以来是商业许可的。从5.7.0开始,Qt Charts 也纳入了开放许可证。最为简洁使用Qt Chars的方法就是安装Qt5.7以后的版本。之前的一篇文章包含了下载Qt任意版本的连接,详情请参考https://www.jianshu.com/p/f19a546227ff安装好Qt以后,进行一下操作:‘1新建一个项目,在界面上放置一个Wid...

2019-12-26 16:53:14 1519

转载 基于VxWorks的BSP开发指南

1BSP概述一个成熟的商用操作系统,其被广泛应用的必要条件之一就是能够支持众多的硬件平台,并实现应用程序的硬件无关性。一般来说,这种无关性都是由操作系统实现的。但对于嵌入式系统来说,它没有像PC机那样具有广泛使用的各种工业标准,各种嵌入式系统其不同的应用需求就决定了它一般都选用了各自定制的硬件环境,这种诸多变化硬件的环境就决定了无法完全由操作系统来实现上...

2019-09-20 15:39:32 2907

转载 VxWorks 引导程序

http://blog.chinaunix.net/uid-22237530-id-1781872.html前言:vxworks 的一些文件,如 usrconfig.c 在 config,comp目录中均有出现,因编译方式而选择某一个文件,命令行方式采用 config 目录文件,tornado 图形界面配置选择comp 目录文件。此处采用命令行方式编译。Bootrom 完成 vxworks...

2019-08-22 10:04:08 200

转载 VxWorks启动过程具体解释

上一节主要是从映像的分类和各种映像的大致载入流程上看VxWorks的启动过程,这一节让我们从函数级看一下VxWorks的启动过程:1. Boot Image + Loadable Images:以下是详细的流程图:当中第一阶段的运行流程使用的是上图的左边的源文件里的那些函数(romInit->romStart->usrInit->sysHwinit-&gt...

2019-08-01 21:52:58 1130

转载 QT中QWidget、QDialog及QMainWindow的区别

QT中QWidget、QDialog及QMainWindow的区别    QWidget类是所有用户界面对象的基类。 窗口部件是用户界面的一个基本单元:它从窗口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制自己。每一个窗口部件都是矩形的,并且它们按Z轴顺序排列。一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分。     QMainWindow 类提供一个有菜单条、锚接窗口(例如...

2018-08-11 17:32:36 134

转载 无锁环形队列的一种高效实现

无锁环形队列的一种高效实现1.环形队列是什么 队列是一种常用的数据结构,这种结构保证了数据是按照“先进先出”的原则进行操作的,即最先进去的元素也是最先出来的元素.环形队列是一种特殊的队列结构,保证了元素也是先进先出的,但与一般队列的区别是,他们是环形的,即队列头部的上个元素是队列尾部,通常是容纳元素数固定的一个闭环。C代码实现见:https://github.com/dodng/fas...

2018-08-06 10:28:40 592

转载 无锁环形缓冲区的详细解释

由以下博客的分析可以知道,内核的kfifo使用了很多技巧以实现其高效性。比如,通过限定写入的数据不能溢出和内存屏障实现在单线程写单线程读的情况下不使用锁。因为锁是使用在共享资源可能存在冲突的情况下。还用设置buffer缓冲区的大小为2的幂次方,以简化求模运算,这样求模运算就演变为 (fifo->in & (fifo->size - 1))。通过使用unsigned int为kf...

2018-08-06 10:12:20 692

转载 Linux ARM交叉编译工具链制作过程

https://www.cnblogs.com/Charles-Zhang-Blog/archive/2013/02/21/2920999.htmlLinux ARM交叉编译工具链制作过程一、下载源文件源代码文件及其版本与下载地址:Binutils-2.19.tar.bz2http://ftp.gnu.org/gnu/binutils/gcc-4.4.4.tar.bz2...

2018-07-20 11:17:16 266

转载 利用busybox制作根文件系统

1、busybox源码下载及配置https://busybox.net/downloads/1.1、修改Makefile(1) ARCH = arm(2) CROSS_COMPILE = /usr/local/arm/arm-2009q3/bin//arm-none-linux-gnueabi-1.2、make menuconfigBusybox Settings---> Build...

2018-06-13 16:17:53 174

转载 3分钟看懂gcc、arm-Linux-gcc和arm-elf-gcc的组成及区别

一、GCC简介The GNU Compiler Collection,通常简称 GCC,是一套由 GNU 开发的编译器集,为什么是编辑器集而不是编译器呢?那是因为它不仅支持 C 语言编译,还支持 C++, Ada,Objective C 等许多语言。另外 GCC 对硬件平台的支持,可以所无所不在,它不仅支持 X86处理器架构, 还支持 ARM, Motorola 68000, Motorola 8...

2018-06-12 01:07:23 2357

转载 c标准基本库函数:libc、glibc的关系

glibc 和 libc 都是 Linux 下的 C 函数库。 libc 是 Linux 下的 ANSI C 函数库;glibc 是 Linux 下的 GUN C 函数库。 ANSI C 和 GNU C 有什么区别呢?        ANSI C 函数库是基本的 C 语言函数库,包含了 C 语言最基本的库函数。这个库可以根据头文件划分为 15 个部分,其中包括: <ctype.h>:包...

2018-06-12 00:14:42 2023

转载 C标准库,系统调用,系统接口API,内核函数

虽是转载,但也有自己的一些总结或看法或疑问。aaron注:所以总结一下,是否能这么认为:不管是无平台差异的C标准库还是与系统平台有关的API,其实都有对系统调用的封装,都是一个屏蔽系统底层复杂度或差异的一个中间层。=================分界线========================================一、用户空间:1)C标准库:是适用于所有c语言编写的程序,没有平台...

2018-06-12 00:09:59 535

转载 对嵌入式Linux中的根文件系统的理解和解析

虽是转载的,但是我自己用红色字体标注了一些觉得对自己有用的点,并且有些地方还加入了自己的“aaron注:”===================分界线=========================     虽然前面已经利用Busybox制作了根文件系统,但是对于根文件系统的作用和普通的文件系统之间的区别还是有点模糊。通过查找资料总结了一下对根文件系统的理解,也欢迎大家一起讨论。   首先要明白...

2018-06-11 22:45:12 2956

转载 【转】交叉编译工具链

1、嵌入式开发模型-交叉开发    在嵌入式开发过程中有宿主机和目标机的角色之分:宿主机是执行编译、链接嵌入式软件的计算机;目标机是运行嵌入式软件的硬件平台。              在宿主机执行编译的流程如下:                 2、交叉编译工具链详解参考:http://www.crifan.com/files/doc/docbook/cross_compile/release/...

2018-06-10 23:27:16 198

转载 【转】Linux ARM交叉编译工具链制作过程

转载地地址:http://www.cnblogs.com/Charles-Zhang-Blog/archive/2013/02/21/2920999.html#3347926一、下载源文件源代码文件及其版本与下载地址:Binutils-2.19.tar.bz2http://ftp.gnu.org/gnu/binutils/gcc-4.4.4.tar.bz2http://mirrors.kernel...

2018-06-10 23:20:41 209

空空如也

空空如也

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

TA关注的人

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