Linux下的5种I/O模型(转)
摘要:l 阻塞I/O l 非阻塞I/O l I/O复用(select、poll、epoll) l 信号驱动I/O(SIGIO) l 异步I/O(Posix.1的aio_系列函数) l 阻塞I/O模型 应用程序调用一个IO函数,导致应用程序阻塞,等待数据准备好。如果数据没有准备好,一直等待。。。。数据准备好
阅读全文
使用kafka和zookeeper 构建分布式编译环境
摘要:1:在每台机器上安装jdk, 脚本代码如下: 每一个机器上下载jdk,zookeeper,kafka 链接:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html http://mirr
阅读全文
ubuntu 更改hostname, hosts后没有办法执行sudo 问题
摘要:由于主机名有重复的情况,所有需要更改主机名,遇到几个问题,主机名更改,重启系统以后不能执行sudo,另外也不知道root用户名密码。这个时候陷入了死循环。 网上搜集的办法,都是用sudo 命令去更改,但是sudo 命令都用不了,怎么更改呢?于是找到了这个solution: https://githu
阅读全文
Linux可重入函数和线程安全的区别与联系(转)
摘要:*****可重入函数 函数被不同的控制流程调用,有可能在第一次调用还没返回时就再次进入该函数,这称为重入。 当程序运行到某一个函数的时候,可能因为硬件中断或者异常而使得在用户正在执行的代码暂时终端转而进入你内核,这个时候如有一个信号需要被处理,而处理的这个信号的时候又会重新调用刚才中断的函数,如果函
阅读全文
Vim 文件配置
摘要:cat ~/.vimrc syntax on set nu set encoding=utf-8 set ts=4 set fileencodings=ucs-bom,utf-8,cp936 set fileencoding=gb2312 set termencoding=utf-8 """""""""""""""""""""" "Quickly Run "
阅读全文
[转]linux shell 多线程实现
摘要:情景 shell脚本的执行效率虽高,但当任务量巨大时仍然需要较长的时间,尤其是需要执行一大批的命令时。因为默认情况下,shell脚本中的命令是串行执行的。如果这些命令相互之间是独立的,则可以使用“并发”的方式执行这些命令,这样可以更好地利用系统资源,提升运行效率,缩短脚本执行的时间。如果命令相互之间
阅读全文
Linux 虚拟内存机制
摘要:每个进程都有自己独立的4G内存空间,各个进程的内存空间具有类似的结构。 Linux内存管理采用的是页式管理,使用的是多级页表,动态地址转换机构与主存、辅存共同实现虚拟内存 一个新进程建立的时候,将会建立起自己的内存空间,此进程的数据,代码等从磁盘拷贝到自己的进程空间,哪些数据在哪里,都由进程控制表中
阅读全文
linux程序的常用保护机制
摘要:操作系统提供了许多安全机制来尝试降低或阻止缓冲区溢出攻击带来的安全风险,包括DEP、ASLR等。在编写漏洞利用代码的时候,需要特别注意目标进程是否开启了DEP(Linux下对应NX)、ASLR(Linux下对应PIE)等机制,例如存在DEP(NX)的话就不能直接执行栈上的数据,存在ASLR的话各个系
阅读全文
关于makefile的生成原理以及make相关命令的使用
摘要:一、生成configure过程中各文件之间的关系图 二、详细介绍 autoscan: 扫描源代码以搜寻普通的可移植性问题,比如检查编译器,库,头文件等,生成文件configure.scan,它是configure.ac的一个雏形。 aclocal:根据已经安装的宏,用户定义宏和acinclude.m
阅读全文
ubuntu apache ssl配置
摘要:参考连接: http://blog.csdn.net/sky_qing/article/details/44303221 http://blog.sina.com.cn/s/blog_6ad6243801013em0.html
阅读全文
docker 安全性问题
摘要:最近项目组成员要在k8s中引入类似于docker --privileged 的功能。显示通过api查询在container和pod层面做了securityContext的设置。 但是没有起到效果。于是想到k8s中Pod和container是通过kubelet进行创建和管理的,那么kubelet应该有
阅读全文
kubenetes pv(nfs) pvc 搭建
摘要:1:nfs-server的搭建。 install the NFS Server: sudo apt install nfs-kernel-server 2:配置server. vim /etc/exports for example add: 3: 安装client: sudo apt-get in
阅读全文