当前位置: 首页 > news >正文

【ARM嵌入式汇编基础】- 操作系统基础(二)

操作系统基础(二)

文章目录

  • 操作系统基础(二)
    • 6、线程
    • 7、进程内存管理
    • 8、内存页
    • 9、内存保护
    • 10、匿名内存和内存映射内存
    • 11、内存映射文件和模块

6、线程

程序首次启动时,会创建一个新进程,并为该程序分配一个线程。该初始线程负责初始化进程并最终调用程序中的主函数。多线程程序可以请求向进程添加其他线程来处理后台工作。例如,多线程 Web 应用服务器可能会为每个传入请求使用一个线程,以防止长时间运行的请求阻塞其他用户访问网站。

进程始终至少有一个线程。当进程中的最后一个线程完成时,该进程将退出。查看程序内部线程的一种方法是通过 top11 程序,该程序使用语法 top –H –p 。例如,图 6.1 显示了程序 rsyslogd 内部正在运行的线程。

在这里插入图片描述

图6.1:正在运行的线程

每个线程独立运行代码,逻辑上就像一个独立的处理器核心一样运行。每个线程都有自己的一组处理器寄存器和处理器状态,包括自己的程序计数器、堆栈指针和算术标志,以及自己内部管理的局部变量和调用堆栈。但请注意,与进程不同,线程彼此之间并非隔离。每个线程的代码和数据都加载到同一个进程中,尽管编程约定通常规定一个线程不应直接干扰另一个线程的私有数据,

http://www.dtcms.com/a/271141.html

相关文章:

  • JSP数据交互
  • php绘图添加水印,文字使用imagick库的操作
  • Docker 高级管理-容器通信技术与数据持久化
  • C语言结构体对齐
  • SpringCloud系列 - xxl-job 分布式任务调度 (七)
  • 链表和数组和列表的区别
  • 力扣网编程150题:加油站(贪心解法)
  • Origin将Y偏移图升级为双Y轴3D瀑布图
  • SAP-ABAP:SAP中‘SELECT...WHERE...IN’语句IN的用法详解
  • 想要抢早期筹码?FourMeme专区批量交易教学
  • Cadence模块复用
  • SQL 视图与事务知识点详解及练习题
  • 基于Spring Boot+Vue的巴彦淖尔旅游网站(AI问答、腾讯地图API、WebSocket及时通讯、支付宝沙盒支付)
  • 等价矩阵和等价向量组
  • JavaScript基础篇——第五章 对象(最终篇)
  • 深度学习模型在C++平台的部署
  • 优化 FLUX.1 Kontext 以进行低精度量化的图像编辑
  • Flowable17错误事件---------------持续更新中
  • ali linux 安装libreoffice
  • Linux 系统 docker 部署 Dify
  • Airtest 的 Poco 框架中,offspring()
  • 【网络】Linux 内核优化实战 - net.ipv4.tcp_ecn
  • Protable 问题记录
  • 【RK3568+PG2L50H开发板实验例程】FPGA部分 | ROM、RAM、FIFO 的使用
  • 使用DDR4控制器实现多通道数据读写(十九)
  • 通过Tcl脚本命令:set_param labtools.auto_update_hardware 0
  • 闲庭信步使用图像验证平台加速FPGA的开发:第六课——测试图案的FPGA实现
  • 闲庭信步使用图像验证平台加速FPGA的开发:第七课——获取RAW图像
  • RAM带宽计算及分析
  • 双esp8266-01s间TCP通讯