您的位置:首页 > 运维架构 > Linux

linux进程和线程

2010-08-25 09:31 218 查看
进程:就是正在执行的程序

线程:(1)轻量级的进程(程序执行流的最小单元)

(2)进程有独立的地址空间,线程没有

(3)线程不能独立存在,它是由进程创立的

(4)相对讲,线程所费的CPU和内存小于进程

多线程下载的原理是这样的:通常服务器同时与多个用户连接,用户之间共享带宽。如果N个用户的优先级都相同,那么每个用户连接到该服务器上的实际带宽就是服务器带宽的N分之一。可以想象,如果用户数目较多,则每个用户只能占有可怜的一点带宽,下载将会是个漫长的过程。 如果你通过多个线程同时与服务器连接,那么你就可以榨取到较高的带宽了。例如原来有10个用户都通过单一线程与服务器相连,服务器的总带宽假设为56Kbps,则每个用户(每个线程)分到的带宽是5.6Kbps,即0.7K字节/秒。如果你同时打开两个线程与服务器连接,那么共有11个线程与服务器连接,而你获得的带宽将是56/11*2=10.2Kbps,约1.27K字节/秒,将近原来的两倍。你同时打开的线程越多,你所获取的带宽就越大(原来是这样,以后每次我都通过1K个线程连接:P)。当然,这种情况下占用的机器资源也越多。有些号称“疯狂下载”的下载工具甚至可以同时打开100个线程连接服务器。

查看系统中有哪些进程正在执行:ps -aux [这个命令看的比较全面,不过这个是静态的]

终止某一个进程:kill 进程号[如果不能直接结束,可使用kill -9 进程号]

查看系统中有哪些动态实时进程:top

监视特定用户:top—>u—>输入用户名即可

终止指令进程:top—>u—>输入进程ID号即可

指定系统状态更新时间:top—>-d 10 更新进程时间为10秒

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: