Linux
文章平均质量分 63
帅气滴点C
这个作者很懒,什么都没留下…
展开
-
代码调试core-踩内存
踩内存就是访问了不应该访问的内存,本文介绍如何定位+解决+避免 踩内存问题。后续将不断补充、更新原创 2022-06-21 23:19:49 · 1240 阅读 · 0 评论 -
DMA-零拷贝
是什么零拷贝传统的文件传输方式会历经 4 次数据拷贝,而且这里面,「从内核的读缓冲区拷贝到用户的缓冲区里,再从用户的缓冲区里拷贝到 socket 的缓冲区里」,这个过程是没有必要的。因为文件传输的应用场景中,在用户空间我们并不会对数据「再加工」,所以数据实际上可以不用搬运到用户空间,因此用户的缓冲区是没有必要存在的。因此零拷贝就是为了解决该为问题。如何实现零拷贝?零拷贝技术实现的方式通常有 2 种:mmap + write sendfile下面就谈一谈,它们是如何减少「上下文切换转载 2021-03-15 13:22:37 · 1995 阅读 · 0 评论 -
DMA简介
为什么要有 DMA 技术?dma主要是用于读写数据用的在没有 DMA 技术前,I/O 的过程是这样的:CPU 发出对应的指令给磁盘控制器,然后返回; 磁盘控制器收到指令后,于是就开始准备数据,会把数据放入到磁盘控制器的内部缓冲区中,然后产生一个中断; CPU 收到中断信号后,停下手头的工作,接着把磁盘控制器的缓冲区的数据一次一个字节地读进自己的寄存器,然后再把寄存器里的数据写入到内存,而在数据传输的期间 CPU 是无法执行其他任务的。 可以看到,整个数据的传输过程,都要需要 CPU 亲自.转载 2021-03-15 11:39:06 · 21395 阅读 · 5 评论 -
git 常见问题
1、进行push操作的时候,提示fatal: refusing to merge unrelated historieserror: failed to push some refs to 'https://github.com/***********’hint: Updates were rejected because the tip of your current branch is behindhint: its remote counterpart. Integrate the r原创 2020-12-13 19:25:15 · 827 阅读 · 0 评论 -
常见命令 grep
作为linux中最为常用的三大文本(awk,sed,grep)处理工具之一,掌握好其用法是很有必要的。首先谈一下grep命令的常用格式为:grep [选项] ”模式“ [文件]常用选项: -E :开启扩展(Extend)的正则表达式。 -i :忽略大小写(ignore case)。 -v :反过来(invert),只打印没有匹配的,而匹配的反而不打印。 -n...原创 2020-05-09 13:48:57 · 894 阅读 · 0 评论 -
Linux下文件搜索、查找、查看命令
Linux下文件搜索、查找、查看命令1、最强大的搜索命令:find 查找各种文件的命令 2、在文件资料中查找文件:locate 3、搜索命令所在的目录及别名信息:which 4、搜索命令所在的目录及帮助文档路径:whereis5、在文件中搜寻字符串匹配的行并输出:grep6、分页显示一个文件或任何输出结果:more7、分页显示一个文件并且可以回头:less8、指定显示前多少行文件内...转载 2020-05-07 14:18:00 · 555 阅读 · 0 评论 -
阿里云linuxe内核升级到最新
默认centos7的内核版本是3.10,所以得升级内核,下面是升级方法更新前,内核版本为[root@ip-10-10-17-4 tmp]# uname -r3.10.0-123.el7.x86_64查看现有内核版本下面是升级的方法:1、导入keyrpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org如...原创 2020-03-28 11:12:39 · 1034 阅读 · 0 评论 -
数据库常见问题汇总
1.现象如果直接docker pullCentOS两个小时才down下来8M,很慢在使用docker pull 下载mysql镜像时,速度很慢。。。2.解决[root@localhost 6Vcentos]# cd /etc/docker[root@localhost 6Vcentos]# lscerts.d daemon.json key.json seccomp...原创 2020-03-26 14:51:38 · 1275 阅读 · 0 评论 -
Easy-Mock服务器部署
1.一台服务器(话说最近掘金上很多卖服务器的垃圾广告,可被搞惨了..哈哈哈,推荐大家到阿里云官网合法途径购买哈~) 2.域名(个人觉得可有可无,因为需要域名备案,比较麻烦) 3.跟着这篇教程一步一步走 2.安装node检查自己服务器的node版本,如果node大于v8.x,那么强烈建议卸载高版本node,卸载高版本node,卸载高版本node安装node 8.x版...原创 2020-03-22 14:52:34 · 1856 阅读 · 0 评论 -
使用npm install 报错 npm WARN tar zlib error: unexpected end of file
最近拉一个项目代码安装依赖遇到报错,本应该安装在node_modules目录下的文件全安装到node_modules/.staging目录下了,在这边记录一下解决方法1. 先删除安装失败的依赖rm -rf node_modules/2.清除缓存npm cache clean这个命令系统有可能不执行,换一个就好npm cache verify3.接下来有几种方法解...转载 2020-03-22 13:38:15 · 1062 阅读 · 0 评论 -
虚拟机中常见名词
桥接模式windows实际电脑:相当于路由器,虚拟机可以通过windows访问外面,同时外面也可以访问虚拟机。使用场景:在有路由器的情况下,路由器可以为虚拟机分配ip。分配两个ip,电脑一个,虚拟机一个。主机模式在实际电脑没有连接外网的情况下,只有电脑和虚拟机,可以用主机模式,通过电脑访问虚拟机。好比两台计算机通过网线连接在一起。 使用场景:电脑没有网络。网络地址转换模式虚拟机和电脑公用一个ip...原创 2018-06-07 08:58:55 · 889 阅读 · 0 评论 -
openwrt - 应用程序开机和崩溃时自动启动
Openwrt设置开启自启动详情见:官方文档以application为例1.在/etc/init.d/下编写service脚本#!/bin/sh /etc/rc.commonSTART=99STOP=15 start() { echo start #commands to launch application, such as above applicatio...转载 2019-10-30 21:16:05 · 835 阅读 · 0 评论 -
uboot
1.为什么要有uboot1.1、计算机系统的主要部件(1)计算机系统就是以CPU为核心来运行的系统。典型的计算机系统有:PC机(台式机+笔记本)、嵌入式设备(手机、平板电脑、游戏机)、单片机(家用电器像电饭锅、空调)(2)计算机系统的组成部件非常多,不同的计算机系统组成部件也不同。但是所有的计算机系统运行时需要的主要核心部件都是3个东西:CPU + 外部存储器(Flash/硬盘) + 内...转载 2019-10-25 16:05:30 · 395 阅读 · 0 评论 -
Openwrt下设置程序开机自动启动
1. 在/etc/init.d/中按照以下格式编写shell脚本#!/bin/sh /etc/rc.commonSTART=99STOP=15 start() { echo start #commands to launch application, such as above} stop() { echo stop #commands to kill appl...转载 2019-10-15 09:48:02 · 5212 阅读 · 0 评论 -
OpenWRT添加 Target Profile 选项
引言在下载的原始的OpenWRT源码中,通过Target Profile ------>选择具体的路由器型号,但是OpenWRT源码中给出的路由器型号较少,经常不能满足实际的需求,这里所说的不能满足的要求体现在了两点,第一为默认的路由器RAM容量与实际的不符合,第二为默认的路由器Flash容量与实际的不一致。本文章以MT7688芯片为例,增加一个基于此芯片的路由器选项,具体的配置为Fla...转载 2019-04-21 14:19:55 · 4996 阅读 · 0 评论 -
openwrt中br-lan,eth0,eth0.1,eth0.2等各种网络接口
pppoe-wan 虚拟设备,他就是常见的拨号宽带上网,需要有ISP提供的用户名密码,连接后方可激此接口! lo 虚拟设备,自身的回环网设备。 lo其实是一个系统虚拟的环回接口,它的IP地址是127.0.0.1,利用这个接口可以实现系统内部发送和接收数据,所以一般情况下我们使用下面指令: lo是当初用于网络接口测试预留的一个...原创 2019-04-28 21:18:27 · 29162 阅读 · 4 评论 -
安装tftp.配置tftp服务错误的解决方法
目录安装常见问题及解决安装sudo apt-get install tftp-hpa tftpd-hpa xinetd 安装tftp软件 建立配置文件 sudo vi /etc/xinetd.d/tftp service tftp{ disable = no socket_type = dgram protocol = udp wa...转载 2019-08-02 14:52:42 · 3045 阅读 · 2 评论 -
linux下出现ping:unknown host www.baidu.com问题时的解决办法——ubuntu下局域网络的配置
由于DNS服务器没有配置好,重启后,变要重新配置如果ping域名的时候出现ping:unknown host xxx.xxx但是pingIP地址的时候可以通的话可知是dns服务器没有配置好,查看一下配置文件/etc/resolv.conf,里面是否有nameserver xxx.xxx.xxx.xxx,比如使用dns服务器 nameserver 8.8.8.8,没...转载 2019-07-17 20:12:30 · 1227 阅读 · 0 评论 -
OpenWrt 设置IP地址
【注】本文是基于Ubuntu14.04+Openwrt17.01开发的教程。5.1在开发板上设置IP由于我们在开发过程中,可能会用到其他路由器,而它们的IP一般都是192.168.1.1,为了让开发板上的IP不与这些路由器的IP冲突,我们需要修改开发板上的IP地址。接下来,我们就通过在开发板上面修改配置文件的方式来修改IP地址。首先开发板上电,等它启动一会儿,然后回车进入控制台。如图1所...原创 2019-04-15 15:10:37 · 116621 阅读 · 1 评论 -
linux常见问题
Centos 常见问题Centos 改变中文时出现乱码安装好Centos后,想改成中文出现,类似情况。解决办法:第一种用CentOS系统光盘或者ISO镜像安装缺失的语言包。第二种是通过网络来更新,只要你可以接入互联网就可以实现,第二种方法更新的,具体如下,只要在终端输入以下命令即可更新: yum -y groupinstall chinese-support然后就不用管...原创 2015-09-27 10:46:58 · 283 阅读 · 0 评论 -
red hat enterprise linux 6 改为中文
1:打开终端,改为root模式2:输入 vi /etc/sysconfig/i18n 修改 原文是LANG="en_US.UTF-8" 改为 LANG="zh_CN.UTF-8" 3:然后重启即可。原创 2015-09-27 10:56:35 · 5499 阅读 · 2 评论 -
linux本地http可以访问,远程访问不了
关闭防火墙关闭命令: service iptables stop 永久关闭防火墙:chkconfig iptables off两个命令同时运行,运行完成后查看防火墙关闭状态 service iptables status...转载 2018-05-20 09:58:26 · 4728 阅读 · 0 评论 -
linux复制文件,显示权限不够
在Linux下执行一个文件时候提示“权限不够”的解决办法如下转到那个文件的目录下面执行下面命令: chmod 777 filename到你要复制到的那个文件,修改它的权限...转载 2018-05-20 09:59:07 · 10284 阅读 · 0 评论 -
IO - 同步,异步,阻塞,非阻塞
同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如wiki,就认为asynchronous IO和non-blocking IO是一个东西。这其实是因为不同的人的知识背景不同,并且在讨论这个问题的时候上下文(context)也不...转载 2018-07-18 08:42:16 · 153 阅读 · 0 评论 -
vim常用命令总结
命令模式:控制光标移动,字符、字或行的删除,移动复制某区段及进入insert mode下或者到last line mode插入模式 进行文字编辑。底行模式将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)...原创 2018-07-12 14:25:11 · 194 阅读 · 0 评论 -
IO多路复用机制详解
服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: 同步阻塞IO(Blocking IO):传统的IO模型 同步阻塞IO(Non-blocking Io):; 默认创建的socket都是阻塞的,非阻塞IO要求socket被设置为NONBLOCK。注意这里所说的NIO并非Java的NIO(New IO)库。 IO多路复用(IO Multiplexing):即经典的Reactor...转载 2018-07-25 23:12:21 · 271 阅读 · 0 评论 -
BootLoader
一、BootLoader简介 在专用的嵌入式板子运行操作系统已经变得越来越流行。一个嵌入式系统从软件的角度看通常可以分为三个层次: 1、 引导加载程序。包括固化在固件(firmware)中的Booter代码(可选),和Loader两大部分。 2、操作系统。特定于嵌入式板子的定制内核以及内核的启动参数;以及在内核和应用程序之间可能还会包括一个嵌入式图形用户界面,常用的嵌入式GUI有:M...原创 2019-03-13 14:49:35 · 3703 阅读 · 0 评论 -
Openwrt
一、简介: penWrt作为一个嵌入式的Linux发行版已经得到广泛的运用,本文主要介绍了openWRT开发背景、OpenWrt功能、openWRT特点以及openwrt详细刷机教程。 penWrt可以被描述为一个嵌入式的Linux发行版,(主流路由器固件有dd-wrt,tomato,openwrt三类)而不是试图建立一个单一的、静态的系统。OpenWrt的包管理提供了一个完全可...原创 2019-04-13 14:06:51 · 2866 阅读 · 0 评论 -
SecureCRT 上传文件
目录一.用SecureCRT来上传和下载文件1.在使用SecureCRT上传下载之前需要给服务器安装lrzsz:2、命令sz、rz的使用方法:3、设置上传、下载文件的默认目录二、使用TFP上传一.用SecureCRT来上传和下载文件1.在使用SecureCRT上传下载之前需要给服务器安装lrzsz:yum -y install lrzsz (注:参数-y中"y"的意...原创 2019-04-13 15:51:25 · 47028 阅读 · 2 评论 -
Openwrt平台搭建
1. 在平台搭建之前,有几点需要说明一下的:所谓的平台搭建,不仅包括固件的烧写,还包括开发,编译和调试的环境搭建。Openwrt平台是基于Linux的,其支持虚拟机安装,对于手边没有设备的亲们,可以通过安装虚拟机感受一下(木有图形界面,需要命令行控制)。2. Openwrt开发环境搭建流程(仅列出我本人所搭建的环境,以Atheros 9344为例):(1)操作系统: Ub...转载 2019-04-13 21:46:51 · 2959 阅读 · 0 评论 -
linux常见命令
指令 [选项] [选项] ls 目录,参数-a -l开头第一个的:文件类型 - 表示常规文件,也就是最后的文件名,是一个文件。 d 表示目录,后面的文件名是一个目录。 c 表示为字符设备文件,键盘,鼠标是字符设备。 d 表示为块设备文件,带有存储性质的是块设备。 s 表示管道文件。 l 链接文件,相当于快捷方式,指向真正的文件。第二个:文件存...原创 2019-04-15 10:00:13 · 165 阅读 · 0 评论 -
OpenWrt常见问题汇总
目录1.***error:'OpenWrtunknown'istoolong,maxfirwareversionlengthis132.DownLoad failed3.OpenWrt的Target Profile找不到自己的路由器型号 4.编译错误you should not run configure as root (set FORCE_...原创 2019-04-15 10:24:54 · 4956 阅读 · 0 评论