`
gelongmei
  • 浏览: 197283 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

hello world程序执行过程

阅读更多
以linux系统为例
hello world程序执行过程
在linux系统终端中输入一条命令:echo hello world! 显示字符”hello world!”
用户在输入echo hello world!时,shell程序会将键盘输入的每一个字符逐一读入CPU寄存器中,然后再保存到主存储器中,在主存储器中形成字符串”echo hello world!”,当按下Enter键时,shell将调出linux系统的API接口函数”echo”,hello、world!作为echo函数的参数被使用,此时系统通过80端口:int 80产生一个软中断,由父进程通过fork(),创建一个子进程,需要申请空白PCB,为进程分配所需的资源,并初始化PCB,将其加入就绪队列。当该进程的时间片到达时,操作系统设置CPU上下文环境,并跳到程序开始处。
linux系统采用页式存储管理,程序的第一条指令执行,失败,缺页中断发生,此时操作系统需要分配一页内存,并通过软终端的方式调用磁盘驱动程序将代码从磁盘读入,读入之前需要保存现场,中断完成恢复现场,linux将外设认为是文件,数据将通过读接口调入内存。以后发生更多的缺页中断,读入更多的页面,若命中则无需产生中断。字符的显示同样需要系统调用,产生中断,调用设备驱动程序。将字符发送到窗口系统的缓冲区,告诉窗口系统它要显示字符串,窗口系统将字符串转成像素,写入存储映像区,视频硬件将成像素表示转换成一组模拟信号,接下来我们就能看到输出的hello world了
分享到:
评论

相关推荐

    Hello world程序

    Hello world程序 Hello world程序 Hello world程序 Hello world程序 Hello world程序 Hello world程序

    helloworld程序过程文件

    helloworld.c编译为可执行文件helloworld的过程文件 helloworld.c helloworld.i helloworld.s helloworld.o helloworld

    编写 hello world web 程序

    • 在命令行打印 hello world! 字符 //mkdir nodejs-demo //cd nodejs-demo // https://sample.wangding.in/nodejs/tern-project //mv tern-project .tern-project //mkdir 01-introduction //touch 01-hello-world....

    hello world 程序

    hello world 程序 hello world 程序 hello world 程序 hello world 程序 hello world 程序

    linux环境下用makefile编译简单的helloworld程序

    linux环境下用makefile编译简单的helloworld程序,里面有详细的编译步骤,有写makefile文件时需要注意的一些细节,读者只需按照说明,按部就班地执行就可以成功,欢迎下载!

    认识Android入门的HelloWorld程序

    本文目标有二:一是讲解从Android Studio角度看,一个Android应用程序的项目由哪几部分构成;二是剖析程序是怎么运行的。

    深入浅出hello world

    从一个简单的hello,world程序开始,经过预处理、编译、汇编、链接、加载各个步骤详细介绍程序从编辑到执行的过程。深入的讲解了linux下程序的编译过程,并且讲解了linux kernel系统调用的相关知识。

    Java零基础 - HelloWorld程序.md

    本文详细介绍了Java零基础的HelloWorld程序的源码和运行过程。通过学习本文,您将了解以下内容: HelloWorld程序的基本结构和语法; 如何编写和运行简单的Java程序; 如何使用System.out.println方法输出文本信息。...

    一个HelloWorld界面程序例子

    一个HelloWorld界面程序例子,关于界面设计的,通过学习来提升自己

    Java语言简介+JDK安装+配置+第一个程序HelloWorld编译运行

    Java语言简介+JDK安装+配置+第一个程序HelloWorld编译运行

    Java开发-HelloWorld程序源码

    只要java程序配置完之后即可运行此源码

    MDK5.15版本的HelloWorld

    这是我自己在MDK5.15环境写的一个STM32F103RCT6运行的HelloWorld程序,用的固件库版本是V3.5.0。固件库也包含在里面。使用的串口是USART1。分享给大家,希望可以为大家节省一点开发时间。

    android实战 开发HelloWorld程序(android studio源程序工程)

    包括Android 移动开发基础案例教程课本中第一章实战演练——开发HelloWorld程序的源代码,可用Android studio运行,适合初学者学习。

    HelloWorld.java

    java编写的helloword程序。通过javac命令编译文件,然后通过java HelloWorld运行即可

    Java最开始的helloworld

    Java最开始的Hello World程序是一个简单的输出语句,用于展示Java程序的基本结构和语法。以下是一个经典的Java Hello World程序的示例代码: public class HelloWorld { public static void main(String[] args) {...

    Android手机上的HelloWorld程序源代码

    不懂你是ASP/PHP或是VB/VC,如果你看一些与此相关的专业书籍的话,几乎都会说到HelloWorld程序,带你领略各自编程语言的艺术殿堂。本代码是与Android手机编程有关的,运行于Java环境,最近Android手机软件开发搞的很...

    CORBA Hello World 实例

    CORBA的入门级实例代码,Hello World程序。 包括CORBA的一般开发书写过程以及执行步骤(简单英文)。

    并行编程简单的MPI编程hello world

    基于vs2010环境编写的并行编程简单的MPI编程hello world

    QT初学 第二课时 编写helloworld

    2.1 编写HelloWorld程序(第1课时) 2.2 程序的运行与发布(第1课时) 2.3 helloworld程序源码与编译过程详解(第2课时) 2.4 项目模式和项目文件介绍(第2课时) 2.5 小结(第2课时)

    OSGi HelloWorld实例

    采用OSGi框架设计 一个简单的HelloWorld程序 在EclipseSDK中运行

Global site tag (gtag.js) - Google Analytics