![](https://img-blog.csdnimg.cn/20191106154010848.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
linux
L13763338360
这个作者很懒,什么都没留下…
展开
-
openssl编译
经常遇到应用程序依赖的openssl版本与环境提供的openssl版本不一致问题,需要升级或者降级opensll,重新编译openssl的动态链接库。如果编译和重新链接动态库?下载所需要的openssl版本源码,编译动态链接库存./config -d shared --prefix=/usr/local/sslmake clean && make && make install...原创 2021-04-27 21:09:59 · 118 阅读 · 0 评论 -
gcc编译
最近下载了10.2.0版本的gcc进行编译,执行./configure时报错checking build system type... x86_64-unknown-linux-gnuchecking host system type... x86_64-unknown-linux-gnuchecking target system type... x86_64-unknown-linux-gnuchecking for a BSD-compatible install... /usr/bin/原创 2020-11-13 12:54:12 · 959 阅读 · 0 评论 -
LLVM+Clang编译安装卸载
我下载的是最新版本的代码,LLVM+Clang编译安装比较耗硬件资源,8核16G内存300G硬盘,硬盘是分两块,一块100G,另一块是200G。遇到几次内存和磁盘不够的问题,一一解决,下面是我的编译安装步骤和遇到的一些过程。前期准备工作1. 安装svnyum install subversion2. 升级cmake,升级到3.0以上版本。[root@VM-100-213-centos ~]# cmake --versioncmake version 3.9.2CMake原创 2020-11-12 16:51:02 · 6613 阅读 · 1 评论 -
c++和java编译过程
很少有人将c++和java编译放在一起比较,1. C++编译过程C++编译过程分为编译和链接两个过程,编译对应图中的大括号括起的部分,其余则为链接过程。1.1 编译过程编译过程又分为两个阶段:编译和汇编编译:编译是读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码。源文件的编译过程包含两个主要阶段: 编译预处理 编译优化 汇编:汇编过程实际上指把汇编语言代码翻译成目标机器指令的过程。对于被翻译系统处理的每一个C语言源程序,都将最终经过这原创 2020-06-16 12:54:17 · 431 阅读 · 0 评论 -
关于CPU上下文的一些问题
1. 什么是CPU上下文CPU 寄存器和程序计数器,都是 CPU 在运行任何任务前必须的依赖环境,被叫做CPU上下文。CPU寄存器:CPU 内置的容量小、但速度极快的内存。 程序计数器:存储 CPU 正在执行的指令位置、或者即将执行的下一条指令位置。2. 什么是CPU上下文切换就是先把前一个任务的 CPU 上下文(也就是 CPU 寄存器和程序计数器)保存起来,然后加载新任务的上下文到这些寄存器和程序计数器,最后再跳转到程序计数器所指的新位置,运行新任务。而这些保存下来的上下文,会存储在.原创 2020-06-06 06:51:00 · 311 阅读 · 0 评论 -
linux查看文件不可见字符
方法1用vim打开:set list有些字符还是看不见方法2cat -A file方法3用vim打开:%!cat -A原创 2020-06-05 18:52:48 · 2743 阅读 · 1 评论 -
如何多个进程监听同一个端口
1. 问题描述一个进程监听端口,经验告诉我们,如果多次启动一个进程会报错:“Address already in use!"。这是由于bind函数导致的,由于该端口号已经被第一个进程监听了。有哪些方法可以实现多个进程监听同一个端口呢?2. 方案一:fork只要在绑定端口号(bind函数)之后,监听端口号之前(listen函数),用fork()函数生成子进程,这样子进程就可以克隆父进程,达到监听同一个端口的目的,而且还相互竞争,提高程序效率。这里要注意的是,计算机三次握手创建连接是不需要服务进原创 2020-06-03 11:13:52 · 13107 阅读 · 0 评论 -
常见流控算法
计数器一种比较简单的限流算法,用途比较广泛,在接口层面,很多地方使用这种方式限流。在一段时间内,进行计数,与阀值进行比较,到了时间临界点,将计数器清0。存在时间临界点的问题。比如每分钟限速100个请求,第59秒来了100个请求,第61秒又来了100个请求,59秒到61秒瞬间来了200个请求。滑动窗口滑动窗口的意思是说把固定时间片,进行划分,并且随着时间的流逝,进行移动,这样就巧妙的避开...原创 2020-03-23 00:12:22 · 1447 阅读 · 0 评论 -
CPU上下文切换
https://zhuanlan.zhihu.com/p/52845869转载 2020-03-19 13:38:36 · 129 阅读 · 0 评论 -
进程和线程切换的开销
进程切换开销切换虚拟地址空间 切换CPU上下文 切换内核栈线程切换开销切换CPU上下文 切换内核栈虚拟地址空间 每个进程都有自己的虚拟地址空间,进程内的所有线程共享进程的虚拟地址空间。 虚拟内存是操作系统为每个进程提供的一种抽象,每个进程都有属于自己的、私有的、地址连续的虚拟内存,当然我们知道最终进程的数据及代码必然要放到物理内存上,那么必须有某种机制能记...原创 2020-03-19 13:19:28 · 4288 阅读 · 0 评论 -
wrk安装测试
下载源码,编译git clone https://github.com/wg/wrk.git cd wrk makecp wrk /usr/local/bin/编辑post.lua文件[hdfs@xydwtest01 ~]$ cat post.lua wrk.scheme = "http"wrk.method = "POST"wrk.path = "/s...原创 2019-12-09 14:47:10 · 333 阅读 · 0 评论 -
linux内存查看命令free在不同机器上的差异
引用网上的一个free命令示例,total=used+freeroot@prometheus-02:~# free total used free shared buffers cachedMem: 16433020 1827360 14605660 740 203540 ...原创 2019-11-06 15:48:31 · 230 阅读 · 0 评论