计算机系统

万能的hello程序,他就是一段代码?由C语言写成,它运行时,系统发生了什么?

#include<stdio.h>

int main()
{
    printf("hello world\n");
    return 0;
}

程序员通过编译器创建并保存文件,文件名为hello.c

实际上这个文件就是一串0和1组成的信息,它的8个位组成一组,叫字节,每个字节表示文本中的一个字符。这一串01组成的信息可以用二进值表示十进制的数字,而ASCII码将数字对应到字符上,这里字符就表示数字、字母、特殊符号等等。例如“#”就是用ASCII值35表示的。这就是为什么说计算机是0和1的世界,所有数据的源都是靠0和1表示的。

有了程序文件,是不是就可以执行了囔?似乎是这样,其实是它需要经过一系列步骤,才能让计算机执行,这些步骤就称为编译过程。编译过程由预处理器、编译器、汇编器和连接器四个阶段构成。

hello.c源程序经过上述阶段称为可执行目标文件hello,并被存放在磁盘上。

系统的硬件组成:

  • 总线:信息的“高速公路”,一组电子管道,传递各个部门的信息。
  • I/O设备:键盘、鼠标、显示器、磁盘等。通过一个适配器连接总线。
  • 主存:一组动态随机存取存储器(DRAM)芯片组成的。
  • 处理器CPU:中央处理单元,执行指令的核心硬件,其中包括ALU逻辑单元。

存储器层次结构:

操作系统两个基本功能:(1)防止硬件被失控的应用程序滥用;(2)向应用程序提供简单一致的机制来控制复杂的不同的硬件设备。

进程:进程是操作系统对一个正在运行的程序的一种抽象。

线程:一个进程由多个线程的执行单元组成。

上面概念是主要内容,还有并发和并行,有兴趣可以了解。

本文大部分内容来自于经典计算机书籍《深入理解计算机系统》

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值