一个简单的例子描述,程序从执行到结束操作系统都做了什么

#include <stdio.h>
int main()
{printf("hello world");
}

操作系统
* 用户告诉操作系统执行hello程序
* 操作系统到硬盘找到该程序
* 由编译程序将用户源程序编译成若干个目标模块
* 由链接程序将目标模块和相应的库函数链接成装入模块
* 操作系统分配内存,由装入程序将装入模块装入内存
* 为执行hello程序创建执行环境(创建新进程)
* 操作系统设置CPU上下文环境,并跳到程序开始处
* 程序的第一条指令执行
* 程序执行与printf对应的系统调用
* 操作系统分配设备
* 执行显示驱动程序
* 窗口系统将像素写入存储映像区
硬件系统
* 视频硬件将像素表示转换成一组模拟信号控制显示器(重画屏幕)
* 显示器发射电子束
* 你在屏幕上看到hello world

计算机操作系统——程序执行的流程相关推荐

  1. 深入 JVM 字节码,解析类加载、链接、初始化、创建对象、对象初始化、程序执行的流程

    概述: 本文通过引入一道面试题来解析类加载.类链接.类初始化过程,以及创建创建对象.对象初始化和程序执行的过程. 你将收获: 1.精通类加载.类链接.类初始化过程 2.深入源码层面了解类初始化.对象初 ...

  2. 计算机操作系统重点知识点记录【持续更新】

    文章目录 第1章 计算机系统概述 1.1 操作系统基本概念 基本概念 例题 1.2 操作系统的发展与分类 基本概念 例题 1.3 操作系统的运行环境 基本概念 例题 1.4 操作系统的体系结构 基本概 ...

  3. 『操作系统』 进程的描述与控制 Part 1 前驱图与程序执行

    文章目录 2.1 前趋图和程序执行 2.1.1 程序的顺序执行及其特征 1. 程序的顺序执行 2.程序顺序执行时的特征 2.1.2 前趋图 2.1.3 程序的并发执行及其特征 1. 程序的并发执行 2 ...

  4. 计算机操作系统中程序的功能是,计算机操作系统的功能和分类研究

    摘 要:计算机操作系统是一种系统的体系,是计算机运行的核心,同时它精确的掌管着计算机软件,资源硬件,精确的管理着计算机的各项工作,组织计算机工作的各个重要的流程.随着时代的发展和科技的日新月异,计算机 ...

  5. 操作系统4小时速成:内存管理,程序执行过程,扩充内存,连续分配,非连续分配,虚拟内存,页面替换算法

    操作系统4小时速成:内存管理,程序执行过程,扩充内存,连续分配,非连续分配,虚拟内存,页面替换算法 2022找工作是学历.能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测 ...

  6. 计算机能直接执行的语言程序是,计算机能够直接执行的程序是什么语言

    可执行程序. 1.可执行程序(executable program,EXE File)是指一种可在操作系统存储空间中浮动定位的特殊程序.在MS-DOS和MS-WINDOWS下,此类文件扩展名为.exe ...

  7. 存储计算机当前正执行的应用程序,存储计算机当前正在执行的应用程序和相应的数据的存储器是什么...

    存储计算机当前正在执行的应用程序和相应的数据的存储器是什么 存储计算机当前正在执行的应用程序和相应的数据的存储器是"RAM".RAM是与CPU直接交换数据的内部存储器.它可以随时读 ...

  8. 用计算机编写的程序执行效率最高,全国计算机考试一级模拟试题

    全国计算机考试一级模拟试题 计算机一级分为DOS版和Windows版,考核应试者计算机基本知识和使用微机系统的初步能力.下面小编整理了全国计算机考试一级模拟试题,希望对大家有帮助! 选择题 1.在因特 ...

  9. scala语言的底层是java实现的_Scala学习笔记一(与Java、Jvm的关系以及程序执行流程分析)...

    一.Scala语言与Java.Jvm的关系分析 Scala语言是马丁奥德斯基接触Java语言后,针对Java语言的特点,将函数式编程语言的特点融合到Java中,由此发明的.Scala语言和Java语言 ...

  10. python代码执行过程记录_[原创]IDAPython+OdbgScript动态获取程序执行流程

    题记: 最近知道了有一种方法,可以获取到程序的执行流程,具体做法是先获取程序中每一个函数的地址,在这些地址上设置断点,然后让程序运行起来,hook调试器,断点中断时,不要停下来继续执行,并记录命中的断 ...

最新文章

  1. 多版本Python共存时pip给指定版本的python安装package的方法
  2. nebula-gql语句之时间差值计算
  3. JavaScript入门(part4)--简单数据类型
  4. 互联网基建成果,快速实现一个clubhouse要多久
  5. 技术专题:厦门9月30日限制路由(网络尖冰),WAYOS或ROS解决方案
  6. 当下流行的语音识别技术是不是发展错了方向?
  7. 全表行转列——动态SQL
  8. 求两个等长升序序列的中位数
  9. STM32串口调试一直打印 00 00
  10. Cinema 4D R25 for mac(c4d r25)快捷键分享
  11. Android Binder -- AIDL 原理
  12. 一年中最后一个月的最后一天说说_2020年最后一个月的朋友圈说说句子
  13. 马哥教育42期第二周作业
  14. 【CSS】尺寸和边框、盒子模型、外边距_02
  15. PhpStorm修改字体和主题
  16. vue keyup不起作用
  17. linux eclipse插件安装,Linux 下 EclipseME 插件的安装步骤
  18. 传遍朋友圈的Workflow,到底是什么鬼
  19. 孩子数学成绩不好怎么办_小孩子数学差怎么办
  20. 毕业之后所有面试总结

热门文章

  1. html div边框添加文字,css通过text-shadow给文字加边框!
  2. 不是人人都懂的学习要点
  3. shell 脚本-while用法
  4. 『危机领导力』告诉我们如何带好团队
  5. 2021年中国原油产量、需求量及石油原油行业发展趋势分析[图]
  6. 我在 GitHub 上发现了一个 狗屁不通 的Python开源项目...
  7. 员工工号怎么编码_人事档案编码怎么编
  8. 判断一个数是否为质数(素数)
  9. Java二叉树基础操作常见代码例题
  10. 关于git push报hook declined