aisxyz
码龄7年
关注
提问 私信
  • 博客:91,395
    91,395
    总访问量
  • 159
    原创
  • 2,195,200
    排名
  • 4
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2017-06-29
博客简介:

aisxyz

查看详细资料
个人成就
  • 获得15次点赞
  • 内容获得5次评论
  • 获得56次收藏
创作历程
  • 37篇
    2018年
  • 99篇
    2017年
  • 24篇
    2016年
成就勋章
TA的专栏
  • 操作系统
    13篇
  • 数据结构
    1篇
  • python
    7篇
  • 算法
    1篇
  • 安全
    1篇
  • mysql
    4篇
  • linux
    11篇
  • 网络
    2篇
  • 网络编程
    17篇
  • unix编程
    77篇
  • docker之旅
    8篇
  • git之旅
    2篇
  • 驱动程序
    2篇
  • javascript
    3篇
  • go
    2篇
  • shell
    4篇
  • redis
    3篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

342人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

作业控制命令

Linux 中的作业控制涉及到很多命令,现总结如下。 * jobs:列出所有正在后台运行的作业(不如 ps 命令常用)。这里要注意区分作业和进程的概念。一般作业是被当前 shell 所维护的,而进程则是被系统维护的。一些命令(如 kill、disown 和 wait 等)既可以接受作业号为参数,也可以接受进程号为参数,而另一些命令(如 fg、bg 和 jobs 等)则只能接受作业...
原创
发布博客 2018.09.29 ·
763 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

作业控制命令

Linux 中的作业控制涉及到很多命令,现总结如下。 * jobs:列出所有正在后台运行的作业(不如 ps 命令常用)。这里要注意区分作业和进程的概念。一般作业是被当前 shell 所维护的,而进程则是被系统维护的。一些命令(如 kill、disown 和 wait 等)既可以接受作业号为参数,也可以接受进程号为参数,而另一些命令(如 fg、bg 和 jobs 等)则只能接受作业...
原创
发布博客 2018.09.29 ·
763 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[转载]理解goroutine

本文讲解了进程、线程和协程之间的区别,并详细讲解了 Golang 中的协程 goroutine 的实现方式,是一篇不错的博文,值得收藏:[url]https://blog.csdn.net/justaipanda/article/details/44064811[/url]。...
原创
发布博客 2018.09.18 ·
283 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

跳跃表在 Redis 中的应用

前提申明,因篇幅有限,本文只介绍跳跃表在 Redis 中的应用,而关于跳跃表的原理性介绍,还请参考其他相关书籍,或参考博文[url=https://blog.csdn.net/u014427196/article/details/52454462]跳跃表 SkipList【数据结构】原理及实现[/url]。 跳跃表是一种有序数据结构,它实现了同二分查找一样的平均 O(logN)、...
原创
发布博客 2018.08.23 ·
1055 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

跳跃表在 Redis 中的应用

前提申明,因篇幅有限,本文只介绍跳跃表在 Redis 中的应用,而关于跳跃表的原理性介绍,还请参考其他相关书籍,或参考博文[url=https://blog.csdn.net/u014427196/article/details/52454462]跳跃表 SkipList【数据结构】原理及实现[/url]。 跳跃表是一种有序数据结构,它实现了同二分查找一样的平均 O(logN)、...
原创
发布博客 2018.08.23 ·
1055 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

字典实现

字典在 Redis 中的应用相当广泛,如 Redis 的数据库、Hash 类型等的底层实现都用到了字典。 Redis 的字典使用了哈希表,其中可以包含多个哈希表节点,每个节点就保存了字典中的一个键值对。这两者的结构定义分别如下:[code="C"]typedef struct dictht{ dictEntry **table; // 哈希表节点...
原创
发布博客 2018.08.20 ·
370 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis 字符串和列表实现

Redis 虽说由 C 语言实现,但用户直接操作的字符串绝大多数情况下均非 C 语言中以空字符结尾的字符串,而是一种封装了 C 字符串的称作简单动态字符串(simple dynamic string, SDS)的抽象结构,并将其作为 Redis 的默认字符串表示。 SDS 结构的定义如下:[code="C"]struct sdshdr{ int len; ...
原创
发布博客 2018.08.08 ·
340 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

字符串操作

Bash 所支持的字符串操作的方式多种多样,现记录如下。 1、获取字符串长度: 1)${#string} (“${#*}”和“${#@}”表示的是位置参数的个数。另外,对于数组 arr 而言,“${#arr}”表示的是数组中第一个元素的长度,“${#arr[@]}”和“${#arr[* ]}”表示的是数组中元素的个数) 2) expr length $stri...
原创
发布博客 2018.07.30 ·
150 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

内部变量简介

shell 中有很多[color=red]内建[/color]变量,它们会影响到 shell 脚本的行为,所以也有必要知道。 * BASH:表示 Bash 的二进制程序文件的路径。 * BASH_ENV:它会指向一个 Bash 的启动文件,该文件会在一个脚本被调用时读取。 * BASH_SUBSHELL:用来提示子 shell 的层次。 * BASH...
原创
发布博客 2018.07.24 ·
886 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

打开伪终端设备

在[url=http://aisxyz.iteye.com/admin/blogs/2423960]伪终端概述[/url]一节中已对 PTY进行了初步的介绍。尽管 PTY 表现得就像物理终端设备一样,不过在打开 PTY 设备文件时,应用程序并不需要设置 O_TTY_INIT 标识(见[url=http://aisxyz.iteye.com/admin/blogs/2370533]不带缓冲的...
原创
发布博客 2018.07.09 ·
328 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

常忘记的特殊字符

shell 中有很多特殊字符,比如表示转义的“\”、表示命令替换的“`”等,其中有些用得少了就很容易忘记,包括某个字符或是某个功能等的用法。以下是本人自己的备忘录,仅供参考。 1、“:”(冒号):等价于"no op",是一个什么也不干的命令, 同shell 内建命令 true 的作用相同。可用来作命令占位符。具体用法如下。[code="bash"]# 1)用在循环中w...
原创
发布博客 2018.07.03 ·
421 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

伪终端概述

伪终端就是指,一个应用程序看上去像一个终端,但事实上它并不是个真正的终端。下图显示了使用伪终端时相关进程的典型安排。[img]http://dl2.iteye.com/upload/attachment/0129/9523/81165c3d-0144-3e08-bb9d-dc8a16b4ccc9.png[/img] 图中的关键点如下。 1、通常,一个进程打开伪终端主...
原创
发布博客 2018.06.02 ·
1259 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

终端窗口大小和 termcap

多数 UNIX 系统都提供了一种跟踪当前终端窗口大小的方法。在窗口大小发生变化时,内核就会通知前台进程组。内核为每个终端和伪终端都维护了一个如下的 winsize 结构。[code="c"]struct winsize{ unsigned short ws_row; // rows, in characters unsigned short ws_...
原创
发布博客 2018.05.29 ·
1034 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

终端规范模式和非规范模式

终端规范模式很简单:发一个读请求,当一行已经输入后,终端驱动程序立即返回。以下几个条件都会造成读返回。 1、所请求的字节数已读到时。此时无需读一个完整的行,如果读了部分行,也不会丢失任何信息,下一次读会从前一次读的停止处开始。 2、当读到一个行定界符时。在[url=http://aisxyz.iteye.com/admin/blogs/2422413]终端特殊输入字符[...
原创
发布博客 2018.05.29 ·
1499 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

终端标识

尽管控制终端的名字在多数 UNIX 系统上都是 /dev/tty,不过为了可移植性,POSIX.1 还是提供了一个可用来确定控制终端名字的运行时函数 ctermid。[code="c"]#include char *ctermid(char *ptr); /* 返回值:若成功,返回指向终端名的指针;否则,返回指向空字符串的指针 */[/code]...
原创
发布博客 2018.05.23 ·
1457 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

波特率和行控制函数

虽然大多数终端设备对输入和输出都使用同一波特率(即“位/秒”),但只要硬件允许,就可以使用下面 4 个函数将它们设置为不同的值。[code="c"]#include speed_t cfgetispeed(const struct termios *termptr);speed_t cfgetospeed(const struct termios *termptr); ...
原创
发布博客 2018.05.22 ·
416 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

终端属性和选项标志

tcgetattr 和 tcsetattr 函数可以分别获取和设置 termios 结构,这样就可以检测和修改各种终端选项标志和特殊字符。[code="c"]#include int tcgetattr(int fd, struct termios *termptr);int tcsetattr(int fd, int opt, const struct termios *...
原创
发布博客 2018.05.20 ·
667 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

终端特殊输入字符

终端支持下表所示的特殊输入字符。[img]http://dl2.iteye.com/upload/attachment/0129/7813/8d8e24f5-a84a-3c1e-836c-911bc74a8b9b.png[/img][img]http://dl2.iteye.com/upload/attachment/0129/7815/fa5e28a3-1c44-3ffc-b05...
原创
发布博客 2018.05.17 ·
1125 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

终端 I/O 综述

终端设备可认为是由内核中的终端驱动程序控制的。每个终端设备都有一个输入队列和输出队列。如下图所示。[img]http://dl2.iteye.com/upload/attachment/0129/7795/19e52b16-e753-3d06-bec0-6e0595a59047.png[/img] 对该图要说明以下几点: 1)如果打开了回显功能,则在输入队列和输出队...
原创
发布博客 2018.05.10 ·
206 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

POSIX 信号量

在[url=http://aisxyz.iteye.com/admin/blogs/2418777]XSI IPC通信之信号量[/url]一节中提到了 XSI 标准的信号量。POSIX 信号量意在解决 XSI 信号量的以下几个缺陷。 1)POSIX 信号量考虑到了更高性能的实现。 2)POSIX 信号量接口使用更简单:没有信号量集。 3)POSIX 信号量在删...
原创
发布博客 2018.05.09 ·
256 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多