Skip to content

mazamu/my_thread

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

my_thread

c语言模拟实现用户态线程介绍

项目实现内容:

为模拟线程的上下文切换,在线程结构体中定义了栈指针和栈,在switch.s模拟了线程的压栈、弹栈操作。

为实现线程的自动切换,添加了时间片轮转调度算法。

为增强代码可读性,对部分代码进行封装。

为实现线程间同步与互斥,在目录origin的基础上,在目录after里,实现了信号量,其中的原子操作来源于GCC的函数。

并在目录after/pc里用生产者-消费者例子检验用户态线程和信号量的。

debug_log下是一些分析用的反汇编代码的记录。

使用教程

linux环境(ubuntu16.04,32位) 机器为win10 + VMware。

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published