自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

天使之翼

一个技术男的书房

  • 博客(33)
  • 资源 (12)
  • 问答 (1)
  • 收藏
  • 关注

原创 汇编指令CPSID,SPSIE,ISB,DSB以及DMB的含义

CPSID CPSIE 用于快速的开关中断 CPSID I PRIMASK=1 关中断CPSIE I PRIMASK=0 开中断CPSID F FAULTMASK=1 关异常CPSIE F FAULTMASK=0 开异常隔离指令ISB 指令同步隔离,最严格:它会清洗流水线,以保证所有它前面的指令都执行完毕之后,才执行它后面的指令DSB 数据同步隔离,比DMB 严格: ...

2019-08-30 09:51:23 5300

原创 Threadx-Priority Inheritance

In priority inheritance, a lower-priority thread temporarily acquires the priority of ahigher-priority thread that is attempting to obtain the same mutex owned by the lowerpriority thread.When the ...

2019-08-27 22:11:06 260

原创 request_irq()函数分析

int request_irq(unsigned int irq,irq_handler_t handler,unsigned long flags,const char *name,void *dev)irq:分配的中断号handler:中断处理函数flags:中断处理程序标志,有IRQF_DISABLE, IRQF_SAMPLE_RANDOM, IRQF_TIMER, IRQF_...

2019-08-27 10:23:19 3069

原创 Ubuntu16.04安装搜狗拼音的方法

下面的链接是指导安装搜狗拼音的方法https://jingyan.baidu.com/article/bad08e1e3df10809c9512177.html下面的是下载Linux版本搜狗输入法软件包的链接https://pinyin.sogou.com/linux/...

2019-08-26 15:04:39 259

原创 Threadx-ARM EXCEPTION HANDLING

IntroductionAn exception is an asynchronous event or error condition that disrupts the normal flowof thread processing. Usually, an exception must be handled immediately, and then controlis returne...

2019-08-22 17:01:20 876 2

原创 Threadx-Deadly Embrace

One of the potential pitfalls in using mutexes is the so-called deadly embrace. This is anundesirable situation in which two or more threads become suspended indefinitely whileattempting to get mute...

2019-08-22 14:16:30 219

原创 Threadx-Priority Inversion

Undesirable situations can occur when two threads with different priorities share a commonresource. Priority inversion is one such situation; it arises when a higher-prioritythread is suspended beca...

2019-08-21 17:28:27 197

原创 Threadx-Round-Robin Scheduling

The term round-robin scheduling refers to a scheduling algorithm designed to provideprocessor sharing in the case in which multiple threads have the same priority. There aretwo primary ways to achie...

2019-08-21 17:19:13 523

原创 Threadx-Comparison of a mutex with a counting semaphore

A counting semaphore resembles a mutex in several respects, but there are differences, aswell as reasons to use one resource over the other.A mutex is exceptionally robust in providing mutual exclu...

2019-08-21 14:23:33 160

原创 Real-Time Embedded Multithreading--Using ThreadX & ARM-INTERNAL SYSTEM CLOCK AND APPLICATION TIMERS

If you want to get the book of Real-Time Embedded Multithreading–Using ThreadX please click the below link, https://download.csdn.net/download/u014100559/11583651Internal System Clock ServicesThread...

2019-08-20 17:18:11 523

原创 Concurrency and Parallelism

This concludes our initial whirlwind tour of systems. An important idea to takeaway from this discussion is that a system is more than just hardware. It is acollection of intertwined hardware and sy...

2019-08-20 14:46:26 316

原创 对超线程的理解

超线程,有时称为同时多线程(simultaneous multi-threading),是一项允许一个CPU执行多个控制流的技术,它涉及CPU的某些硬件有多个备份,比如程序计数器和寄存器文件;而其他的硬件部分只有一份,比如浮点算数运算的单元。常规的处理器需要大约20000个时钟周期做不同线程间的转换,而超线程的处理器可以再单个周期的基础上决定要执行哪一个线程。这使得CPU能够更好的利用它的处理器资...

2019-08-20 14:31:24 2022

原创 Real-Time Embedded Multithreading--Using ThreadX & ARM-MEMORY MANAGEMENT: Block Pools

Summary of Memory Block PoolsAllocating memory in a fast and deterministic manner is essential in real-time applications.This is made possible by creating and managing multiple pools of fixed-size m...

2019-08-19 17:29:22 450 1

原创 Real-Time Embedded Multithreading--Using ThreadX & ARM-MEMORY MANAGEMENT: BYTE POOLS

This is the learn of Real-Time Embedded Multithreading–Using ThreadX & ARM-MEMORY MANAGEMENT: BYTE POOLS AND BLOCK POOLS.IntroductionRecall that we used arrays for the thread stacks in the previ...

2019-08-19 14:54:27 575

原创 数据结构-排序-选择排序

[选择排序的思想]每次从待排序的数据元素集合中选取关键字最小的数据元素放到数据元素集合的最前面,数据元素集合不断变小,当数据元素集合为空时,选择排序结束。void SelectSort(DataType a[], int n){ int i, j, min; DataType temp; for (i = 0; i < n-1; i++) { min = i; f...

2019-08-16 17:45:52 109

原创 数据结构-排序-插入排序实现

插入排序:[插入排序的基本思想]从初始有序的子集合开始,不断地把新的数据元素插入到已排序有序自己和的合适位置,使子集合中数据元素的个数不断增多,当子集等于集合时,插入排序算法结束,常用的插入排序有直接插入排序和希尔排序两种。直接插入排序[直接插入排序的基本思想]顺序地把待排序的数据元素按其关键词值的大小插入到已排序数据元素子集合的适当位置,子集合的数据元素个数从只有一个数据元素开始...

2019-08-16 17:05:34 427

原创 数据结构-排序

排序:排序是对数据元素序列建立某种有序排列的过程。排序分为内部排序和外部排序。内部排序:内部排序是把待排数据元素全部导入内存中进行的排序。外部排序:如果数据元素的数量太大,需要分批导入内存中。分批导入内存的数据元素排好后再分批导入到外部存储中的排序方法叫外部排序。...

2019-08-16 15:54:48 125

原创 数据结构-排序-快速排序的实现

快速排序采用的是分治策略,它是目前已知的排序速度最快的一种排序方法。 void Quick_Sort(DataType R[],int low,int high) { int i=low,j=high; DataType temp = a[low]; if...

2019-08-15 16:02:06 577

原创 数据结构-二叉树的操作实现学习

二叉树的操作实现(1),节点结构体定义:typedef struct Node{ DataType data; //数值域 struct Node *leftChild; //左子树指针 struct Node *rightChild; //右子树指针}BiTreeNode;(2),初始化void Initiate(BiTreeNode **root){ *root = ...

2019-08-14 15:30:53 210

原创 数据结构-二叉树的应用学习

二叉树的应用本节介绍二叉树的基本应用,包括求二叉树的叶结点数、总结点数、二叉树的深度等,重点介绍标识符树的应用。二叉树的基本应用1.统计二叉树叶子结点数(1)基本思想。若二叉树结点的左子树和右子树都为空,则该结点为叶子结点。可先对全局变量count+1,然后依次递归统计T的左子树叶子结点数和T的右子树叶子结点数。(2)具体算法如下。void Leafnum(BT *T) //求二叉树的...

2019-08-13 16:44:09 603

原创 数据结构-二叉树的转换

二叉树的转换如果对树或森林采用链表存储并设定一定的规则,就可以用二叉树结构表示树和森林。这样,对树的操作实现就可以借助二叉树存储,利用二叉树上的操作来实现。本节将讨论树和森林与二叉树之间的转换方法。6.4.1 树的存储结构在实际应用中,很多事物是不能直接用二叉树来描述的,而只能用树和森林来表示。1.双亲表示法双亲表示法是用一组连续的空间来存储树上的结点,同时在每个结点上附加一个指示器来指...

2019-08-13 16:37:50 768

原创 数据结构-线索二叉树

线索二叉树1.什么是线索二叉树遍历二叉树是按一定的规则将二叉树中所有结点排列为一个有序序列,这实质上是对一个非线性的数据结构进行线性化的操作。经过遍历的结点序列,除第一个结点和最后一个结点以外,其余每个结点都有且仅有一个直接前驱结点和一个直接后继结点。当以二叉链表作为存储结构时,只能找到结点的左、右孩子的信息,而不能直接得到结点任意一个序列中的直接前驱结点和直接后继结点是什么,这种信息只有在...

2019-08-13 16:30:31 1728

原创 数据结构-二叉树

在有序树中有一类最特殊,也是最重要的树,称为二叉树(binarytree)。二叉树是树结构中最简单的一种,但却有着十分广泛的应用。二叉树的定义1.定义二叉树是有n(n≥0)个结点的有限集合,它有如下一些特点。(1)该集合可以为空(n=0)。(2)该集合可以由一个根结点及两个不相交的子树组成非空树,这两个子树分别称为左子树和右子树。(3)左子树和右子树同样又都是二叉树。在一棵非空二叉...

2019-08-13 16:15:58 859

原创 数据结构-树的概念

6.1.1 树的定义1.树的定义树是n(n≥0)个有限数据元素的集合。在任意一棵非空树T中,有以下一些特点。(1)有且仅有一个特定的称为树根(root)的结点(根结点无前驱结点)。(2)当n>1时,除根结点之外的其余结点被分成m(m>0)个互不相交的集合T1,T2,…,Tm。其中,每一个集合Ti(1≤i≤m)本身又是一棵树,并且称为根的子树。6.1.2 基本术语树的基本术语...

2019-08-13 16:07:35 450

原创 数据结构-栈的应用学习

数制的转换问题【问题描述】 要求编制一个程序实现下述功能:对于输入的任意一个非负十进制整数,打印输出与其等值的八进制数。【算法思想】 十进制转换为八进制的方法是除8取余。这一计算过程是从低位到高位依次产生八进制数的各个数位;而打印输出时,应从高位到低位进行,恰好与计算过程相反。因此,可将计算过程中得到的八进制数的各位顺序进栈,则按出栈顺序打印的序列即为与输入十进制数对应的八进制数。具体算...

2019-08-08 14:14:15 620

原创 数据结构-链栈的学习

链栈栈也可以采用链式存储结构实现,栈的链式存储结构简称为链栈。链栈实质上是一个规定只能在表头进行插入与删除操作的单链表。链栈具有链式存储结构的优点,例如,可以提高结点的插入和删除的效率,可以根据实际需要为每个栈分配相应的单元等。···typedef struct{elementype data; //节点数据域struct lnode *next; //节点指针域...

2019-08-08 10:12:08 480

原创 IIC总线协议简介

I2C(Inter-Integrated Circuit),PHILIPS公司开发的两线式半双工同步串行总线,具有接口线少,控制方式简单,通信速率较高等优点。I2C是一个多主机的总线,每个设备既可以当主控器或被控器,又可作为发送器或接收器,一条总线上可以有多个主机,但同一时刻只允许一个主机工作。从设备地址:每个支持i2c总线的设备,它都会有一个可以代表自己的地址,这个地址是唯一的(7位或1...

2019-08-07 17:49:50 517

原创 SPI总线协议介绍

SPI(Serial Peripheral Interface),串行外围设备接口,是由Motorola公司开发,用来在微控制器和外围设备芯片之间提供一个低成本、易使用的全双工同步串行总线。SPI以主从方式工作,由一个主设备和一个或多个从设备组成,主设备通过片选线选中设备,从而完成数据的交换。SPI接口由SDI(串行数据输入),SDO(串行数据输出),SCK(串行移位时钟),CS(从使能信...

2019-08-07 17:31:56 326

原创 Brute-Force算法实现

typedef struct{ char *str; int maxLength; int length;}DString;//查找主串S从start始的子串T,成功则返回T在S中的首字符位置,失败则返回-1int BFIndex(DString S, int start, DString T){ int i = start, j = 0, v; while ((i &lt...

2019-08-06 15:03:04 1642 1

原创 数据结构-队列(链式队列实现)

链式队列中结点的结构体定义:typedef struct qnode{ DataType data; struct qnode *next;}LQNode;为了方便参数调用,通常把链式队列的头指针front和队尾指针rear定义为下面的格式:typedef struct{ LQNode *front; LQNode *rear;}LQueue;链式队列操作的实现:(1),...

2019-08-05 17:14:51 611

原创 数据结构-队列

队列是一种特殊的线性表,队列的数据元素以及数据元素间的逻辑关系和线性表的完全相同,其差别就是:线性表允许在任意位置插入和删除数据元素,而队列只允许在其一段进行插入操作,在另一端进行删除操作。队列中允许进行插入操作的一端称为队尾,允许进行删除操作的一端称为队头。队列是一种先进先出的线性表。假溢出:顺序队列因为多次入队列和出队列操作后出现的尚有存储空间但是不能进行队列操作的溢出称为假溢出。...

2019-08-04 11:40:20 348

原创 MMU的含义以及作用

MMU:Memory Management Unit(内存管理单元)MMU通常用于物理地址到虚拟地址的映射,还有就是对内存的保护

2019-08-01 16:27:15 2136

原创 工作中常用缩写的含义

CMM:coculate memory managementCPS:Cellular protocol stackUPC:Unified phy controllerTPCU:trace and Power control unit

2019-08-01 16:22:11 525

virtio-v1.1-csprd01.pdf

virtio-v1.1-csprd01.pdf

2022-08-24

virtio-v1.1.pdf

半虚拟化virtio协议的官方文档

2022-08-23

CoAP_rfc7252.pdf

The Constrained Application Protocol (CoAP) is a specialized web transfer protocol for use with constrained nodes and constrained (e.g., low-power, lossy) networks.

2020-12-04

openocd-2020-12-23.pdf

Open On-Chip Debugger:OpenOCD User’s Guide This User’s Guide documents release 0.10.0+dev, dated 23 November 2020, of the Open On-Chip Debugger (OpenOCD). • Copyright c 2008 The OpenOCD Project • Copyright c 2007-2008 Spencer Oliver spen@spen-soft.co.uk • Copyright c 2008-2010 Oyvind Harboe oyvin

2020-11-24

_install.tar.gz

这个_install是我基于busybox-1.31.0编译的arm64的版本,这个可以直接下载下来拿到linux4.0的低版本上直接去使用,需要注意的是,如果修改该压缩包里面的文件,则需要重新编译内核才会生效。

2020-07-08

busybox-1.31.0.tar.bz2

busybox的下载地址:https://busybox.net/downloads/,稍后我上传一个编译好的arm64的busybox _install_arm64

2020-07-08

Real-Time Embedded Multithreading--Using ThreadX.7z

1,Real-Time Embedded Multithreading Using ThreadX and MIPS 2,Real-Time_Embedded_Multithreading_Using_ThreadX 3,Real-Time Embedded Multithreading Using ThreadX and ARM 4,eetop.cn_Real-Time.Embedded.Multithreading-Using.ThreadX.and.MIPS 5,(CMP) Real-Time Embedded Multithreading--Using ThreadX & ARM

2019-08-20

简明 Python 教程_cn_en

A Byte of Python》 是一本由 Swaroop C H 编写, 旨在于介绍如何使用 Python 语言进行编 程的自由图书。 它以教材与指南的形式为入门者介绍 Python 语言。 如果你对电脑知识的了解 仅限于如何保存文本文件的话, 那这本书就是为你准备的。 2005 年, 沈洁元将本书的 1.20 版引进中国, 并完成了全本翻译, 将本书的译名定为《简明 Python 教程》 。 2017年, 漠伦基于原书 4.0 版重新翻译, 制作了本版全新译本, 并沿用同样 的译名。 向大神们致敬

2018-09-04

Inside the C++ Object Model_english&chinese;

Inside the C++ Object Model focuses on the underlying mechanisms that support object-oriented programming within C++: constructor semantics, temporary generation, support for encapsulation, inheritance, and "the virtuals"-virtual functions and virtual inheritance. This book shows how your understanding the underlying implementation models can help you code more efficiently and with greater confidence. Lippman dispells the misinformation and myths about the overhead and complexity associated with C++, while pointing out areas in which costs and trade offs, sometimes hidden, do exist. He then explains how the various implementation models arose, points out areas in which they are likely to evolve, and why they are what they are. He covers the semantic implications of the C++ object model and how that model affects your programs.

2018-07-27

See mips run

In manyways, the first edition of See MIPS Run was a ground-breaking book on the MIPS architecture and its implementations. While other books covered similar material, See MIPS Run focused on what the programmer needed to understand of the architecture and the software environment in order to effectively program a MIPS chip.

2018-03-17

vi编辑器的一些配置文件

这个是vim的配置文件,在家目录下直接解压即可使用。

2014-09-16

vim工具使用

一个关于vim的资料,资料在家目录直接解压之后就可以使用,当你用vi或者vim得时候就可以看到效果。

2014-09-07

vim配置信息

vim配置脚本。有了它对于应用开发有很大的好处。

2014-09-03

python在linux下的路径

1,python的资料。 2,linux下的python下的资料。

2014-04-26

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

TA关注的人

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