zoukankan      html  css  js  c++  java
  • 计算机基础篇之二

    目录

      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空间而已
    进程:
      就是运行程序的实例,它的生命周期就是程序的开始到结束。
    成功的背后都是汗水
  • 相关阅读:
    logging模块
    configparser模块
    hashlib模块
    shutil模块
    json与pickle模块
    random模块
    OS模块
    如何不使用共享内存实现windows与虚拟机中进行文件的传输
    结构体的定义方式(仅定义)
    数据结构练习之寻找顺序表中的主要元素
  • 原文地址:https://www.cnblogs.com/xiaofu89120/p/12041491.html
Copyright © 2011-2022 走看看