linux内核学习
文章平均质量分 54
跃祥666888
方向对了,再慢也是前进
展开
-
Linux shell脚本中内联输入 <<-EOF 和 <<EOF的区别
<<-EOF将忽略起止内容中前面的tab制表符,而<<EOF将不会,比如:cat <<EOF Line 1 Line 2EOFwill produce Line 1 Line 2whilecat <<-EOF Line 1 Line 2EOFproducesLine 1Line 2The format of here-documents is: <<[-]word here-do原创 2020-08-14 11:55:26 · 2156 阅读 · 1 评论 -
git常用命令
创建分支git checkout -b mybranch从远程分支创建本地同名分支,并使本地分支的代码从远程分支获取:git checkout -b mybranch origin/mybranch从远程同步分支到本地git pull origin <分支>:<本地要合并的分支>简单:git pull origin mybranch // 同步远程的mybranch分支到本地当前分支,并合并。删除分支git branch -d mybranch删除远程分支gi原创 2020-07-14 15:52:13 · 126 阅读 · 0 评论 -
Ubuntu14.0右键显示终端
sudo apt-get install nautilus-open-terminal安装之后,重启或者登出即可原创 2019-02-24 14:10:13 · 419 阅读 · 0 评论 -
fdisk查看磁盘参数,对磁盘大小的计算解析
术语:磁头、扇区、磁道、柱面数、逻辑块一个硬盘是由类似光盘一样的盘堆起来的,为了描述,就把盘称为光盘吧。磁头:一个光盘有两个盘面,每个盘面各有一个磁头用于读取数据。所以一个光盘就是两个磁头。要是一个硬盘有两个光盘,那就是4个磁头。磁道:光盘的盘面可以分成若干个同心圆,就像水里的波纹,一圈一圈的,每一圈被称为一个磁道。每一圈的周长都各不一样,但是厂商为了方便,容量确实一样的。编号由外向内(...原创 2019-01-14 15:20:35 · 5497 阅读 · 0 评论 -
查看可执行程序需要的程序库依赖
开发板为arm,交叉编译的不能用ldd直接查看readelf -a ./hello | grep "Shared"可以看到hello程序所需要的共享库文件原创 2019-01-05 14:58:36 · 2124 阅读 · 0 评论 -
关于source insight3.5版本中文乱码解决方案
具体参考该博主单个文件:主要是因为SI软件时ANSI编码,而我们一边用的都是UTF-8编码,只要用记事本之类的软件把UTF转为ANSI就行了。这个是针对少量含中文注释的文件,批量的话参考上面博主的...原创 2018-12-19 10:43:56 · 9997 阅读 · 0 评论 -
make gconfig报错,缺失各种库以及make meuconfi缺失库
sudo apt-get install gtk+-2.0 glib-2.0 libglade2-dev原创 2019-01-03 16:57:03 · 728 阅读 · 0 评论 -
制作man手册命令的pdf文件,将man手册制作成pdf文件
制作指定命令的pdf文件,将其打印出来很多时候我们常用的命令也就那么几个,如果全部打印出来,翻起来不仅费时还容易找不到和打乱思路。将其打印出来便可以省时省力,或者用pdf工具查看也可快速定位。man -t mount | ps2pdf -> mount.pdf这里是制作的一个mount命令的pdf文件,大家可根据需要更换成自己需要的命令。...原创 2018-12-10 20:14:58 · 813 阅读 · 0 评论 -
Ubuntu等linux系统中设置终端title标题
在~/.bashrc中添加下面代码function set-title() { if [[ -z "$ORIG" ]]; then ORIG=$PS1 fi TITLE="\[\e]2;$*\a\]" PS1=${ORIG}${TITLE}}set-title China即可将title设置为China...原创 2018-12-26 21:26:25 · 7457 阅读 · 0 评论 -
在用make modules_install报找不到交叉编译器-linux-gcc
由于在模块安装时用到了sudo,而root环境下并没有配置路径,可以su root,去which mipsel-linux-gcc,看有没有,肯定是没有,可以手动再配一下PATH,然后再make,就不会报错了...原创 2018-12-06 16:11:57 · 1239 阅读 · 0 评论 -
关于虚拟机跟开发板互相ping通以及用tftp传输文件的终极解决方案
开发环境:主机:Windows10虚拟机:Ubuntu16.04开发板:智龙-龙芯1C300A关于为什么一定要在虚拟机下连接开发板:因为省事,文件做好直接tftp传到开发板 避免开发板某种因素导致Windows主机突然蓝屏,有可能出现中断驱动不兼容导致蓝屏 为了开心===========================一、要使用tftp在虚拟机和开发板之间传输文件,首...原创 2018-12-03 18:50:12 · 4281 阅读 · 2 评论 -
解决酷比魔方iwork手写板系列TF卡以及USB3.0不识别的问题
方案按f7或者win10下进入或者开机键加+号键进入bios选择Adanced --System compont – MS Custom sdbus Drive ,改为enabled原创 2018-12-06 11:15:32 · 4712 阅读 · 2 评论 -
关于buildroot下载路径dl目录的设置
dl 目录dl目录是buildroot的默认下载目录,buildroot会根据你的配置从网上自动下载你需要的工具包,而工具包保存的地方就是buildroot顶目录下的dl目录。有时候我们想修改这个默认的下载位置:方法:顶目录下的config.in文件,找到BR2_DL_DIR变量的设置,可以直接在文件中修改路径,不过建议在.config文件中添加对BR2_DL_DIR的设置。如我想放在bui...原创 2018-12-05 17:07:32 · 4428 阅读 · 0 评论 -
虚拟机linux/Ubuntu/Debian系统安装vmtools
sudo apt-get install open-vm-tools-desktop fuse -y原创 2018-12-08 16:37:23 · 626 阅读 · 0 评论 -
关于linux跟Windows文件编码问题
在Windows下的nodepad++创建的文件跟linux下的gedit文件创建的不一样用cat -A text查看,若每行后面有^M$,则代表是Windows下创建的文件若没有,则是linux下创建的 Windows下的换行符是\r\nlinux下是\n,所以多出来的\r会造成多了一个特殊字符,从而造成文件不能正常读取使用。去除\r的方法是:cat text |...原创 2018-12-05 11:46:22 · 1238 阅读 · 0 评论 -
解决Ubuntu无法安装老一代的ia32-libs库
安装ia32-libs是32位的东西,要64位打开多架构支持才能安装。sudo dpkg --add-architecture i386sudo apt -get updatesudo apt-get dist-upgrade原创 2019-02-25 21:43:21 · 1723 阅读 · 0 评论 -
petalinux2018.2编译时报错
WARNING: petalinux-user-image-1.0-r0 do_rootfs: [log_check] petalinux-user-image: found 1 warning message in the logfile:[log_check] warning: %post(sysvinit-inittab-2.88dsf-r10.plnx_zynqmp) scriptlet...原创 2019-03-06 13:13:23 · 4471 阅读 · 0 评论 -
关于信号量和互斥量协调操作的说明,以防死锁
生产者模型:消费者模型:必须先操作信号量来查看缓冲区是否可以被操作,之后才能获取缓冲区的使用权(加锁),如果上面检测信号量和加锁反过来,那么将导致死锁。例如生产者生产完消息直接对缓冲区加锁,声明主权缓冲区只能由自己使用,然后再查看有没有空间能放消息了,如果这时候消息队列满了,那么生产者将等消费者消费一个消息才能放入,但是消费者将检测到互斥量mutex被加锁了,也就是缓冲区被别人使用了,...原创 2019-07-25 16:06:16 · 560 阅读 · 0 评论 -
Github仓库命名规范
Github仓库命名规范命名规则 :GIT库名一律采用项目名-类型-年月的形式。其中对项目名的规范如下:库名中不得出现下述规定的字符- \ @ ! # $ % ^ & * () [] {} | \ ; : ‘’ ’ , 。 《 》 < > · ~ 。库名应尽量避免使用 名.名的形式。库名应尽量使用英文,禁止使用中文字符。一般情况下,库名中出现的各个单词的首字母应使...转载 2019-07-20 18:58:10 · 2705 阅读 · 0 评论 -
字节对齐的规则总结
字节对齐规则原创 2019-06-25 09:55:47 · 1017 阅读 · 0 评论 -
栈溢出漏洞攻击 分析
一、栈溢出下的攻击(栈溢出+ret2libc,开启DEP保护,关闭ASLR,32位系统)思路:在函数返回时将返回地址控制到系统函数,例如system,然后找出“/bin/bash”的字符串地址。前提:关闭地址随机化(ASLR):echo "0" > /proc/sys/kernel/randomize_va_space代码:读取的攻击代码前116字节为填充字符。\x6...原创 2021-01-12 11:19:20 · 1381 阅读 · 0 评论 -
windows10 用户桌面背景和主题存放路径
C:\Users\您的用户名\AppData\Local\Microsoft\Windows\Themes原创 2019-03-22 10:22:10 · 5773 阅读 · 0 评论 -
petalinux2018.2系统初始化流程,关于linux启动流程
root@xiang_mac:~# cat /etc/inittab# /etc/inittab: init(8) configuration.# $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $# The default runlevel. id:5:initdefault:# Boot-time system configu...原创 2019-03-13 12:38:10 · 733 阅读 · 0 评论 -
完全安装Ubuntu系统下的man手册
默认情况下,Ubuntu是没有完全安装man手册的,有时候查找命令会找不到,比如man set ,默认是没有这个命令的apt-get install manpages-de manpages-de-dev manpages-dev glibc-doc manpages-posix-dev manpages-posix安装之后,就可以查找所有命令了。...原创 2019-03-13 10:59:00 · 2331 阅读 · 0 评论 -
trap命令和source命令在rcS脚本中的应用
trap - INT QUIT TSTPset start. $itrap “命令” 信号,捕获信号并执行第二个参数指定的命令trap “echo ’ Sorry… Ctrl-C is trapped.’” SIGINT 捕获ctrl+c,执行echo输出命令。此时按ctrl+c就不是中断进程了,而是执行echo这条命令。若要恢复信号的默认行为,只有加两个破折号或者单破折号也行:tr...原创 2019-03-12 21:39:30 · 786 阅读 · 0 评论 -
Ubuntu安装软件或库时提示资源被锁,强制解锁
E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?资源解锁命令:强制解锁:sudo rm /var/cache/apt/archives/lock /var/lib/dpkg/lock...原创 2019-03-15 12:28:30 · 1951 阅读 · 3 评论 -
使用CSDN-markdown编辑器
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...转载 2019-03-10 21:17:34 · 520 阅读 · 0 评论 -
Ubuntu系统挂载了ramdisk虚拟磁盘后,挂载点不显示文件系统中的内容。
比如挂载点名称为rootfs。那么将ramdisk挂载到rootfs后,应该能在rootfs中看到文件系统的目录项,如果看不见,就是因为权限不够。将rootfs目录的权限修改为777sudo chmod -R 777 rootfs/就可以了...原创 2019-03-14 21:43:01 · 1168 阅读 · 0 评论 -
内核启动报错:Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)在开发板启动后,串口输出停止了,内核卡住了,经过查看串口消息,发现了kernel panic这段内核恐慌的报错提示,提示不能挂载根文件系统。因为我用的是ramdisk虚拟磁盘充当文件系统的,但是内核并没有准确设置randisk的大小,我做的...原创 2019-03-14 20:34:12 · 38346 阅读 · 2 评论 -
Ubuntu安装tftpd-hpa及主机与开发板/从机不能相互ping通
ping不同原因:tftpd32是一个tftp协议传输文件的服务器,主机与开发板连不通,代表两者并没有路由,可以先互相ping一下,如果真的不通,那就关闭Windows主机防火墙和关闭类似于360安全软件之类的软件。然后再ping,如果还是ping不通,可以先ping开发板自己的地址看看能不能ping通,如若不能,该重新配地址了。记得启动网口====================== =...原创 2018-12-03 09:37:43 · 1495 阅读 · 0 评论 -
用命令关闭Ubuntu的自动关闭屏幕和锁屏
有时候linux系统是没有图形化界面的,为了关闭锁屏和息屏可以用如下命令关闭息屏,最后0是代表关闭锁屏,将0替换为60代表60s后自动息屏,以此类推。gsettings set org.gnome.desktop.session idle-delay 0关闭锁屏gsettings set org.gnome.desktop.screensaver lock-enabled fals...翻译 2018-11-26 22:12:50 · 22846 阅读 · 2 评论 -
linux实时调度策略
SCHED_FIFIO与SCHED_RR两种实时调度策略,FIFO:只能被高优先级的实时进程抢占RR:耗尽事先分配的时间后就不能再运行了。轮流调度其他同一优先级的实时进程。 软实时:内核调度进程尽力使进程在它的限定时间到来前运行,但不一定总能满足进程的需求硬实时:在一定条件下,满足任何调度进程的要求...翻译 2018-09-17 20:48:41 · 1647 阅读 · 0 评论 -
linux内核基于CFS算法的进程调度
符号==> 表示“函数调用”进程选择:调度入口:schedule()==>pick_next_task() //选出每个调度器中最高优先级的那个进程pick_next_task的实现函数pick_next_task_fair()会调用pick_next_entity()==>__pick_next_entity() // 作用:从上面的若干个(各个调度器中的)最高优先...翻译 2018-09-17 16:48:53 · 243 阅读 · 0 评论 -
linux系统管理员处理日常任务的几个简单小方法
一、 从linux日志文件中读取数据并处理的脚本程序 g317#!/bin/bashexec 0< testfilecount=1while read linedo echo "line #$count: $line" count=$[ $count + 1 ]done二、 快速清除文件(例:日志文件)中所有数据,而不必删除再重新创建 g324...原创 2018-09-10 14:02:19 · 2523 阅读 · 0 评论 -
ascii码表
http://tool.oschina.net/commons?type=4转载 2018-09-06 11:14:47 · 1030 阅读 · 0 评论 -
Ubuntu运行可执行文件时为什么直接输入名字没用,带上路径才行?
解释:shell只会根据PATH环境变量来查找命令,如果你的执行文件(假设名称为test)所在的目录不在$PATH中,那么直接输入文件名test将会说找不到文件解决方法:两种1. 将test执行文件所在的目录添加到PATH环境变量中。2. 在提示符中用绝对或相对文件路径来运行test可执行文件(亦或是脚本文件) g212...原创 2018-09-06 10:01:32 · 2290 阅读 · 0 评论 -
aptitude search搜索结果说明
前面的p:说明这个包可用(在软件仓库中),但还没安装,在本机上无一点痕迹i:说明这个包现在已经安装到了你的系统上c:意味着软件已删除,但是配置文件尚未从系统中删除v:意味着这个软件包是虚拟的=============================Each search result is listed on a separate line. The first chara...翻译 2018-09-03 14:51:38 · 1254 阅读 · 0 评论 -
gcc更改为老版本
参考这位博主直接修改符号链接,避免修改优先级 修改优先级的方法转载 2018-09-05 15:18:06 · 1367 阅读 · 0 评论 -
查看链接文件的最终目标的多种方法
1. ls -l /usr/bin/vi p512. file /usr/bin/vi p583. readlink -f /usr/bin/vi(该命令可查看链接文件的最后一环)p182翻译 2018-09-05 15:10:43 · 2073 阅读 · 0 评论 -
ls命令详解+通配符
ls -F:参数在目录名后加了正斜线(/),以方便用户在输出中分辨它们。类似地,它会在可执行文件(比如上面的my_script文件)的后面加个星号,以便用户找出可在系统上运行的文件。 ls -a:隐藏文件也显示出来。 -R参数是ls命令可用的另一个参数,叫作递归选项。它列出了当前目录下包含的子目录中的文件注:选项并一定要像例子中那样分开输入:ls –F –R。它们可以进行如下合并:ls –F...原创 2018-08-30 15:43:36 · 8689 阅读 · 0 评论