计算机基础篇之二

目录

  1.1 编程语言

    1)低级语言

    2)高级语言

  1.2 内核kernel

  1.3 程序

  1.4 进程

  1.5 cpu内存空间

1.1 编程语言

1)低级语言        #离机器越近语言
    #二进制机器指令
    #汇编语言             #ADD,R0,R1,ST...
2)高级语言        #离近人类越近的自然语言
    #编译型语言          #c,c++,go...
    #解释型语言          #c#,python,java,swift,basic...

1.2 内核kernel

  #是一个通用软件,运行在硬件上,不负责具体的工作,只是协调各个程序,将硬件资源所提供的硬件能力抽象成一个个系统调用(#system call),系统调用过于底层(由上层的程序员决定它的表现形式)
  #将底层系统调用再次封装成更高级的接口,这个高级接口就是库(library),库没有程序的执行入口,只能被调用(API  #Application Program Interface) #在面向库的编程时,应用程序写出来的程序接口叫API,如果编译成二进制格式,这个接口叫ABI(应用二进制接口)  #执行用户代码的机制叫"用户空间",用户空间发起的系统调用,执行内核代码的机制叫"内核空间"  (cpu运行在用户空间)

1.3 程序

#程序可以通过系统调用直接运行在内核上(执行效率更高,权限更大)也可以通过库调用来完成(使用库调用进行编程可能更简单)#程序必须有执行入口(#二进制文件开头处有一个特殊字符,可以标识这个二进制程序的执行格式,也称程序的魔数。如:"!/bin/bash")

1.4 进程

进程的创建
    #当运行"ls"命令时,就创建一个进程.
    #系统开机,先把内核代码放在cpu上运行,当内核接管一切后,就和硬件没关系了,内核负责启动进程,它会派出一个使者来管理进程,创建的第一个进程,该进程就叫初始化进程,后续用户空间的所有管理工作就右init这个使者来管。
    #进程分子进程,和子子进程...
    #父进程由fork自身而来,内核都有一个系统调用,叫fork.父进程,需要创建子进程时需要向内核发起请求,子进程不能脱离父进程,需要共享内存空间,子进程有自己的ID,子进程需要修改进程空间数据时,父进程就复制自己的一份数据给子进程,这时子进程就可以修改空间数据,这种进制叫cow
    #子进程由父进程销毁
    #子进程处理数据时,父进程以静默方式存在,等子进程执行完成时,子进程的使命也结束了,即退出。父进程继续执行其他任务

1.5 cpu内存空间

#cpu级别:#cpu有4个级别的保户机制(同心圆的4个环)
    #0级环,特权级别,只有内核才能运行在特权模式下
    #中间两环系统保留
    #其他应用程序运行在最外环,任何时候应用程序是不能访问内存中处于0级别的区域(CPU的0级别会映射给内存的某一段处于保护的空间当中)  #当多个jobs运行时,cpu会分割成多个时间片,当一个程序使用1S时,暂停(保户现场的机制)在处理第二个程序的1s,两个程序交替执行。#内存空间:  第一段:ROM,固化在主板上  第二段:载入内核(kernel space)  第三段:其他应用程序共享#虚拟地址空间:每一个程序运行时,都假设自己有一个虚拟地址空间,32位系统为4G,64位系统即"2^64",真实情况下,一个程序其实只占用几M空间而已进程:  就是运行程序的实例,它的生命周期就是程序的开始到结束。

原文地址:https://www.cnblogs.com/xiaofu89120/p/12041491.html

时间: 2024-07-30 06:26:15

计算机基础篇之二的相关文章

shell脚本编程之基础篇(二)

shell脚本编程之基础篇(二) ============================================================================== 概述: ============================================================================== 退出状态 ★进程使用退出状态来报告成功或失败 ◆0 代表成功,1-255代表失败 ◆$? 变量保存最近的命令退出状态 (查看:echo $?)

问道python之基础篇【二】python入门

问道python之基础篇[二] Python入门 1.python的工作过程 python解释器把源代码转换为字节码的中间形式,然后再把它翻译成机器使用的机器语言并运行. 2.pyc文件 2.1.什么是pyc文件 执行python代码时,如果导入了其他的.py文件,那么在执行过程中会自动生成一个与其同名的.pyc文件,该文件就是python解释器编译之后产生的字节码. ps:代码经过编译可以产生字节码:字节码通过反编译也可以得到代码. Pyc文件一般由3个部分组成: 最开始4个字节是一个Maig

小猪猪逆袭成博士之C++基础篇(二) 常量、处理类型、自定义头文件

小猪猪逆袭成博士之C++基础篇(二) const .auto. decltype 上一章我们介绍了一些常用的类型和常见的问题,下面再介绍一些学习的时候不是特别常用但是在实际工程中很有用的一些东西. 一.常量const 我们想要定义一种不能改变它的值的变量,我们就对这个变脸的类型加上限定符Const. Const 对象必须要初始化,并且它一旦创建了就不能改变,所以Const变量是只能出现在等号的右边的. 另外,在C11标准中会有一种Constexpr的类型来编译器验证变量的值是是否是一个常量表达式

python基础篇(二)

python基础篇(二) if:else,缩进和循环控制 A:if的基础格式和缩进 B:循环判断 C:range()函数和len()函数 D:break,contiue和pass语句 for,while循环 函数基础 A:函数的定义和返回值 B:返回值的三种情况 C:函数的注释 函数的进阶(命名空间和作用域) A:内置命名空间 B:全局命名空间 C:局部命名空间 D:全局作用域 E:局部作用域 F:函数的嵌套和作用域链. G:函数名的本质 闭包 ?一:if:else和缩进 A:if的基础格式和缩

计算机基础篇

一.为何要学习计算机基础? 好多人觉得自己有点基础就都想着直接敲代码,觉得基础知识很容易,很简单,就不怎么用心去学.然而,我觉得基础知识很重要.就像盖一栋楼房一样,你先要打好地基,再去盖房.  Python是一门编程语言,即通俗一点说就是语言. 我们都知道世界上有很多种语言,比如:汉语,英语,阿拉伯语等等众多的语言.要想用这些语言去和人沟通,如果你想和英国人说话,你必须得会英语吧.而我们的计算机也有它自己的语言,你要想让计算机帮助我们做事情,你就需要和它沟通吧.那你就得懂得计算机语言吧,也就是编

细节!重点!易错点!--面试java基础篇(二)

今天来给大家分享一下java的重点易错点第二部分,也是各位同学面试需要准备的,欢迎大家交流指正. 1.字符串创建与存储机制:当创建一个字符串时,首先会在常量池中查找是否已经有相同的字符串被定义,其判断的依据是String类型equals的返回值,若已经定义,则直接获取对其的引用.此时不需要创建新的对象,如果没有定义,首先创建这个对象,然后把它加入到字符串池中,再将它的引用返回.(例:new String(”aaa“)可能创建了1个或者2个对象,如果常量池中原来有aaa那么之创建了一个对象,如果没

python 基础篇(二)数据类型概述

正式进入python的学习. 数据类型可以分为身份,类型,数据项三项联合组成. 身份: id() 类型:type() 数据类型:int,boolean,tuple,string,dict,list 1.不可变类型:int,string,tuple,boolean 2.可变类型:dict,list. 可变不可变是指当前引用类型的数据项是否改变 所有的id都是唯一的. 不需要提前定义,是动态类型. 一.变量的赋值都是引用,id()表示的后面的引用,我们以boolean为例 可以看出id变了,事实上a

【微服务架构】SpringCloud之Eureka(服务注册和服务发现基础篇)(二)

上篇文章讲解了SpringCloud组件和概念介绍,接下来讲解一下SpringCloud组件相关组件使用.原理和每个组件的作用的,它主要提供的模块包括:服务发现(Eureka),断路器(Hystrix),智能路有(Zuul),客户端负载均衡(Ribbon),Archaius,Turbine等  今天学习的是Eureka即注册中心 一:Eureka简介 Eureka是Spring Cloud Netflix的一个子模块,也是核心模块之一.用于云端服务发现,一个基于REST的服务,用于定位服务,以实

python开发基础篇(二)

python数据类型 1 什么是数据? x=10,10是我们要存储的数据 2 为何数据要分不同的类型 数据是用来表示状态的,不同的状态就应该用不同的类型的数据去表示 3 数据类型 数字(整形,长整形,浮点型,复数) 字符串 字节串:在介绍字符编码时介绍字节bytes类型 列表 元组 字典 集合 4 按照以下几个点展开数据类型的学习 #一:基本使用 用途 定义方式 常用操作+内置的方法 #二:该类型总结 存一个值or存多个值 只能存一个值 可以存多个值,值都可以是什么类型 有序or无序 可变or不