
linux
文章平均质量分 59
jelly_gemini
这个作者很懒,什么都没留下…
展开
-
关于linux目录权限的简单介绍
1.进入目录需要的权限(1).取消执行权限取消执行权限后,目录不能打开(2).取消读权限取消读权限后,目录依然可以打开(3).取消写权限取消写权限后,目录依然可以打开综上,进入一个目录需要的权限是执行权限。2.查看并在目录内创建文件原创 2017-03-19 20:20:15 · 292 阅读 · 0 评论 -
linux下 socket tcp Server c语言编写(分别实现单进程,多进程,多线程)
TCP 迭代服务器接受一个客户端的连接,然后处理,完成了这个客户的所有请求后,断开连接。TCP 迭代服务器一次只能处理一个客户端的请求,只有在这个客户的所有请求满足后,服务器才可以继续后面的请求。如果有一个客户端占住服务器不放时,其它的客户机都不能工作了,因此,TCP 服务器一般很少用迭代服务器模型的。tcp服务器端框架 1.创建tcp套接字 2. 绑定套接字 3. 监听套接字 4.原创 2017-08-05 22:26:42 · 8994 阅读 · 2 评论 -
NAT技术与代理服务器
*1.NAT技术* NAT(Networ Address Translation)网络地址转换,是将不能在网络上路由的私有地址转换成合法的IP地址。 NAT技术产生之前,internet广泛使用IPv4技术,随着网络用户的迅速增加和IPv4技术本身的不足,导致IPv4地址短缺,用户的接入出现了困难,为了弥补这个缺陷,产生了NAT技术。使用NAT技术可以使多个用户使用有限个(一个)原创 2017-07-08 20:09:27 · 270 阅读 · 0 评论 -
守护进程
1.什么是守护进程 守护进程也称精灵进程( Daemon),是运⾏在后台的⼀种特殊进程。它独⽴于控制终端并且周期性地执⾏某种任务或等待处理某些发⽣的事件。守护进程是⼀种很有⽤的进程。 Linux系统启动时会启动很多系统服务进程,这些系统服 务进程没有控制终端,不能直接和⽤户交互。其它进程都是在⽤户登录或运⾏程序时创建,在运⾏结束或⽤户注销时终⽌,但系统服务进程不受⽤户登录注销的影原创 2017-06-28 11:34:12 · 304 阅读 · 0 评论 -
在linux下用c和shell编写彩色进度条
进度条 显示在屏幕上的进度条一般分为三部分 1. 显示已经执行了多少 2. 执行多少占的百分比 3. 一个转盘 先来说一下普通的进度条 对于显示执行多少,一般都会预留100个空间,每0.1秒完成1% 对于执行占的百分比,用循环i来实现,每循环一次,i+1,刚好是循环占的百分比 对于转盘,用一个数组实现,数组中有四个元素\ | - /,当这四个元素依次循环时,出现一个简单的转盘。原创 2017-07-15 17:14:18 · 707 阅读 · 0 评论 -
crond和crontab
1.简介 crond的概念和crontab是不可分割的。crontab是一个命令,常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于”crontab”文件中,以供之后读取和执行。crond正是它的守护进程。 crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序使用cron服务,用 se原创 2017-06-27 20:28:25 · 318 阅读 · 0 评论 -
mysleep与竞态条件下的mysleep
1.编写代码实现sleep功能 利用pause()和alarm()函数来实现 <1> 用alarm()设置闹钟#include<unistd.h>unsigned int alarm(unsigned seconds);alarm函数可以设置一个闹钟,及让内核在seconds秒之后发送一个SIGALRM信号该信号的默认处理动作是终止该进程; <2> 用pause()等待,内核切换到其他进程运原创 2017-07-05 23:09:32 · 503 阅读 · 0 评论 -
僵尸进程与孤儿进程
在linux中子进程是由父进程创建的。如果进程出现异常就出现一些问题,僵尸进程和孤儿进程。 孤儿进程:一个父进程退出,而他的子进程还在运行,那么子进程将会成为孤儿进程。孤儿进程将被init进程(进程号为1)所收养。 僵尸进程:一个进程使用fork创建子进程,如果子进程退出,而父进程并没有调用wait或waitpid获取子进程的状态信息,那么子进程的进程描述符仍然保存在系统中。 下面用例子来了解原创 2017-06-26 22:55:55 · 278 阅读 · 0 评论 -
shell 语法 shell命令 用shell编写进度条
`和()都是命令替换符。由反引号括起来的也是⼀条命令,Shell先执⾏该命令,然后将输出结果⽴刻代换到当前命令⾏中。命令代换也可以⽤()都是命令替换符。 由反引号括起来的也是⼀条命令,Shell先执⾏该命令,然后将输出结果⽴刻代换到当前命令⾏中。命令代换也可以⽤()表⽰: DATE=(date)(date) (())⽤于算术计算,(())中的Shell变量取值将转换成整数,例如:(())中的原创 2017-07-14 15:58:01 · 806 阅读 · 0 评论 -
Shell脚本中反引号`和$()的区别
`和()都是命令替换符。由反引号括起来的也是⼀条命令,Shell先执⾏该命令,然后将输出结果⽴刻代换到当前命令⾏中。命令代换也可以⽤()都是命令替换符。 由反引号括起来的也是⼀条命令,Shell先执⾏该命令,然后将输出结果⽴刻代换到当前命令⾏中。命令代换也可以⽤()表⽰: DATE=(date)(date) (())⽤于算术计算,(())中的Shell变量取值将转换成整数,例如:(())中的原创 2017-07-12 23:50:59 · 1221 阅读 · 0 评论 -
select
select用于探测多个句柄状态的变化 #include <sys/select.h> #include <sys/time.h> #include <sys/types.h> #include <unistd.h>int select(int nfds, fd_set *readfds, fd_set *writefds,fd_set *exceptfds, struct tim原创 2017-07-12 17:17:31 · 809 阅读 · 0 评论 -
子进程的异步等待
父进程在创建子进程时,会调用wait或waitpid清理僵尸进程。#include<sys/types.h>#include<sys/wait.h>等待函数1: pid_t wait(int*status); 返回值:成功返回被等待进程pid,失败返回-1。 参数: 输出型参数,获取⼦进程退出状态,不关⼼则可以设置成为NULL 等待函数2: pid_t waitpid(pid_t pid原创 2017-06-29 20:33:52 · 258 阅读 · 0 评论 -
crc 循环校验码
1.CRC介绍 CRC即循环冗余校验码(Cyclic Redundancy Check):是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。 2.CRC校验的过程 (1)将上次计算出的CRC校验码右移一个字节; (2)将移出的这个字节与新的要校验的字节进行XOR 运算; (3)用运算出的值在预先生成码表中进行索引,获取对应的值(称为余式); (原创 2017-06-28 22:55:14 · 457 阅读 · 0 评论 -
udp用户数据报协议的实现
1 udp的简介 UDP—用户数据报协议,是一个简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。 2 实现udp所使用的函数 socket 函数:创建一个通信点,返回一个文件描述符#include <s原创 2017-07-11 22:17:19 · 944 阅读 · 0 评论