请问老师,既然是先有C语言,再有的线程概念,那么C语言里面为啥会有线程相关的东西,比如例子中的pthread_t等等

来源:8-9 实现异步任务处理AsyncTask

慕婉清1577054

2020-10-16

写回答

1回答

咚咚呛

2020-10-16

这是一个很好的问题,线程是属于操作系统的概念。

我们先来回顾一下关键时间节点,1972年,贝尔实验室发明C语言,它是从B语言的基础上发展过来的。1970年,第一个UNIX系统诞生,1973年,使用C语言重写UNIX系统。

所以从时间节点上看,操作系统和C语言诞生的时间相差不多,没有绝对前后出现的区别,应该说是C语言和操作系统是相辅相成的出现和成熟的。而对于C语言和线程,线程是早于C语言提出的概念,其后UNIX系统由C语言重写,操作系统再提供了pthread_t的系统调用可以创建线程,因此这个系统调用是C语言的接口。所以C语言出现pthread_t相关的接口是合理的,C语言本身也是不断发展的。C语言实现了更完备的操作系统,操作系统再通过C语言开放出更高级的API接口。这是一个不断发展的过程,无法割裂来看待。

1
1
慕婉清1577054
非常感谢!
2020-10-16
共1条回复

(新版)计算机基础,计算机组成原理+操作系统+网络

编程之前先学这门课,系统补足计算机基础知识,夯实编程地基

7739 学习 · 1580 问题

查看课程