linux
文章平均质量分 71
Aiky哇
专注于数据库、go、性能优化,对待当下的态度,决定你未来的高度
展开
-
linux下安装/升级GCC到较高版本
安装GCC最简单的方式当然是【yum -y install gcc】但是我的机器上安装下来后,其版本是4.8.5,感觉有点低,所以想升级一下(7.2.0, 8.2.0之类的版本)。于是需要手动安装。原创 2022-09-05 23:32:50 · 5138 阅读 · 0 评论 -
系统内存管理介绍,内存申请及回收流程
使用伙伴系统进行存储空间的管理过程中,在用户申请空间时,由于大小不同的空闲块处于不同的链表中,所以分配完成的速度会更快,算法相对简单。回收存储空间时,对于空闲块的合并,不是取决于该空闲块的相邻位置的块的状态;而是完全取决于其伙伴块。所以即使其相邻位置的存储块时空闲块,但是由于两者不是伙伴的关系,所以也不会合并。这也就是该系统的缺点之一:由于在合并时只考虑伙伴,所以容易产生存储的碎片。无用单元的收集可以采用以上 3 中算法中任何一种。转载 2022-08-21 00:00:53 · 874 阅读 · 0 评论 -
数据库内核面试中我不会的问题(3)
数据库内核面试考察的还是操作系统,网络,算法那一套原创 2022-08-05 18:49:49 · 497 阅读 · 0 评论 -
linux内核态和用户态
也叫,是内核进程/线程所在的区域。也叫,是用户进程/线程所在的区域。转载 2022-08-01 15:01:00 · 394 阅读 · 0 评论 -
shell脚本不使用exec,同时读取两个文件
还是需要用到文件重定向(翻译成白话就是告诉机器使用哪个文件进行输入输出)网上大多读取两个文件的操作是使用exec实现文件重定向,但是这样exec后,文件重定向操作会永久生效但是一般只希望在当前命令中有效,之后就没用了。所以使用read -u命令来指定文件描述符比如:read-u3i意思是从 3 号 fd (file descriptor,文件描述符) 中读一行数据到 i 变量中read-u4j意思是从 4号 fd (file descriptor,文件描述符)...原创 2021-01-12 11:33:29 · 732 阅读 · 0 评论 -
linux增加swap分区和删除swapfile文件的方法
创建swapfile文件执行命令:dd if=/dev/zero of=swapfile bs=1024 count=5000000注:可根据实际需要更改count值的大小,这里设置5000000,大概就是4G多[root@dics-no iflytek]# dd if=/dev/zero of=swapfile bs=1024 count=500000500000+0 records in500000+0 records out512000000 bytes (512 MB) copie转载 2021-01-06 21:02:04 · 3137 阅读 · 0 评论 -
shell小技巧,自己用
一.逗号分割字符串为数组host="10.0.0.1,10.0.0.2,10.0.0.3"host=(${host//,/ })${#host[*]}=3${host[*]}=10.0.0.1 10.0.0.2 10.0.0.3二.查看文件夹或文件是否存在if [ ! -d "`pwd`/report" ]; then echo "创建文件夹`pwd`/report" mkdir `pwd`/reportfiif [ ! -d "`pwd`/re...原创 2021-01-06 17:48:04 · 213 阅读 · 0 评论 -
shell脚本,向postgresql任意表中插入大量数据
由于业务需要,需要测试操作大量数据的时间,但是对于表字段比较多的表,并且表很多时,经常手动插入就很累,所以写了个自动根据系统表获取表字段,并且根据参数向表中插入大量数据的shell脚本使用时需要的必要参数:$host ,$port :postgresql端实例连接用的端口号$username,$password :登录数据库时使用的用户名和密码$dghome:postgresql的bin目录,目录下有psql工具,用来连接数据库$dbname:表所在的数据库名称$relation:需原创 2020-09-29 17:32:56 · 2291 阅读 · 0 评论 -
linux shell 字符串操作(长度,查找,替换)详解
在做shell批处理程序时候,经常会涉及到字符串相关操作。有很多命令语句,如:awk,sed都可以做字符串各种操作。 其实shell内置一系列操作符号,可以达到类似效果,大家知道,使用内部操作符会省略启动外部程序等时间,因此速度会非常的快。一、判断读取字符串值表达式 含义 ${var} 变量var的值, 与$var相同 ${var-DEFAULT} 如果var没有被声明, 那么就以$DEFAULT作为其值 * ${var:-DEFAULT} 如果..转载 2020-09-14 14:21:05 · 150 阅读 · 0 评论 -
使用队列进行线程通信时的优化
我之前在https://blog.csdn.net/qq_35423190/article/details/107943081(用队列实现并行处理数据不加锁)中使用队列,意图实现使用队列不加锁由于工作经验浅薄,没有意识到这个问题,直到leader和我说封装的队列结构内部是加锁的,不然实现不了Queue.size()(当然,不适用封装队列而是手动使用数组实现循环队列时,就不会有锁)虽然python的队列结构Queue在多线程传数据时确实是安全的,但是仍有不停的加锁,导致频繁使用一个队列进行io时,原创 2020-09-09 16:09:49 · 200 阅读 · 0 评论 -
用队列实现并行处理数据不加锁
在数据量特别大,并且数据处理速度远高于数据读取速度时,可以考虑多线程读取数据+多线程处理数据的模式,如果单线程读取速度也已经可以满足数据处理的需要,也可以采用主线程读取数据+多线程处理数据的模式为了说明起来更简单,这里使用python语言进行说明多线程读取数据多线程读取数据可以分为两种,读取不同文件和读取相同文件。(不过具体情况具体分析,根据硬盘的读性能,有可能并发读文件的效率并没有单线程读文件的效率高)读取不同文件:为每个线程安排一个文件名称# 多线程需要引入import原创 2020-08-11 20:55:50 · 1253 阅读 · 0 评论