随笔分类 -  Unix/Linux系统编程

Programming on Unix/Linux OS. 文件系统. 网络 . shell
摘要:Address space layout randomization(ASLR)是一种参与保护缓冲区溢出问题的一个计算机安全技术。是为了防止攻击者在内存中能够可靠地对跳转到特定利用函数。ASLR包括随机排列程序的关键数据区域的位置,包括可执行的部分、堆、栈及共享库的位置。 不仅随机化栈地址,还可以随 阅读全文
posted @ 2018-03-21 15:54 PKICA 阅读(596) 评论(0) 推荐(0) 编辑
摘要:一般来说,Posix的线程终止有两种情况:正常终止和非正常终止。线程主动调用pthread_exit()或者从线程函数中return都将使线程正常退出,这是可预见的退出方式;非正常终止是线程在其他线程的干预下,或者由于自身运行出错(比如访问非法地址)而退出,这种退出方式是不可预见的。 不论是可预见的 阅读全文
posted @ 2018-01-30 15:10 PKICA 阅读(3758) 评论(0) 推荐(0) 编辑
摘要:条件变量Condition Variables 概述 1. 条件变量提供了另外一种线程同步的方式。如果没有条件变量,程序需要使用线程连续轮询(可能在临界区critical section内)方式检查条件是否满足。由于线程连续忙于轮询检查,这会非常消耗资源,而条件变量是一种实现同样目标不需要轮询的方式 阅读全文
posted @ 2018-01-08 21:21 PKICA 阅读(1444) 评论(0) 推荐(0) 编辑
摘要:一.概述 读写锁与互斥量的功能类似,对临界区的共享资源进行保护!互斥量一次只让一个线程进入临界区,读写锁比它有更高的并行性。读写锁有以下特点: 1.如果一个线程用读锁锁定了临界区,那么其他线程也可以用读锁来进入临界区,这样就可以多个线程并行操作。但这个时候,如果再进行写锁加锁就会发生阻塞,写锁请求阻 阅读全文
posted @ 2017-12-07 16:48 PKICA 阅读(1586) 评论(0) 推荐(0) 编辑
摘要:Q: method: Solution “vmmon” is the virtual machine monitor kernel module. You can rebuid it by running: sudo vmware-modconfig --console --install-all 阅读全文
posted @ 2017-07-30 18:50 PKICA 阅读(2697) 评论(0) 推荐(0) 编辑
摘要:线程池包括:n个执行任务的线程,一个任务队列,一个管理线程 1). 预先启动一些线程,线程负责执行任务队列中的任务,当队列空时,线程挂起。 2). 调用的时候,直接往任务队列添加任务,并发信号通知线程队列非空。 3). 管理线程负责监控任务队列和系统中的线程状态,当任务队列为空,线程数目多且很多处于 阅读全文
posted @ 2017-07-19 10:50 PKICA 阅读(158) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/jeffcjl/article/details/5523569 由于不同的进程运行在各自不同的内存空间中.一方对于变量的修改另一方是无法感知的.因此.进程之间的信息传递不可能通过变量或其它数据结构直接进行,只能通过进程间通信来完成。 根据进程通信时信息量大小 阅读全文
posted @ 2016-10-19 17:39 PKICA 阅读(8703) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/lanyan822/article/details/7692013 在程序中难免需要使用命令行选项,可以选择自己解析命令行选项,但是有现成的,何必再造轮子。下面介绍使用getopt_long解析命令行选项。 程序中主要使用: 1、函数出处 [cpp] vie 阅读全文
posted @ 2016-08-24 22:01 PKICA 阅读(226) 评论(0) 推荐(0) 编辑
摘要:socket.c 1 /* Id:socket.c1.11995/01/0107:11:14cthuangExp 2 * 3 * This module has been modified by Radim Kolar for OS/2 emx 4 */ 5 6 /******** 阅读全文
posted @ 2016-08-18 06:24 PKICA 阅读(271) 评论(0) 推荐(0) 编辑
摘要://heads.h #ifndef HEAD_H #define HEAD_H #include <iostream> #include <sys/shm.h> //share momery #include <unistd.h> #include <stdio.h> #include <strin 阅读全文
posted @ 2016-07-14 21:34 PKICA 阅读(620) 评论(0) 推荐(0) 编辑
摘要://pool.h 1 #ifndef POOL_H 2 #define POOL_H 3 #include 4 5 class pool 6 { 7 public: 8 pool(); 9 ~pool(); 10 11 void func(); 12 static void *schedule(void *ptr); 13 int s... 阅读全文
posted @ 2016-07-08 18:02 PKICA 阅读(716) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/scanery/article/details/7241890 感谢作者! 近来发现 在线程函数第一行调用 pthread_detach(pthread_self()) 返回值是22不是0,后来在网上找到以下话语: linux线程执行和windows不同,p 阅读全文
posted @ 2016-07-08 17:18 PKICA 阅读(419) 评论(0) 推荐(0) 编辑
摘要:/ 根目录 │ ├boot/ 启动文件。所有与系统启动有关的文件都保存在这里 │ └grub/ Grub引导器相关的文件 │ ├dev/ 设备文件 ├proc/ 内核与进程镜像 │ ├mnt/ 临时挂载 ├media/ 挂载媒体设备 │ ├root/ root用户的$HOME目录 ├home/ │ 阅读全文
posted @ 2016-03-27 21:37 PKICA 阅读(303) 评论(0) 推荐(0) 编辑
摘要:#include <stdio.h>#include <pthread.h>#include <stdlib.h>#define NHASH 29#define HASH(fp) (((unsigned long)fp)%NHASH)struct foo *fh[NHASH];pthread_mut 阅读全文
posted @ 2016-03-27 20:32 PKICA 阅读(242) 评论(0) 推荐(0) 编辑
摘要:转载自http://blog.csdn.net/xiyuan1999/article/details/5680102,感谢作者分享 vi编辑器中的整行(多行)复制与粘贴就非常必要了。 1、复制 1)单行复制 在命令模式下,将光标移动到将要复制的行处,按“yy”进行复制; 2)多行复制 在命令模式下, 阅读全文
posted @ 2015-12-20 10:32 PKICA 阅读(333) 评论(0) 推荐(0) 编辑
摘要:1:使用date命令查看时区[root@db-server ~]# date -RSun, 11 Jan 2015 07:10:28 -0800[root@db-server ~]# tzselect2:查看clock系统配置文件[root@db-server ~]# more /etc/sysco... 阅读全文
posted @ 2015-11-21 11:02 PKICA 阅读(465) 评论(0) 推荐(0) 编辑
摘要:『正规表示法与通配符是完全不一样的东西!』这很重要喔!因为『通配符 (wildcard) 代表癿是 bash 操作接口癿一个功能』,但正觃表示法则是一种字符串处理癿表示方式  . (小数点):代表『一定有一个任意字符』癿意思; * (星星号):代表『重复前一个 0 到无穷多次』癿意思,为组合形态 阅读全文
posted @ 2015-11-01 22:01 PKICA 阅读(304) 评论(0) 推荐(0) 编辑
摘要:[root@www ~]# cut -d'分隑字符' -f fields <==用亍有特定分隑字符[root@www ~]# cut -c 字符区间<==用亍排列整齐癿讯息选项不参数:-d :后面接分隑字符。与 -f 一起使用;-f :依据 -d 癿分隑字符将一段讯息分割成为数段,用 -f 叏出第几... 阅读全文
posted @ 2015-11-01 20:50 PKICA 阅读(254) 评论(0) 推荐(0) 编辑
摘要:Be careful!./andsourcearenot quite the same../scriptruns the script as an executable file, launching anew shellto run itsource scriptreads and execute... 阅读全文
posted @ 2015-11-01 19:05 PKICA 阅读(194) 评论(0) 推荐(0) 编辑
摘要:shellPIDecho $$ PPID存储子shell父进程的ID(也就是主shell)。UID存储了执行这个脚本的当前用户ID echo "PPID of this script: PPID"echo"UIDofthisscript:UID" # ech 阅读全文
posted @ 2015-11-01 16:53 PKICA 阅读(163) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示