自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

笔记专栏

技术共享

  • 博客(14)
  • 资源 (5)
  • 收藏
  • 关注

翻译 Linux 内核中的 Soft 和 Hard Lockup

这周遇到了一个内核关于 softlockup 和 hardlockup 相关的 bug, 首先在内核文档中找到了关于他们的定义和实现的介绍的非常详细,还在网上找到了更多关于他们的介绍和很细可以查看文后参考的博客1. 首先来介绍下 softlockup 和 hardlockup 在内核中怎么定义的:softlockup 是导致内核在内核态下循环超过20秒(这个时间是可以通过内核参数设置的)...

2019-04-12 17:37:16 851

原创 Vim snippet 小技巧

要使用 vim snippet 要经过下面几个步骤:1. 为自己的 vim 添加 snippet 插件使用 vim snippet 的话首先要在自己的 ~/.vimrc 添加如下的2个插件内容:Plugin 'SirVer/ultisnips'Plugin 'honza/vim-snippets'" 下面是相关的配置信息let g:UltiSnipsExpandTrigger = ...

2019-04-12 13:41:32 1940

原创 总线、设备、驱动模型

总线、设备、驱动实体功能代码设备描述基地址、中断号、时钟、DMA、复位等信息arch/arm arch/blackfin arch/xxx 等目录驱动完成外设的功能,如网卡收发包,声卡录放,SD卡读写…drivers/* 等目录总线完成设备和驱动的关联drivers/base/platform.c drivers/pci/pci-driver.c...

2019-04-01 19:33:40 511

原创 ARM 设备树

https://www.kernel.org/doc/Documentation/devicetree/usage-model.txtThe “ Open Firmware Device Tree” , or simply Device Tree (DT), is a datastructure and language for describing hardware. More specif...

2019-04-01 19:28:49 501

原创 Linux 进程,线程和调度 ---- 02

1. fork、 vfork、 clone写时拷贝技术从图中可以看出,在最开始阶段的时候,就是有一个进程在运行,并且虚拟地址是可读可写的使用fork以后产生了子进程,子进程会拷贝父进程的信息,并且共享内存资源的信息,并把相应的共享虚拟地址标记为只读的状态。任一一个进程 write 后,写进程会申请新的物理地址,并把共享的物理地址断开,并标记为 R+W,也就是 Copy On Write ...

2019-03-31 16:34:05 182

转载 VirtualBox 命令行操作

VirtualBox Command Line最近在用 VirtualBox 运行虚拟机的时候,由于图形窗口太多了,于是就查找了一些便于管理 VirtualBox 的命令用命令行的方式可以避免打开更多的窗口,直接使用命令行,也不用用鼠标来回的选择控制虚拟机啦To find a list of the VMs, issue the commandVBoxManage list vmsli...

2019-03-31 16:29:17 3734

原创 Linux 常用命令行快捷键

1. Tab在输入命令的时候可以敲 tab 键进行命令行自动补全,很方便的一个工具。在查看文件或者编辑文件的时候也可以使用,并自动补全文件名2. Ctrl + c结束当前终端运行的程序3. Ctrl + z将当前进程发送到后台。如果您正在运行程序,并且您需要终端一段时间但不想完全退出程序,这将非常有用。输入命令 fg 以返回进程。4. Ctrl + w删除当前命令行,光标前...

2019-03-27 18:20:48 41

翻译 What Is Readable Code

What Is Readable Code?分享的这篇文章是关于代码可读性的设计和使用的知识Code creates interfaces. But code itself is also an interface.代码创建接口。 但代码本身也是一个接口。首先介绍了可读性是多少?从三个方面介绍可读性代码看起来漂亮时是否可读? 看起来漂亮是可读性的一个很好的副作用,但它并没有那么有用...

2019-03-27 17:48:20 52

原创 Github 同步更新 fork 的提交

# 1. 首先查看自己的远程仓库设置的情况$ git remote -vorigin xxxx.git (fetch)origin xxxx.git (push)# 2. 添加 fork 的上游仓库$ git remote add upstream yyyy.git$ git remote -v # 查看添加后的仓库情况origin xxxx.git (fetch)orig...

2019-03-22 17:14:43 31

原创 How to Design Fault-tolerant Systems in Three Easy Steps

How to Design Fault-tolerant Systems in Three Easy Stepsidentify all possible faults (software, hardware, design, operation, environment, …)detect and contain the faultshandle the faultdo nothing...

2019-01-09 16:05:58 48

原创 在Debian 8中安装 gcc-arm-linux-gnueabi编译debian的 deb安装包

从Debian 的官网中可以发现完全没有 gcc-arm-linux-gnueabi 这个安装包,但是他们在 unstable (sid)中提供了相应的安装包。以下是提供安装交叉工具链的方法和如何使用交叉编译可以通过CrossToolchains — 这篇官方文档来设置安装 相应的交叉编译工具安装过软件之后就可以编译相应的软件了,CrossCompiling提供了如何使用交叉编译...

2018-12-11 14:15:52 1452

原创 Neighbour table overflow

kern.warning :Neighbour table overflow这几天查看bug列表的时候,发现一个关于 Neighbour table overflow相关的bug。从字面上看应该是内核 ARP 相关的 table cache 用光了,在这种情况下应该增加 ARP table cache 的大小。那么该如何增加是一个问题,有问题先Google一下。发现好多关于该问题的解决方法...

2018-12-03 11:07:01 262

原创 perf: interrupt took too long

Perf 问题最近Linux 内核总是报一下错误信息,所以抽出点时间找了点资料了解了下:[ 6216.961770] perf: interrupt took too long (2502 > 2500), lowering kernel.perf_event_max_sample_rate to 79000发现在红帽的Bugzilla上已经有人提出过这个bug了,瞬间感觉轻松了不少...

2018-12-03 10:51:51 14153 1

原创 进程的生命周期

进程的生命周期1. 进程控制块 PCB 与 task_struct进程是资源封装管理的单位,资源指占用的内存,文件系统,信号及处理 方法。线程是调度的单位,进程的区别是资源,资源是隔离的,进程把资源描述清楚就可以了Process Control Block(PCB) 进程控制块, 在不同操作系统中用于描述进程,在 Linux 的 PCB 就是用 task_struct 来描述。描...

2018-08-07 10:13:21 4917

STM32 5路输入捕获模式25 road input capture

在网上找了很多都没有太多关于STM32多路输入捕获模式的例子,今天上传一个大家共享一下,相互交流下。

2012-03-14

STM32的学习GPIO的详解

STM32 GPIO的详细讲解是个好东西

2011-01-18

Good Habits for Great Coding

Improve your coding skills and learn how to write readable code. Rather than teach basic programming, this book presumes that readers understand the fundamentals, and offers time-honed best practices for style, design, documenting, testing, refactoring, and more.

2018-04-03

ARM Assembly Language with Hardware Experiments

This book provides a hands-on approach to learning ARM assembly language with the use of a TI microcontroller. The book starts with an introduction to computer architecture and then discusses number systems and digital logic. The text covers ARM Assembly Language, ARM Cortex Architecture and its components, and Hardware Experiments using TILM3S1968. Written for those interested in learning embedded programming using an ARM Microcontroller.

2018-04-03

Docker 容器与容器云---第2版

Docker 容器与容器云(第2版)

2018-04-03

空空如也

空空如也

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

TA关注的人 TA的粉丝

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