在Linux中进程用结构体task_struct来管理一个进程所需的所有信息(所以一般较大,在32位机上,大约有1.7KB)。为了提高效率,Linux使用了一些卓越的技术。
通过slab分配task_struct结构
Linux创建进程迅速,正是因为slab分配器预先分配和重复使用task_struct,这样就避免了动态分配和释放所带来的资源消耗(毕竟一个task_struct较大,而...
分类:
系统相关 时间:
2014-06-15 12:15:30
阅读次数:
374
1无名管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。2.高级管道(popen):将另一个程序当做一个新的进程在当前程序进程中启动,则它算是当前程序的子进程,这种方式我们成为高级管道方式。3有名管道 (nam...
分类:
其他好文 时间:
2014-06-14 18:18:58
阅读次数:
142
localhost:50030/jobtracker.jsplocalhost:50060/tasktracker.jsplocalhost:50070/dfshealth.jsp1. NameNode进程 NameNode节点进程 – 运行在端口9000上INFO org.apache.hadoo...
分类:
其他好文 时间:
2014-06-14 15:11:04
阅读次数:
350
为了提高效率,稍微复杂一些的操作系统对文件的读写都是带缓冲的,Linux当然也不例外。所谓缓冲,就是操作系统为最近刚读写的文件内容在内核保留一份副本,以便当再次需要已经缓冲存储在副本中的内容时就不必再临时从设备上读入,而需要写的时候则可以先写到副本中,待系统较为空闲的时候再从副本写入设备。在多进程的系统中,由于同一个文件可能为多个进程所共享,缓冲的作用就更为显著。
然而,怎么样实现缓冲,在哪一个...
分类:
其他好文 时间:
2014-06-14 14:12:26
阅读次数:
226
-- 1. 查看被锁的表
SELECT p.spid, a.serial#, c.object_name, b.session_id, b.oracle_username,b.os_user_name
FROM v$process p, v$session a, v$locked_object b, all_objects c
WHERE p.addr = a.paddr
AND a.p...
分类:
数据库 时间:
2014-06-14 12:55:33
阅读次数:
256
多进程和多线程的目的是在于最大限度地利用CPU资源,当mou...
分类:
系统相关 时间:
2014-06-14 10:11:38
阅读次数:
402
昨天解了个bug,关于文件描述符的,这种问题很久之前也遇到过,这次再犯真的不该。
问题是这样的。
fopen()打开一个文件,然后做了一些操作,然后函数执行结束。。。没有调用fclose()导致了,再执行此函数时,系统提示,文件描述符分配完毕。
分析了下:
根据以前的知识储备,
1.linux打开文件描述符的最大个数为1024,根据这次发现,
2.这是针对于单独进程的,
...
分类:
系统相关 时间:
2014-06-14 09:14:13
阅读次数:
354
YY的音频数据传输是P2P协议,音频的编码为AAC,下面抓去的音频编码的信息和频谱信息。音频编码为AAC,采样为44K,码率24kb/s。音频编码在24kb/s码率能达到15K的音质。值得大家学习啊。1.准备工具procexp.exe 分析YY的进程信息Procmon.exe 分析YY的网络数据包....
分类:
其他好文 时间:
2014-06-14 08:51:29
阅读次数:
524
iOS开发多线程网络———多线程概念及GCD一.多线程的概念1.什么是进程? a.正在进行中的程序被称为进程,负责程序运行的内存分配 b.每一个进程都有自己独立的虚拟内存空间2.什么是线程? a.线程是进程中一个独立的执行路径(控制单元) b.一个进程中至少包含一条线程,即主线程 (在i...
分类:
移动开发 时间:
2014-06-14 08:45:18
阅读次数:
357
Linux内核编译完整过程通过网上的资料我自己的实际内核编译,我把对Linux内核编译的过程写在这里,也许对其他的Linux爱好者的编译学习有些帮助,其中很大部分是网上的资料,另外就是我在实际编译过程中的一些实际经验。内核简介内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件...
分类:
系统相关 时间:
2014-06-14 08:35:00
阅读次数:
368