
linux
菜鸟磊子
这个作者很懒,什么都没留下…
展开
-
linux内核线程、轻量级进程、用户进程
linux内核线程、轻量级进程、用户进程转载 2016-08-19 23:19:20 · 591 阅读 · 0 评论 -
同步,阻塞
说到阻塞,首先得说说I/O等待。I/O等待是不可避免的,那么既然有了等待,就会有阻塞,但是注意,我们说的阻塞是指当前发起I/O操作的进程被阻塞 同步阻塞I/O便是指,当进程调用某些涉及I/O操作的系统调用或库函数时,比如accept()(注意accept也算在了i/o操作)、send()、recv()等,进程便暂停下来,等待I/O操作完成再继续运行。这是一种简单而有 效的I/O模型,它可以和多进原创 2016-09-12 19:26:41 · 510 阅读 · 0 评论 -
IO - 同步,异步,阻塞,非阻塞 (亡羊补牢篇)
自己一直对 同步,异步,阻塞,非阻塞模棱两可。对推荐这篇文章,有助于自己的理解!转载 2016-08-22 19:49:17 · 562 阅读 · 0 评论 -
python 多线程中的同步锁 Lock Rlock Semaphore Event Condition
在使用多线程的应用下,如何保证线程安全,以及线程之间的同步,或者访问共享变量等问题是十分棘手的问题,也是使用多线程下面临的问题,如果处理不好,会带来较严重的后果,使用python多线程中提供Lock Rlock Semaphore Event Condition 用来保证线程之间的同步,后者保证访问共享变量的互斥问题Lock & RLock:互斥锁 用来保证多线程访问共享变量的问题 Semapho转载 2016-08-21 02:14:08 · 4910 阅读 · 1 评论 -
linux开机出现一下错误Give root password for maintenance (or type Control-D to continue):
第一种错误的情况:由于错误的编辑/etc/fstab文件 而引起的不能正常进入系统。假如你将某一个分区或者磁盘最后一个参数设置为1或2时,系统默认会在开机过程中检查这个磁盘的扇区。假如系统检查不到这个磁盘,或者这个磁盘根本检测不到(尤其是在网络存储时)那么系统就会报错,导致出现这种情况。解决办法:输入root密码,此时整个文件系统是只读系统,不能进行修改文件,首先利用下面的命令将文件系统改为可写的文原创 2016-08-19 23:52:53 · 27913 阅读 · 1 评论 -
Linux内存管理(下)
虽然应用程序操作的对象是映射到物理内存之上的虚拟内存,但是处理器直接操作的却是物理内存。所以当用程序访问一个虚拟地址时,首先必须将虚拟地址转化成物理地址,然后处理器才能解析地址访问请求。地址的转换工作需要通过查询页表才能完成,概括的讲,地址转换需要将虚拟地址分段,使每段虚地址都作为一个索引指向页表,而页表项则指向下一级别的页表或者指向最终的物理页面。每个进程都有自己的页表。进程描述符号的pgd域指向原创 2016-08-19 23:51:18 · 412 阅读 · 0 评论 -
Linux内存管理(上)
摘要 本章首先以应用程序开发者的角度审视Linux的进程内存管理,在此基础上逐步深入到内核中讨论系统物理内存管理和内核内存地使用方法。力求从外自内、水到渠成地引导网友分析Linux地内存管理与使用。在本章最后我们给出一个内存映射地实例,帮助网友们理解内核内存管理与用户内存管理之间地关系,希望大家最终能驾驭Linux内存管理。 详见:http://www.cnblogs.com/h原创 2016-08-19 23:50:02 · 490 阅读 · 0 评论 -
gcc编译中常用参数: -I dir -L dir -w -Wall -On
1、-I dir 在头文件的搜索路径中添加目录dir目录。在include语句中“<>”表示在默认路径“/usr/include”和/usr/local/include中搜索头文件,引号“”表示在本目录下搜索。如果在即编写头文件,如果头文件位置与当前.c文件不在同一个目录,则就需要利用-I 头文件所在目录即可。2、-L dir gcc到系统默认的路径“/usr/lib”下查找库文件。头文件包含声明,原创 2016-08-19 23:45:23 · 2830 阅读 · 0 评论 -
Linux多线程中使用信号
在Linux的多线程中使用信号机制,与在进程中使用信号机制有着根本的区别,可以说是完全不同。在进程环境中,对信号的处理是,先注册信号处理函数,当信号异步发生时,调用处理函数来处理信号。它完全是异步的(我们完全不知到信号会在进程的那个执行点到来!)。然而信号处理函数的实现,有着许多的限制;比如有一些函数不能在信号处理函数中调用;再比如一些函数read、recv等调用时会被异步的信号给中断(inter转载 2016-08-19 23:35:46 · 466 阅读 · 0 评论 -
CPU亲和性(affinity)及与亲和性有关的两个函数 sched_setaffinity()和 sched_getaffinity()
转自: http://www.ibm.com/developerworks/cn/linux/l-affinity.html简单地说,CPU 亲和性(affinity) 就是进程要在某个给定的 CPU 上尽量长时间地运行而不被迁移到其他处理器的倾向性。Linux 内核进程调度器天生就具有被称为 软 CPU 亲和性(affinity) 的特性,这意味着进程通常不会在处理器之间频繁迁移。这种状态正是我们转载 2016-08-19 23:29:08 · 803 阅读 · 0 评论 -
python队列queue模块详解
队列queue 多应用在多线程应用中,多线程访问共享变量。对于多线程而言,访问共享变量时,队列queue是线程安全的。从queue队列的具体实现中,可以看出queue使用了1个线程互斥锁(pthread.Lock()),以及3个条件标量(pthread.condition()),来保证了线程安全。queue队列的互斥锁和条件变量,可以参考另一篇文章:python线程中同步锁queue的用法原创 2016-08-22 13:55:21 · 39131 阅读 · 1 评论