社区
Linux_Kernel
帖子详情
Linux的线程和windows 有什么区别?
lmyuanhang
2006-03-03 08:34:41
Linux的线程和windows 有什么区别?
...全文
157
6
打赏
收藏
Linux的线程和windows 有什么区别?
Linux的线程和windows 有什么区别?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lmyuanhang
2006-03-03
打赏
举报
回复
操作系统运行程序时,不是先调用进程的么,
那怎么样去调线程啊?
lmyuanhang
2006-03-03
打赏
举报
回复
这样,除了,占有资源外,L inux的进程和线程就没有分别了啊
lmyuanhang
2006-03-03
打赏
举报
回复
在Linux 下,而不再细分去在一个进程中调度每一个线程,把线程也当作一个独立的调度单元来实现的
那又是什么去调线程的呢?
tb01412
2006-03-03
打赏
举报
回复
只是一个形容词而已,一般说来一个进程本身需要很多描述信息的,它本身要占用很多资源,而线程却相对占用的资源较少,这也是操作系统为何要使用线程概念的一个原因(当然不是主要原因),因为多个线程可以共享进程的资源!!!!
一般说来操作系统以进程为调度单元,也就是时间片轮转采用进程为一个单元,然后再在每个进程中再来调度每个线程,这是一般的线程调度的概念与实现!!
而在LINUX下,却采用了另一种方案,同样以进程为调度单元,而不再细分去在一个进程中调度每一个线程,把线程也当作一个独立的调度单元来实现的,并且每个线程也拥有一个进程控制块(如同进程一样),所以在LINUX下的线程从这个意义上说不再是一个“真正”的线程,又由于在LINUX下线程的资源共享却一样采用了与进程共享全局变量,共享代码空间,它所占用的资源又较少!!!所以一种比较形象的说法称为“轻进程”,不过这种说法倒比较接近实际
lmyuanhang
2006-03-03
打赏
举报
回复
轻量级进程是什么?
tb01412
2006-03-03
打赏
举报
回复
在应用层看来,没有什么区别,但是在实现方式以及提供的API来说差别很大!!!!
首先是线程函数名完全不同!!!!与线程相关的锁等API都不一样,这方面是完全不同的
然后,在LINUX下线程是一种轻量级进程,也就是说它与进程在被CPU调度时是同等的,而在WINDOWS下,线程是属于进程中的一个单元,而不是同等地位。
在LINUX下,线程共享了全局变量,函数,不共享堆栈而已。
c/c++ 记录日志,支持
windows
和
linux
,支持多
线程
打日志用的,经过了
windows
和
linux
下的测试,支持多
线程
,附上了实例,此实例在
windows
下运行只要加到win32控制台程序里就行了,记得去掉预编译头,在
linux
下测试,只要make 就行了,makefile已经在压缩包里了
linux
多
线程
编程入门
linux
多
线程
编程入门
线程
(thread)技术早在60年代就被提出,但真正应用多
线程
到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持
线程
的概念,但是在一个进程(process)中只允许有一个
线程
,这样多
线程
就意味着多进程。现在,多
线程
技术已经被许多操作系统所支持,包括
Windows
/NT,当然,也包括
Linux
。 为什么有了进程的概念后,还要再引入
线程
呢?使用多
线程
到底有哪些好处?什么的系统应该选用多
线程
?我们首先必须回答这些问题。
Qt多
线程
串口通信源码
采用Qt4.6.2编写的
linux
系统下的开源串口通信程序。使用开源的posix_qextserialport类
windows
与
linux
线程
,
Linux
和
Windows
两种风格的操作系统,创建
线程
的方式有何不同?...
上一节从C语言源代码层面较为详细的讨论了
Linux
创建进程的过程,其实就是创建进程运行所需的内存空间,填充描述进程的 task_struct 结构体,以及加载进程的程序而已。
Linux
是如何创建
线程
的呢?
Linux
内核并无专门创建
线程
的机制我们之前提到,
Linux
并不特殊对待
线程
,在
Linux
看来,
线程
不过就是一种特殊的进程而已。那么,
Linux
是如何创建
线程
的呢?
线程
机制是大多数现代编程语言都...
Linux
线程
(
Linux
和
Windows
的
线程
区别
、
Linux
的
线程
函数、互斥、同步)
**
线程
的概念**: **
线程
是 CPU 调度的基本单位**。它被包含在进程之中,**是进程中的实际运作单位**。一条
线程
指的是进程中一个单一顺序的控制流,一个进程中可以并发多个
线程
,每条
线程
并行执行不同的任务。 **
线程
和进程的
区别
**: 1.
线程
是 CPU 调度的基本单位,而进程(内核角度)是承担分配系统资源的基本实体。 2.
线程
和进程最大的
区别
是,
线程
之间共用一个地址空间,而进程的地址空间彼此独立。
Linux_Kernel
4,465
社区成员
17,462
社区内容
发帖
与我相关
我的任务
Linux_Kernel
Linux/Unix社区 内核源代码研究区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章