您的位置:首页 > 理论基础

计算机和操作系统基础知识

2018-08-26 20:32 363 查看

-----------------------siwuxie095

   

   

   

   

   

   

   

   

计算机和操作系统基础知识

   

   

1、操作系统(Operating System,简称 OS),是管理计算机硬件与

软件资源的计算机程序,同时也是计算机系统的内核与基石

   

操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、

控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统

也提供一个让用户与系统交互的操作界面

   

   

   

   

   

2、操作系统位于底层硬件与用户之间,是两者沟通的桥梁。用户可以

通过操作系统的用户界面,输入命令。操作系统则对命令进行解释,驱

动硬件设备,实现用户要求。以现代标准而言,一个标准PC的操作系统

应该提供以下的功能:

   

(1)进程管理(Processing management)

   

(2)内存管理(Memory management)

   

(3)文件系统(File system)

   

(4)网络通信(Networking)

   

(5)安全机制(Security)

   

(6)用户界面(User interface)

   

(7)驱动程序(Device drivers)

   

   

   

   

   

3、指令集架构(Instruction Set Architecture,简称 ISA),又称指令

集 或 指令集体系,是计算机体系结构中与程序设计有关的部分,包含了

基本数据类型,指令集,寄存器,寻址模式,存储体系,中断,异常处理

以及外部 I/O

   

指令集架构包含一系列的 opcode 即操作码(机器语言),以及由特定

处理器执行的基本命令

   

   

   

   

   

4、指令是由指令集架构定义的单个的 CPU 操作。在更广泛的意义上,

指令可以是任何可执行程序的元素的表述,如:字节码

   

指令分为特殊指令和普通指令,只有操作系统才能运行特殊指令(也称

特权指令),应用程序只能运行普通指令。应用程序要想运行特殊指令,

必须通过系统调用

   

   

   

   

   

5、两种调用:

   

(1)系统调用(System Call)

   

(2)库调用(Library Call)

   

   

   

   

   

6、两种用户界面(User Interface,简称 UI):

   

(1)图形用户界面(Graphical User Interface,简称 GUI)

   

(2)命令行界面(Command Line Interface,简称 CLI)

   

   

   

   

   

7、两种接口:

   

(1)应用二进制接口(Application Binary Interface,简称 ABI),它描述

了应用程序(或者其他类型)和操作系统之间或其他应用程序的低级接口

   

(2)应用编程接口(Application Programming Interface,简称 API),

它就是软件系统不同组成部分衔接的约定,即 是操作系统 或 库提供给应用

程序调用使用的代码

   

   

ABI 不同于 API,API 定义了源代码和库之间的接口,因此同样的代码可以

在支持这个 API 的任何系统中编译,然而 ABI 允许编译好的目标代码在使

用兼容 ABI 的系统中无需改动就能运行

   

   

   

   

   

8、操作系统分类

   

(1)Windows

   

   

(2)Unix-like(类 Unix)

   

1)Linux

   

2)Minix

   

3)macOS(macOS 的由来:从 Mac OS X,改为 OS X,再改为 macOS。

截止 2018/08/26,再未变动)

   

   

(3)Unix

   

1)Unix System(截止 2018/05/31,最新版是 Unix System V Release 4,

包含 AIX、Solaris、HP-UX 等)

   

2)BSD Unix (分为三种:FreeBSD、NetBSD、OpenBSD)

   

「简单来说,分为 System(嫡出) 和 BSD(庶出)」

   

   

   

附:

   

关于 macOS 到底是 Unix 还是 Unix-like,这个问题一直存在争议,不过争论

这个意义不大,这里姑且认为 macOS 是 Unix-like,参考链接:

   

(a)https://zh.wikipedia.org/zh-cn/Darwin_%28%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%29

   

(b)https://zh.wikipedia.org/wiki/MacOS#Unix%E8%AA%8D%E8%AD%89

   

(c)https://blog.hoppinglife.com/2014/02/mac-os-x%E4%B8%8D%E6%98%AFunix/

   

   

   

   

   

9、程序运行空间:

   

(1)内核空间(Kernel Space):内核、核心扩充、驱动程序运行在内核空间上

   

(2)用户空间(User Space):应用程序运行在用户空间上

   

「运行空间(Space)也可以理解为运行模式(Mode)」

   

   

   

   

   

10、可移植操作系统接口(Portable Operating System Interface,

简称 POSIX),是 IEEE 为要在各种 UNIX 操作系统上运行软件,而

定义 API 的一系列互相关联的标准的总称

   

「最后一个 X 表明了其对 Unix API 的传承」

   

   

   

   

   

11、两种格式:

   

(1)可移植可执行(Portable Executable),也就是 PE 格式,是一种用

于可执行文件、目标文件和动态链接库的文件格式,主要使用在 Windows

操作系统上

   

PE文件格式主要用于EXE文件、DLL文件、.sys(驱动程序)和其他文件

类型

   

(2)可执行和可链接格式(Executable and Linkable Format),也就是

ELF 格式,是一种用于可执行文件、目标文件、共享库和核心转储的标准文

件格式

   

不同操作系统上应用程序和库的格式

   

  

应用程序格式

Windows

PE格式(Portable Executable)

DLL(Dynamic Link Library),动态链接库

Linux/Unix

ELF格式(Executable and Linkable Format)

SO(Shared Object)

   

   

   

   

   

12、计算机的五大组成:

   

运算器、控制器、存储器、输入设备、输出设备

   

   

   

   

   

13、六种开源协议的异同如下图所示:BSD、Apache、GPL、LGPL、MIT、Mozilla

   

   

   

参考链接:

   

(1)https://www.geek-share.com/detail/2653200740.html

   

(2)https://www.geek-share.com/detail/2728812262.html

   

(3)https://www.geek-share.com/detail/2482254800.html

   

(4)https://zhuanlan.zhihu.com/p/38409620

   

(5)https://zhuanlan.zhihu.com/p/31881162

   

(6)http://www.gnu.org/licenses/license-list.html

   

   

   

   

   

   

   

   

【made by siwuxie095】

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: