博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
计算机基础知识
阅读量:5940 次
发布时间:2019-06-19

本文共 999 字,大约阅读时间需要 3 分钟。

<!-- 2017/5/26 -->

一、异步阻塞

同步异步关注的是: 消息通信机制

阻塞非阻塞关注的是: 程序在等待调用结果时的状态

烧水例子:

  • 同步阻塞: 我用普通水壶烧水,坐等水开
  • 异步阻塞: 我用响水壶烧水,坐等水开,但水开时水壶有提醒
  • 同步非阻塞: 我用普通水壶烧水,然后去干其他事,时不时看看水有没有开
  • 异步非阻塞: 我用响水壶烧水,然后去干其他事,水开时水壶有提醒

二、进程线程

1、进程: cpu资源分配的最小单位,计算机中已运行程序的实体,是线程的容器,单个CPU一次只能运行一个进程

2、线程: cpu独立调度的最小单位

3、工厂例子

  • 工厂是CPU,承担所有计算任务
  • 进程是车间,代表cpu所能处理的单个任务,单个CPU一次只能运行一个进程
  • 线程是车间工人,一个进程包括多个线程,多个线程协同完成一个任务
  • 有些进程的内存空间是共享的,每个线程都能使用共享内存
  • 互斥锁,防止多个线程同时读写某一内存区域
  • 信号量,保证多个线程不会互相冲突

4、软件例子: 开了QQ,开了一个进程。QQ里传输文字开了个线程,弹出对话框开了个线程。

三、编译器

1、编译器概念: 是一种计算机程序,将某种编程语言写成的源代码(原始语言),转换成另一种编程语言(目标语言)

2、工作流程

源代码 -> 预处理器 -> 编译器 -> 汇编程序 -> 目标代码 -> 链接器 -> 可执行文件

source code->preprocessor->compiler->assembler->object code->linker->executables

3、32位CPU和64位CPU

指令集合,操作数位数,寄存器名称,寄存器个数都不同

但intel的x86-64cpu和amd的amd64能兼容32软件环境

4、并发,并行,分布式计算

  • 并发计算: 将一个计算任务,分区成几个小部分,让它们同时被计算,之后再汇整计算结果,以完成任务。是一种程序计算的形式。
    计算单元间的通信:(1)共享内存通信:java,c#; (2)消息传递通信:
  • 并行计算: 并发计算的程序在机器平台上同时被运行的状况,因此是机器运算的形式
  • 分布式计算: 是并行计算的特例,采用计算机网络来进行同步。把工程数据分区成小块,由多台计算机分别计算,将结果统一合并得出数据结论。大型多人在线游戏,对等网络,面向服务的体系架构。

四、参考文档

转载地址:http://jcqtx.baihongyu.com/

你可能感兴趣的文章
C语言中的随意跳转
查看>>
006-spring cloud gateway-GatewayAutoConfiguration核心配置-GatewayProperties初始化加载、Route初始化加载...
查看>>
WPF中如何将ListViewItem双击事件绑定到Command
查看>>
《聚散两依依》
查看>>
小tips:你不知道的 npm init
查看>>
Mac笔记本中是用Idea开发工具在Java项目中调用python脚本遇到的环境变量问题解决...
查看>>
Jmeter也能IP欺骗!
查看>>
Rust 阴阳谜题,及纯基于代码的分析与化简
查看>>
ASP.NET Core的身份认证框架IdentityServer4(4)- 支持的规范
查看>>
(原創) array可以使用reference方式傳進function嗎? (C/C++)
查看>>
STM32F103--(二) GPIO实践
查看>>
关于开源无线路由器的资料
查看>>
Oracle 分页
查看>>
170多个Ionic Framework学习资源(转载)
查看>>
Azure:不能把同一个certificate同时用于Azure Management和RDP
查看>>
Silverlight 控件的验证
查看>>
Directx11教程(15) D3D11管线(4)
查看>>
Microsoft Excel软件打开文件出现文件的格式与文件扩展名指定格式不一致?
查看>>
ios ble 参考
查看>>
[转]Pass a ViewBag instance to a HiddenFor field in Razor
查看>>