![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
文章平均质量分 69
magoyang
这个作者很懒,什么都没留下…
展开
-
vim tab键自动补全
我是 vim 粉丝, 用了许久, 有一些自己的感受, 又到处挖到一些别人的技巧. 感觉对 vim粉丝比较有用, 就把它记在这儿. 希望借此文套出大家自己的巧活, 就正应了抛砖引玉的古话了.先稍为介绍一下 vim. vi 是 unix/linux 下极为普遍的一种文本编辑器, 大部分机器上都有. vi 有各种变种, 在不同的机器上常用不同的变种软件. 其中 vim 比较好用也用得转载 2016-08-28 07:54:00 · 7991 阅读 · 1 评论 -
linux 5种I/O模型
1、阻塞I/O说明1:当上层应用Application1调用recv系统调用时,如果对等方没有发送数据(Linux内核缓冲区中没有数据),上层应用Application1将阻塞[默认:被Linux内核阻塞)说明2:当对等方发送了数据,Linux内核recv端缓冲区数据到达,内核会把数据copy给用户空间。然后上层应用Application1解除阻塞,执行下一步操作。2、原创 2016-07-26 16:05:21 · 433 阅读 · 0 评论 -
linux信号--阻塞信号
1. 信号在内核中的表示我们知道了信号产生的各种原因,而实际执行信号处理的动作,叫做信号递达(Delivery)。信号从产生到递达之间的状态,称为信号未决(Pending)。进程可以选择阻塞(Block)某个信号。被阻塞的信号产生时将保持在未决状态,直到进程解除对此信号的阻塞,才执行递达的动作。 注意,阻塞和忽略是不同的,只要信号被阻塞就不会递达,而忽略是在递达之后可选的一种处理动作。原创 2016-07-09 12:59:14 · 2129 阅读 · 0 评论 -
git配置
Windows下Git客户端和Github设置第一步:安装Git For Windows msysgit是Windows版的Git,从https://git-for-windows.github.io/下载,然后按默认选项安装即可。 下载链接:https://github.com/git-for-windows/git/releases/latest原创 2016-08-16 13:04:50 · 405 阅读 · 0 评论 -
linux下上传代码到github
方法/步骤1、linux下github配置方法配置本的SSH KEY 才可以使远程跟本地连接(1,检查本地SSH KEY生成情况;(如果出现““No such file or directory”或类似的语句,说明缺少ssh的key)生成KEY的命令如下:$ cd ~/.ssh$ ssh-keygen -t rsa -C "emailaddress"(emailaddr原创 2016-08-16 15:38:49 · 6902 阅读 · 0 评论 -
windows7下git、TortoiseGit的安装与使用
1、目的:安装Tortoise2、准备:首先安装git,再安装Tortoise;3、git的安装与准备:(1)git下载:在Windows中使用Git需要安装msysGit:下载地址:http://msysgit.github.io/(2)git配置:4、TortoiseGit的安装与使用(1)下载:TortoiseGit下载地址(语言包需另外下载):下载地址: h原创 2016-08-16 13:24:12 · 1728 阅读 · 0 评论 -
死锁的原因,避免及预防
1、死锁:什么是死锁?死锁是指在一组进程中的各个进程均占有不会释放的资源,但因互相申请被其他进程所站用不会释放的资源而处于的一种永久等待状态。2、死锁产生的原因:(1)竞争不可抢占性资源;竞争可消耗资源;进程推进顺序不当;(2)其根本原因是:系统资源不够 (3)产生死锁的四个必要条件:# 互斥条件:一个资源每次只能被一个进程使用。# 请求与保持条原创 2016-07-29 20:28:34 · 2025 阅读 · 0 评论 -
进程通信方法之一--管道(的容量与实现)
进程间通信的作用 进程间需要数据传输、资源共享和事件通知。进程间通信的方式 管道通信(无名管道和命名管道) 信号通信 内存资源共享 消息队列 信号量管道 管道是单向的、先进先出的,它把一个进程的输出和另一个进程的输入连接在一起原创 2016-07-02 16:25:51 · 4119 阅读 · 2 评论 -
linux 常见进程状态的调度及算法
一、进程的状态:1、操作系统中:进程是一个动态的实体,所以他是有生命的。从创建到消亡,是一个进程的整个生命周期。在这个周期中,进程可能会经历各种不同的状态。一般来说,所有进程都要经历以下的3个状态:(1)就绪态。指进程已经获得所有所需的其他资源,正在申请处理处理器资源,准备开始执行。这种情况下,称进程处于就绪态。(2)阻塞态。指进程因为需要等待所需资源而放弃处理器,或者进程本不拥有原创 2016-06-10 09:55:40 · 5303 阅读 · 0 评论 -
linux下实现一个进度条
问题:在现实生活中我们可以经常看到一些应用进度条的场景。比如说在游戏中的进度展示,在工作中下载东西,解压缩等查看进度都会有进度条忙碌的身影,下面我们在linux下实现一个进度条,要求:(1)进度容器的展示;[# ] (2)进度展示的精确值;[100%] (3)工作是否进行的提示标志;[-]思路:(1)背景知识:在c语言中的缓冲方式是以行缓冲形原创 2016-06-04 17:19:26 · 455 阅读 · 0 评论 -
linux安装Telnet工具
1、检查是否有Telnet工具:没有的话显示如下2、没有则直接用命令“ yum -y install telnet"安装就行了3、安装完成!原创 2016-07-30 20:22:15 · 4746 阅读 · 0 评论 -
shell中命令代换$()与`` 、 变量代换${} 、 整数运算$(( )) 的区别
命令代换$()与`` 、变量代换${} 、 整数运算$(( ))1、$( ) 与 ` ` (反引号) 在 bash shell 中,$( ) 与 ` ` (反引号) 都是用来做命令替换用(command substitution)的。所谓的命令替换与我们第五章学过的变量替换差不多,都是用来重组命令行:* 完成引号里的命令行,然后将其结果替换出来,再重组命令行。例如:原创 2016-08-11 12:19:37 · 4783 阅读 · 0 评论 -
tcpdump strace archlinux gento 字符串截取
1、TCPDUMP(1)简介:TcpDump可以将网络中传送的数据包完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。Linux作为网络服务器,特别是作为路由器和网关时,数据的采集和分析是不可少的。TcpDump是Linux中强大的网络数据采集分析工具之一。用简单的话来定义tcpdump,就是:du原创 2016-08-14 17:09:36 · 645 阅读 · 0 评论 -
ncurses及简单使用
1、NCURSES:提供字符终端处理库,包括面板和菜单NCURSES不仅仅只是封装了底层的终端功能,而且提供了一个相当稳固的工作框架(Framework)用 以产生漂亮的界面。它包含了一些创建窗口的函数。而它的姊妹库 Menu、Panel和Form则是对CURSES基础库的扩展。这些库一般都随同CURSES一起发行。我们可以建立一个同时包含多窗口 (multiple windows)、菜单原创 2016-08-13 23:36:43 · 9788 阅读 · 0 评论 -
shell定时器-crontab
Linux的crontabcrontab定时器(包括执行shell)如果要让unix系统重复,定期做一件事,我们就会用到crontab.实质上真正去执行每一个重复任务的是cron,cron是的unix家族的一个后台常驻程序,cron是由cron文件来驱动的,crontab只是用来管理cron文件的,比如给cron file里面添加任务,删除任务,文件里记录了要执行的任务原创 2016-08-11 20:53:48 · 7704 阅读 · 0 评论 -
vim便捷命令:高亮搜索& 多行注释 和 取消多行注释
Vim 的高亮搜索1. 使用 * 键可以向后搜索光标所在位置的单词。反之,使用 # 键可以向前搜索光标所在位置的单词。第一次使用 * 或者 # 进行搜索之后,则可以使用 N 或 Shift-N 继续进行搜索。另外,如果设置了hlsearch选项(:set hlsearch)的话,那么使用 * Shift-N 则可以标记当前的单词为高亮显示。2、在你的vimrc中设置 s原创 2016-08-10 23:09:02 · 2341 阅读 · 0 评论 -
linux中fork()函数详解
linux中fork()函数详解(原创!!实例讲解) (转载) 一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进程调用fork()函数后,系统先给转载 2016-06-15 17:40:56 · 332 阅读 · 0 评论 -
atexit()函数登记顺序的的验证
一、简介1.、函数名: atexit2、头文件:#include3、功 能: 注册终止函数(即main执行结束后调用的函数)4、用 法: void atexit(void (*func)(void));5、注意:exit调用这些注册函数的顺序与它们 登记时候的顺序相反。同一个函数如若登记多次,则也会被调用多次。6、解析:按照ISO C的规定,一个进程可以登记至少32个函数,原创 2016-06-15 15:37:35 · 424 阅读 · 0 评论 -
linux 下的进程控制块-task_struct 初学
进程控制块PCB(Process Control Block)(1)概述进程控制块的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。或者说,OS是根据PCB来对并发执行的进程进行控制和管理的。 PCB通常是系统内存占用区中的一个连续存区,它存放着操作系统用于描述进程情况及控制进程运行所需的全部信息,它使一个原创 2016-06-04 17:51:04 · 1986 阅读 · 0 评论 -
Linux中最危险的是个命令(很有趣呦~)(链接:http://os.51cto.com/art/201408/448756.htm)
永远不要在Linux执行的10个最危险的命令Linux命令行佷有用、很高效,也很有趣,但有时候也很危险,尤其是在你不确定你自己在正 在做什么时候。这篇文章并不打算引来你对Linux或linux 命令行的愤怒。我们只是想让你意识到在你运行某些命令时应该三思而后行。作者:木木来源:outofmemory.cn|2014-08-20 11:17 收藏 分享转载 2017-03-04 16:24:09 · 1165 阅读 · 0 评论 -
15个不起眼但非常强大的 Vim 命令
如果我的关于这个话题的最新帖子没有提醒到你的话,那我明确地说,我是一个 Vim 的粉丝。所以在你们中的某些人向我扔石头之前,我先向你们展示一系列“鲜为人知的 Vim 命令”。我的意思是,一些你可能以前没有碰到过的命令,但可能对你来说很有用。作为第二免责声明,我不知道哪些命令是你可能知道的,以及哪些是对你来说有用的。因此这些命令实际上是一些相对少见,但很可能很有用的 Vim 命令。保存文件并转载 2016-08-28 08:19:08 · 411 阅读 · 0 评论 -
linux 清屏命令(3种方式)
注:都是亲测有效的(1)clear这个命令将会刷新屏幕,本质上只是让终端显示页向后翻了一页,如果向上滚动屏幕还可以看到之前的操作信息。一般都会用这个命令。(2)ctrl+l(等价clear)(3)reset这个命令将完全刷新终端屏幕,之前的终端输入操作信息将都会被清空,这样虽然比较清爽,但整个命令过程速度有点慢,使用较少。(4)另外介绍一原创 2017-12-31 10:11:04 · 123696 阅读 · 5 评论