liunx开发学习笔记
文章平均质量分 66
Linux学习笔记!
klaus_x
待更新,请耐心等待,不会很久,还在上班,哈哈哈哈哈,谢谢!
展开
-
交叉编译搭建
和gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz,记得拷贝完source /etc/profile,指令arm-linux-gnueabihf-gcc -v。添加到/etc/profile中去,前面加上export PATH=$PATH:,最后就是。第一个是针对 32 位系统的,第二个是针对 64 位系统的。把对应的bin目录加到环境变量中。3.下载到拷贝到对应目录。原创 2024-03-07 00:50:36 · 610 阅读 · 0 评论 -
虚拟机环境搭建
解决办法参考https://www.jb51.net/softjc/847223.html,将SVM Mode改成【允许】解决。如果已在 BIOS/固件设置中禁用 AMD-V,或主机自更改此设置后从未重新启动,则 AMD-V 可能被禁用。VMware Workstation 在此主机上不支持用户级别监控。搭建vm环境,配置虚拟机,期间遇到不支持,重启电脑后还是没用。此主机不支持“AMD RVI”硬件辅助的 MMU 虚拟化。此主机支持 AMD-V,但 AMD-V 处于禁用状态。原创 2024-03-07 00:48:33 · 964 阅读 · 0 评论 -
【shell】shell条件测试
shell条件测试1.测试格式test 条件表达式,或者[ 条件表达式 ] ,或者 [[ 条件表达式 ]],其实我们可以man test查看一下用法TEST(1) User Commands TEST(1)NAME test - check file types and com...原创 2020-02-03 19:42:50 · 305 阅读 · 0 评论 -
vscode 配合wsl做linux下的开发
vscode 配合wsl做linux下的开发安装wsl直接在商店里面搜索wsl记住在windows功能项里面勾选 适用于Linux的Windows子系统配置wsl安装完成之后输入wsl进入刚刚安装的wsl1.更换阿里云镜像sudo sed -i s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.listsudo apt update -ysudo apt upgrade -y2.安装ssh服务这里刚刚原创 2020-11-11 20:30:25 · 613 阅读 · 0 评论 -
【shell】shell命令解释及特点
【shell学习】shell命令解释及特点1.命令运行返回值命令行运行成功,会返回0,不成功则会返回非0值查看命令 echo $?[klaus@localhost learn]$ lsping01.sh ping02.sh ping03.sh ping04.sh ping05.sh[klaus@localhost learn]$ echo $?0[klaus@localhos...原创 2020-01-15 13:16:35 · 1489 阅读 · 0 评论 -
【shell】shell变量
【shell学习】shell变量1.自定义变量变量值,只能以字母或下划线开口,变量引用 $变量名 或 ${变量名},取消变量 unset[klaus@localhost learn]$ ip=4.2.2.2[klaus@localhost learn]$ echo $ip4.2.2.2[klaus@localhost learn]$ echo ${ip}4.2.2.2[klaus@...原创 2020-01-19 00:23:55 · 183 阅读 · 0 评论 -
【shell项目实战】 日志删除
日志删除删除日志要求1.定期删除/data目录下修改时间大于7天的日志文件2.定期删除/data/YY-MM-DD.tar.gz该目录仅工作日自动生成YY-MM-DD.tar.gz文件希望只保留最近2天的文件无论节假日/data仍只会保留前2个工作日文件1.定期删除大于2天的日志linux中修改时间用-mtime[klaus@localhost project]$ ll da...原创 2020-02-16 01:30:55 · 266 阅读 · 0 评论 -
【shell项目实战】收集系统信息
收集系统信息收集系统信息脚本目的:分析系统资源性能瓶颈脚本功能查看CPU利用率与负载(top,vmstat,sar)查看磁盘、IO负载(df,iostat,iotop,dstat)查看内存利用率(free,vmstat)查看tcp连接状态(ss,netsta)查看CPU与内存占用最高的10个进程查看网络流量(ifconfig,iftop,iptraf)退出程序1.CPU利用...原创 2020-02-12 21:04:29 · 1838 阅读 · 0 评论 -
【shell】shell 函数
shell 函数1.定义函数方法一函数名(){ 函数要实现的功能}方法二function 函数名{ 函数要实现的功能}如果函数需要传递参数的的用$1,$2,局部变量定义用local,返回值的话return $?(最后一句执行成功情况)2.实例2.1 阶乘实例[klaus@localhost chapt7]$ cat factor.sh#!/bin/bas...原创 2020-02-10 18:00:11 · 409 阅读 · 0 评论 -
【shell】 array数组
shell array数组1.普通数组数组的定义有2种,一是一次赋一个值,二是一次赋多值,数组也是一种变量,具体赋值为:数组名[下标]=变量值[klaus@localhost chapt6]$ array[0]=apple[klaus@localhost chapt6]$ array[1]=banana[klaus@localhost chapt6]$ echo "${array[1]}...原创 2020-02-07 18:36:09 · 494 阅读 · 0 评论 -
【shell】shell if条件判断
shell if条件判断1.if测试格式分单分支,双分支和多分支,和一般if测试格式相同 单分支 双分支 多分支if 条件测试 if 条件测试 if 条件测试 命令序列 then 命令序列 then 命令序列fi else 命令序列 elif 条件测试1 fi...原创 2020-02-07 01:21:25 · 1939 阅读 · 0 评论 -
【shell】shell 非交互处理
shell 非交互处理1.expectexpect可以用来实现非交互的功能,是根据脚本与其他交互式程序“对话”的程序。在脚本之后,Expect知道程序可以期望什么,正确的响应应该是什么。解释语言提供分支和高级控制结构来引导对话。 此外,用户可以根据需要控制并直接进行交互,然后将控制权返回给脚本。1.1 实例1.非交互式ssh登陆[klaus@localhost chapt5]$ cat s...原创 2020-02-07 01:05:45 · 818 阅读 · 0 评论 -
Makefile的使用
Makefile产生背景 一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作。Makefile文件完整过程 1. 工程中需编译源文件及如何编译 2. 需创建库文件及如何创建这些库文件 3. 最后产生我们想要的可执行文件makefile编写原创 2017-10-02 02:58:19 · 340 阅读 · 1 评论 -
linux下C程序从编写到执行完整过程
本文提及Linux下vim的一些基本使用,包括程序找回,调试,分析,重点分析讲解了Linux下C代码程序的执行过程,从编写到执行的全过程和分析错误产生解决办法,文章还讲解静态库和动态库的编写生成原则。内容分析到位,分享给大家版权归作者及武汉凌云实验室所有。原创 2017-10-01 00:40:43 · 3307 阅读 · 0 评论 -
TTL,232串口区别
串口:介绍:串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口 (Serial Interface) 是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线)。串并行口并行通讯通常可以一次传送8bit、16bit、32bit甚至更高的位数,相应地就需要8根、16根、32根信号线,同时需原创 2017-10-15 16:46:40 · 6218 阅读 · 0 评论 -
Vim的升级与配置
Vim的升级按道理,我们下载vim编译器的时候系统一般会给我自动选择最新版本的vim,这里我尝试升级自己的vim编辑器,可能是自己虚拟机不支持,没有安装成功vim 8,想尝试的萌新可以试一下;[klaus@localhost Templates]$ wget ftp://ftp.vim.org/pub/vim/unix/vim-8.0.tar.bz2[klaus@localhost vim80]$原创 2017-12-10 21:49:24 · 3767 阅读 · 0 评论 -
关于Linux与window文件互传问题
1.sz、rzrz,sz命令可以直接用来上传,下载文件,直接使用命令就可以实现window同Linux文件的互传注意要点:你需要知道你当前的操作目录,和你存放的操作目录 我们一般SecureCRT软件ssh远程登录到Linux系统上,着重注意下载上传目录位置 [klaus@localhost Public]$ lltotal 4-rw-rw-r--. 1 klaus klaus 186 Ja原创 2018-01-19 19:11:56 · 6669 阅读 · 0 评论 -
Root密码忘了怎么办???
Linux虚拟机root密码忘了??root密码忘了比较麻烦 1.重启虚拟机,在开机阶段快速进入grub界面,按e进入编辑阶段2.进入内核选项,按e进入编辑阶段,添加单用户, /init 1,退出按b重启3.进入单用户模式将root密码清除掉,重启,为后面添加用户密码做准备4.root登录,添加自己root密码 root密码修改成功!原创 2018-01-20 13:50:35 · 323 阅读 · 0 评论 -
Linux下的GCC实用粗谈
GCC编译GCC(GNU C Compiler)是GNU推出的功能强大、性能优越的多平台编译器,是GNU的代表作之一。1.一般用法[klaus@localhost my_usual]$ clear[klaus@localhost my_usual]$ lltotal 4-rw-rw-r--. 1 klaus klaus 99 Jan 20 19:33 hello.c[k原创 2018-01-20 21:20:10 · 375 阅读 · 1 评论 -
S3C2440开发板烧录笔记
S3C2440开发板烧录笔记本篇博客来自凌云实验室开发板介绍及其烧录学习笔记1. 开发板基础和介绍三星公司的 16/32 位精简指令集(RISC)微处理器 S3C2440A基于 ARM920T 核心,0.13µm 的 CMOS 标准宏单元和存储器单元它采用了新的总线架构如先进微控制总线构架(AMBA)1 主要注意:256M的nandflash,64M的内存带DM9000...原创 2018-03-09 11:21:02 · 8070 阅读 · 0 评论 -
Linux最小内核移植
Linux内核编译本篇博客来自凌云实验室开发板介绍及其烧录学习笔记1.内核介绍一种开源电脑操作系统内核。它是一个用C语言写成,符合POSIX标准的类Unix操作系统。也就是,最上面是用户(或应用程序)空间,程序执行的地方。函数库(glibc或uclibc)提供了连接内核的系统调用接口,还提供了在用户空间应用程序和内核之间进行转换的机制。区别于51,stm32单片机等,每个用户空间的...原创 2018-03-10 23:55:05 · 5103 阅读 · 0 评论 -
Linux交叉编译器的制作(二)
Linux交叉编译器的制作-crosstool-ng1.交叉编译器的了解1.1 GNUGNU编译器集(其前身为GNU C编译器)诞生于1987年。当时Richard Stallman(GNU项 目的创办人)想要创建一个编译器,它可以满足他定义的“自由软件”概念,并可用来编译 GNU项目发布的其他软件。GNU C编译器迅速在自由软件社区中流行开来,而且以其健壮性和 可移植性...原创 2018-03-13 15:12:10 · 2395 阅读 · 2 评论 -
CentOS 6.9 制作crosstool-ng交叉编译 错误日志
crosstool-ng 制作交叉编译 CentOS 6.9版本制作 错误日志[klaus@localhost crosstool-ng-1.16.0]$ lsbootstrap configure contrib ct-ng.comp docs LICENSES Makefile.in README scripts TODOconfig ...原创 2018-03-15 12:36:54 · 864 阅读 · 0 评论 -
CentOS 7.0 制作crosstool-ng交叉编译 错误日志
crosstool-ng 制作交叉编译 CentOS 7.0版本制作 错误日志[INFO ] =================================================================[INFO ] Installing PPL for host[EXTRA] Configuring PPL[ERROR] configure: ...原创 2018-03-15 12:40:30 · 1021 阅读 · 1 评论 -
u-boot的制作
1.bootloader引导BootLoader 是在操作系统内核启动之前运行的一段小程序。通过这段程序,我们可以初始化硬件设备,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境,最后从别处( Flash、以太网、 UART)载入内核映像到主存并跳到入口地址。U-Boot 是 Das U-Boot 的简称,其含义是 Universal Boot Load...原创 2018-03-18 11:50:01 · 857 阅读 · 2 评论 -
最小文件系统树和initramfs文件系统的制作
文件系统树的制作上一次中我们出现了这个错误... ... ...1f05 40960 mtdblock5 (driver?)Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)[<c0037abc>] (unwind_backtrace+0x0...原创 2018-04-03 16:21:00 · 1417 阅读 · 0 评论 -
jff2根文件系统制作
上一次中,我们发现烧录Linux内核时,单纯的的内核文件烧到单片机中,系统会无法跑起来,根本原因就没有挂载点,找不到文件系统,这一次我们来制作基于jffs2根文件系统的制作。1. jff2文件系统简介jff2是专门针对Norflash而设计的文件系统,这种文件系统是直接存放在flash上面,掉电后不丢失,区别于initramfs,小页的Nandflash也可以使用,只是效率不高。这里是No...原创 2018-04-06 16:29:50 · 1548 阅读 · 0 评论 -
普通分区jffs2挂载
jffs2除了可以制作成根文件系统使用以外,我们也可以在系统成功启动后,将其他分区以jffs2文件系统类型挂载使用。上一篇中,我们以jffs2文件系统同Linux内核分别烧录到开发板中,当时分区时留下了mtdblock5 backup 40MB,这次我们将其他分区以jffs2文件系统类型挂载使用。 查看内核分区状况~ >: dmesg | grep mtdblock Kernel...原创 2018-04-06 19:46:45 · 3673 阅读 · 0 评论 -
ubifs文件系统的制作
1. ubifs文件系统简介摘自官网上的简介:One thing people have to understand when dealing with UBIFS is that UBIFS is very different to any traditional file system - it does not work on top of block devices (like har...原创 2018-04-07 16:59:24 · 2396 阅读 · 0 评论 -
hello world驱动显示
前几篇博客中,我们实现了内核的移植,根文件系统的制作。 到此,操作系统就可以跑起来了。我们可以来尝试第一个简单的hello world。初步了解内核了解,我们将Linux内核分成三大部分 用户空间用户空间之下是内核空间,Linux 内核正是位于这里。C基础库(如glibc、eglibc、uclinux等)也属于应用程序空间,它提供了连接内核的系统调用接口,还提供了在用户...原创 2018-04-18 16:55:59 · 637 阅读 · 0 评论 -
普通分区ubifs挂载
上一次中,我们制作了jffs2文件系统,实现了普通分区jffs2的挂载,这一次,我们同样实现了ubifs文件系统的挂载,可以来尝试一下ubifs下普通分区的挂载。Nandflash分区情况MTD设备分区情况~ >: cat /proc/mtddev: size erasesize namemtd0: 00100000 00020000 "mtdblock0...原创 2018-04-23 02:01:30 · 1508 阅读 · 1 评论