易截截图软件、单文件、免安装、纯绿色、仅160KB

linux多线程学习(一)

 进程是系统中程序执行和资源分配的基本单位。每个进程都有自己的数据段,代码段和堆栈段,这就导致了进程在进行切换等操作起到了现场保护作用。但是为了进一步减少处理机的空转时间支持多处理器和减少上下文切换开销,进程演化中出现了另外一个概念,这就是线程,也被人称为轻量级的进程。它是一个进程内的基本调度单位。线程是在共享的内存空间中并发的多道执行路径,它们共享一个进程的资源,比如文件描述符和信号处理等。因此, 大大减少了上下文切换的开销。
线程跟进程一样,都拥有一张控制表,线程将相关的变量值放在线程控制表中。一个进程可以拥有一个或者一个以上的线程,也就是有多个线程控制表和堆栈寄存器。但是它们是共享一个内存空间的,这就导致了每个线程的操作都会影响到其他线程。所以线程的同步是非常重要的。
线程可分为用户级线程和核心级线程。
(1)用户级线程主要是解决上下问切换的问题,它的调度算法和调度过程都是用户自己选择决定的,在运行时并不需要特定的内核支持,操作系统都会提供一个库函数,包括对线程的创建、调度、撤销的等功能。而内核仍然度进程进行管理。如果一个进程中的一个线程调用了阻塞的系统调用,那么该进程和该进程中的的其他线程都会被阻塞,这就无法发挥多处理器的优势。
(2)核心级线程是允许不同进程中的线程按照同一相对优先调度方法进行调度。这样就可以充分发挥多处理器的作用。
现在大多数系统都是采用用户级和核心级相结合的方法,一个用户级线程可以对应一个或者一个以上的核心级线程,这样既可以满足多处理机系统的需要,也可以最大限度的减少了调度开销。
在Linux的发展历程中,在方开始,并不真正意义上的支持线程,到出现一对一的线程模型(一个用户级线程对应一个内核级线程),再到如今的NPTL,有了很大的改进,但是仍然采用的是一对一的线程模型。


相关文档:

实战Linux Bluetooth编程(三) HCI层编程

1. HCI层协议概述:
HCI提供一套统一的方法来访问Bluetooth底层。如图所示:
从图上可以看出,Host Controller Interface(HCI)  就是用来沟通Host和Module。Host通常就是PC, Module则是以各种物理连接形式(USB,serial,pc-card等)连接到PC上的bluetooth Dongle。
在Host这一端:application,SDP,L2cap等协议 ......

linux 解压与打包

 .tar
解包: tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(注:tar是打包,不是压缩!)
---------------------------------------------
.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
.tar.gz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName ......

linux下vi命令大全

linux下vi命令大全
默认分类   2009-04-12 14:59   阅读1663   评论2  
字号: 大大  中中  小小
文本编辑器是所有计算机系统中最常用的一种工具。使用最为广泛的是vi,而vi命令繁多,各大论坛基本上都有总结!为了大家学习方便,请自由转发!   &nb ......

深入理解linux内核笔记六:linux系统调用

一般情况下,进程不能存取系统内核的,只有系统调用是一个例外,在intel结构的计算机中,是通过中断0x80实现的
进程可以可以跳转到内核中的位置是system_call。在此检查系统调用号,它告诉内核进程请求何种服务,然后查找系统调用表sys_call_table,找到希望调用的内核地址函数,调用此函数,然后返回。
  &nbs ......

Linux网络基本网络配置

 网络信息查看
查看网路接口信息
1.了解linux中的网络接口设备
$/sbin/ifconfig                               查看所有活动网络接口信息,其中包括一个lo环回端口。
2.查看指定网络接口的信息
$/sbin/ ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号