自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(94)
  • 资源 (7)
  • 收藏
  • 关注

原创 高效shell环境使用

安装zshsudo apt install zsh -y查看当前系统shellcat /etc/shells设置zsh为默认shellchsh -s /bin/zsh配置zsh直接使用Oh-My-Zsh进行配置。安装oh-My-Zsh命令:sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"在 oh-my-zsh 进入 包含 git 仓库目录时

2021-02-01 23:38:59 187

原创 Ubuntu禁止 合盖睡眠

ubuntu的睡眠唤醒有好多问题,尝试了几个方法之后放弃唤醒功能了,直接禁用睡眠吧。操作如下:sudo vim /etc/systemd/logind.conf打开文件后修改下面这行:#HandleLidSwitch=suspend改成这样:HandleLidSwitch=ignore保存文件,重启 Login Manager 服务:sudo systermctrl restart systemd-logind.service测试上面命令有问题,还是直接重启吧。工作完成!..

2021-01-24 22:14:20 375

原创 numpy数据类型转换

numpy数据类型dtype转换这篇文章我们玩玩numpy的数值数据类型转换导入numpy>>> import numpy as np一、随便玩玩生成一个浮点数组>>> a = np.random.random(4)看看信息>>> aarray([ 0.0945377 , 0.52199916, 0.62490646, 0.21260126])>>> a.dtypedtype('float64')&gt

2021-01-12 13:58:56 1122

原创 Makefile简单模板

TARGET := test CC := g++ #注意每行后面不要有空格,否则会算到目录名里面,导致问题SRC_DIR = srcBUILD_DIR = tmpOBJ_DIR = $(BUILD_DIR)/objDEPS_DIR = $(BUILD_DIR)/deps #这里添加其他头文件路径INC_DIR = \ -I./include \ -I./src \ #这里添加编译参数CC_FLAGS := $(INC_DIR) -g -std=c++11LNK_FLAG

2021-01-07 13:48:17 138

原创 Ubuntu20.04 体验

安装搜狗输入法安装vnc远程桌面https://community.bwbot.org/topic/2917/ubuntu-20-04-vnc-%E5%AE%89%E8%A3%85%E4%B8%8E%E8%AE%BE%E7%BD%AE不需要文中提到xorg.conf,因为暂时不登录不能远程,所以暂且都是需要显示器安装samba体验https://www.linuxidc.com/Linux/2018-11/155466.htm如下是我的配置[codershare]comment = test

2020-07-14 14:36:18 301

原创 解决编译时内存不足c++: internal compiler error: Killed (program cc1plus)

解决方案创建分区文件, 大小 2Gsudo dd if=/dev/zero of=/swapfile bs=1M count=2048生成 swap 文件系统sudo mkswap /swapfile激活 swap 文件sudo swapon /swapfileAfter compiling, you may wish toCode:sudo swapoff /swapfilesudo rm /swapfile...

2020-06-28 17:36:59 689

原创 LT_INIT: command not found

./configure: line 3843: LT_INIT: command not found造成操作系统不支持的错误解决办法:安装libtool autoconf automake,然后在目录上分别执行以下语句:aclocal;libtoolize --force;autoconf;autoheader;automake

2020-06-23 16:19:44 2139

原创 __attribute__((format(printf, a, b)))

最近,在看lspci源码,第一次看到__attribute__((format(printf, a, b)))这种写法。因此,在这里记录下用法。功能:attribute format属性可以给被声明的函数加上类似printf或者scanf的特征,它可以使编译器检查函数声明和函数实际调用参数之间的格式化字符串是否匹配。format属性告诉编译器,按照printf, scanf等标准C函数参数格式规则对该函数的参数进行检查。这在我们自己封装调试信息的接口时非常的有用。format的语法格式为:format

2020-06-22 00:05:07 808

原创 内核风格代码管理clang-format checkpatch.pl

一、代码提交格式检查:1、tar zxvfp tool.tar.gz2、把解压的tool目录放到你的工程目录根目录3、把pre-commit这个文件cpcopy到repo的.git/hooks/目录下.4、执行git commit时就会执行格式检查了,如果格式不符合就会终止提交二、代码格式化1、//应为配置文件支持的语法是clang-format-5以上版本sudo apt-get install clang-format-5.02、把tool文件中的 .clang-format 到工程目录

2020-05-28 19:13:12 750

原创 shell 命令使用记录

find / -type f -name "test.c" -exec cat {} \;解析:{} 代表find找到的内容,会被放置到{}位置exec一直执行到;为止,这中间的就是find指令内的额外动作,在本例中cat …;在bash中有特殊意义,所以反斜杠来转译;...

2020-05-28 10:03:26 181

原创 sed 命令使用记录

sed -i 's/$/& /g' test.txt 行尾添加空格sed -i 's/ \+/;/2' test.txt查找行中的n个连续空格,并将第二组替换成;sed -i 's/[ ]*$//g' test.txt去除末尾的空格

2020-05-20 15:28:55 424

原创 tmux 使用记录

tmux的安装:sudo apt-get install tmuxtmux启动:$ tmuxtmux退出:Ctrl+d 或者 exittmux常用快捷键记录:Ctrl+b 是快捷命令的前缀建;Ctrl+b ?是帮助快捷键,显示帮助后q退出Ctrl+b :进入命令行执行模式tmux new -s 新建会话tmux ls 显示所有tmux会话tmux detach 会话与窗口分离tmux attach -t 0 / tmux kill-session -t 0 杀死会话tmux

2020-05-18 13:31:25 379

原创 I2C总线协议

I2C总线(Inter Integrated-Circuit)是由PHILIPS公司在上世纪80年代发明的一种电路板级串行总线标准,通过两根信号线——时钟线SCL和数据线SDA——即可完成主从机的单工通信。总线硬件连接极其简单,不同I2C设备挂接在总线上,只需在信号线安装上拉电阻即可完成硬件线路的搭建。另外,I2C总线采用器件地址的硬件设置方法,通过软件寻址方式完全避免了片选寻址的弊端,从而使硬件系统扩展更为灵活。由于简单有效,I2C在业界得到广泛应用。基于I2C衍生出来的标准有SMBus、PMBus、I

2020-05-15 09:36:02 1005

原创 ssh连接慢解决

connect to ssh too slownever fullfill the speed, faster, stronger.show the verboseuse -vvv option to show which step you stuck.$ ssh -vvv [email protected]_7.6p1 Ubuntu-4ubuntu0.3, OpenSSL 1.0.2n 7 Dec 2017debug1: Reading configuration data

2020-05-12 09:20:55 288

原创 vscode 使用插件记录

git 插件 GItLensC/C++插件 C/C++文本编辑插件:EDitorConfig(好像也可以不用)代码注释插件:koroFileHeader

2020-05-09 10:27:16 251

原创 armv8 start.S 函数简析

/* SPDX-License-Identifier: GPL-2.0+ *//* * (C) Copyright 2013 * David Feng <[email protected]> */#include <asm-offsets.h>#include <config.h>#include <linux/linkage.h...

2020-05-08 10:09:06 1985

原创 u-boot.lds解析

/* SPDX-License-Identifier: GPL-2.0+ *//* * (C) Copyright 2013 * David Feng <[email protected]> * * (C) Copyright 2002 * Gary Jennejohn, DENX Software Engineering, <[email protected]&g...

2020-05-06 20:37:11 406

原创 NAS 项目记录

开源 NAS 操作系统不完全汇总市面上能见到的 NAS 操作系统很多,有如 FreeNAS 这样意气风发的开源免费版,也有完全商业的闭源版本,更有如黑群晖之类的破解版本。NAS 系统的迭代是一个大浪淘沙的过程,活下来的系统在功能上逐渐趋同,这代表了市场的普遍需求。本页旨在汇总开源 NAS 操作系统,为大家 DIY NAS 提供一些参考。Open source word cloud illust...

2020-05-03 17:54:11 402

转载 flash驱动及文件系统

三言两语聊Kernel:flash驱动及文件系统flash种类flash分为nor flash和nand flash。nor flash的容量较小,但访问速度相对快;nand flash的容量较大。访问flash的流程用户访问flash的内容大概是要经历这些过程:用户->vfs->具体文件系统->mtd设备(字符设备、块设备)->cfi命令字->flash。现在的flash一般都满足c...

2020-04-22 09:15:14 943

原创 memcpy.S分析

/* SPDX-License-Identifier: GPL-2.0-only *//* * Copyright (C) 2013 Regents of the University of California */#include <linux/linkage.h>#include <asm/asm.h>/* void *memcpy(void *, c...

2019-12-13 17:39:47 272

原创 docker 常用的几个命令

docker versiondocker info因为docker 需要sudo权限,为了避免每次输入sudo 可以把用户加入docker用户组sudo usermod -aG docker $USER启动docker服务sudo service docker startsudo systemctl start dockerimg文件相关命令docker image lsdock...

2019-11-28 09:54:31 214

原创 Ubuntu 使用 transmission

安装sudo apt-get install transmission-cli transmission-common transmission-daemon配置文件/var/lib/transmission-daemon/info/settings.json更改配置文件的时候需要先停止Transmissionsudo service transmission-daemon stopU...

2019-11-27 18:32:25 2210

原创 LInux串口编程

最近突然要测试串口,做一下简单的记录:https://www.cmrr.umn.edu/~strupp/serial.html上面是一个POSIX标准的serial编成说明,很详细;http://www.tldp.org/HOWTO/Serial-Programming-HOWTO/这是一个串口编成的实例说明;https://blog.csdn.net/wooin/article/det...

2019-11-12 10:56:25 132

原创 VNC和远程桌面的区别

我们可以通过VNC(Virtual Network Computing)和远程桌面来连接到远程的计算机上,但是两者是有一定的区别的。VNCVNC使用的是RFB协议来做屏幕分享和远程操作的软件,由著名的AT&T欧洲研究实验室开发。使用时需要客户端软件和服务器软件配合使用。远程桌面远程桌面使用RDP(Remote Desktop Protocol)远程桌面协议,大部分Windows都默...

2019-10-19 22:45:11 6328 1

原创 vim常用命令

1、统计字符串出现的次数::m,ns/\<字符串\>//gn上面命令的意思是:统计m到n行中"字符串"出现的次数…应用的时候只需要修改m,n的值和"字符串"替换为待统计的字符串即可2、统计"字符串"在当前编辑文件出现的次数:%s/字符串//ng3、统计词语在文件中出现的行数:cat file|grep -i 字符串 |wc -l...

2019-10-18 11:11:57 100

转载 C语言中嵌入汇编

在阅读Linux内核源码或对代码做性能优化时,经常会有在C语言中嵌入一段汇编代码的需求,这种嵌入汇编在CS术语上叫做inline assembly。本文的笔记试图说明Inline Assembly的基本语法规则和用法(建议英文阅读能力较强的同学直接阅读本文参考资料中推荐的技术文章 _)。注意:由于gcc采用AT&T风格的汇编语法(与Intel Syntax相对应,二者的区别参见这里),因...

2019-10-17 20:58:05 10747

转载 使用debugfs

在進行Linux驅動開發時經常見到使用pr_debug和dev_dbg打印驅動的log,如果在內核配置時選擇了CONFIG_DYNAMIC_DEBUG宏,那麼就可以利用類似下面的命令打開對應文件的log:echo -n “file xxx.c +p” > /sys/kernel/debug/dynamic_debug/control但是有時候我們需要看到這個文件在內核啓動階段的log,那...

2019-09-23 11:25:02 827

原创 内核打印不分行

static void hex_dump_buffer(const char *s, int linenum, char *buf, int len){ int i = 0; char *tmpbuf = buf; pr_debug("%s line num: %d len 0x%x \n", s, linenum, len); for(...

2019-09-20 16:58:25 831

原创 Linux驱动开发错误:module license 'unspecified' taints kernel

如果我们由多个C文件来构造一个模块,那么C文件的名字不能和模块名字一样。例如:hello_main.c,file1.c file2.c在Makefile:obj-m := hello.ohello-objs = file1.o file2.o hello_main.o。...

2019-09-14 02:11:13 544

原创 dynamic_debugfs使用

内核开启模块:CONFIG_DYNAMIC_DEBUG文件系统挂载:mount -t debugfs none /sys/kernel/debug/查看log的过滤格式:在语法层面上,一个命令由一系列的规格匹配组成,随后由一个标记来改变这规格。command ::= match-spec* flags-specmatch-spec常用来选择一个已知的dprintk()调用点的子集来套...

2019-09-14 00:01:16 329

原创 can't open /dev/ttys0: No such file or directory

buildroot编译的rootfs开机启动显示can’t open /dev/ttys0: No such file or directory修改/etc/inittab# Put a getty on the serial portttyS0::sysinit:/bin/shttys0::respawn:/sbin/getty -L ttys0 0 vt100 # GENERIC_...

2019-09-12 14:37:03 3770

原创 git patch的使用

1 使用git format-patch生成所需要的patch:当前分支所有超前master的提交:git format-patch -M master某次提交以后的所有patch:git format-patch 4e16 --4e16指的是commit名从根到指定提交的所有patch:git format-patch --root 4e16某两次提交之间的所有patch:git...

2019-08-22 11:37:56 1987

原创 解决linux根目录磁盘空间满

根目录磁盘写满,往往都是.log日志造成的,首先想到的是查找大的日志文件1、find查找根下大于800M的文件find / -size +800M -exec ls -lh {} ;1find / -size +800M -exec ls -lh {} ;找到大的日志文件关闭掉,或者更改到其他磁盘。2、如果查找后,发现没有大文件,可能有占用文件的相关进程没有关闭可以通过下面命令(如果...

2019-08-07 15:14:37 2301

原创 outlook 重置命令

在命令行中输入:Outlook /importprf ..prf

2019-07-31 13:55:26 2845

转载 linux Makefile PHONY作用

PHONY 目标并非实际的文件名:只是在显式请求时执行命令的名字。有两种理由需要使用PHONY 目标:避免和同名文件冲突,改善性能。如果编写一个规则,并不产生目标文件,则其命令在每次make 该目标时都执行。例如:  clean:  rm *.o temp因为"rm"命令并不产生"clean"文件,则每次执行"make clean"的时候,该命令都会执行。如果目录中出现了"clean"文件...

2019-06-24 15:54:23 241

原创 系统故障调试

4.5. 调试系统故障即便你已使用了所有的监视和调试技术, 有时故障还留在驱动里, 当驱动执行时系统出错. 当发生这个时, 能够收集尽可能多的信息来解决问题是重要的.注意"故障"不意味着"崩溃". Linux 代码是足够健壮地优雅地响应大部分错误:一个故障常常导致当前进程的破坏而系统继续工作. 系统可能崩溃, 如果一个故障发生在一个进程的上下文之外, 或者如果系统的一些至关重要的部分毁坏了. ...

2019-06-18 11:22:33 379

原创 vim 快捷键记录

vim -d FILE_LEFT FILE_RIGHT屏 幕被垂直分割,左右两侧分别显示被比较的两个文件。两个文件中连续的相同的行被折叠了起来,以便使用者能 把注意力集中在两个文件的差异上。只在某一文件中存在的行的背景色被设置为蓝色,而在另一文件中的对应位置被显示为绿色。两个文件中都存在,但是包含差异 的行显示为粉色背景,引起差异的文字用红色背景加以突出。除了用这种方法启动vim的diff...

2019-06-03 14:49:26 128

原创 gdb TUI界面快捷键

​TUI(TextUser Interface)为GDB调试的文本用户界面,可以方便地显示源代码、汇编和寄存器文本窗口。Tui界面可以通过运行gdbtui或gdb-tui命令进入(其它变种gdb也一样,如arm-none-eabi-gdb-tui),当然也可以进入gdb界面后使用TUI快捷键打开,如C-xC-a快捷键,详见TUI快捷键绑定章节。1 TUI Overview在TUI模式中,可以...

2019-05-24 10:57:57 3109

原创 gdb 查看寄存器的值

info registersinfo all-registers(下面这两个暂时不知道如何使用)info registers reggroup …info registers regname …four s’tandard register name:pc sp fp psp/x $pcx/i $pcset $sp += 4...

2019-05-24 10:48:52 26606 1

原创 gdb常用命令

Linux中用gdb 查看代码堆栈的信息core dump 一般是在segmentation fault(段错误)的情况下产生的文件,需要通过ulimit来设置才会得到的。调试的话输入: gdb filename corefilename就是产生core文件的可执行文件,core就是产生的dump文件查看栈信息—————当程序被停住了,你需要做的第一件事就是查看程序是在哪里停住的。当你...

2019-05-23 11:21:42 453

vimrc vim无插件配置文件

vimrc无插件的配置文件,网上找到的分享给大家。建议大家使用的时候稍微阅读一下,这个配置文件的前置向导案件是 ,(逗号)。

2020-06-18

install.sh

Linux代码格式化管理工具,里面是配置文件,请参考我的博客文档使用!有问题请博客留言交流;clang-format 安装脚本

2020-06-03

tools.tar.gz

Linux代码格式化管理工具,里面是配置文件,请参考我的博客文档使用!有问题请博客留言交流;clang-format

2020-06-03

PCI Express bus spec 5 & PCI local bus 3.zip

PCI Local Bus Specification Revision 3.0. August 12, 2002 PCI Express Base Specification 5

2020-05-26

com0com源码,不是安装文件

com0com的源码工程 虚拟串口的代码,用DDK编译,不是com0com安装文件 com0com的源码工程 虚拟串口的代码,用DDK编译,不是com0com安装文件

2012-09-29

空空如也

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

TA关注的人

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