操作系统

 什么是操作系统

  ♦OS: Operating System,通用目的的软件程序

  • 硬件驱动    
  • 进程管理
  • 内存管理
  • 网络管理
  • 安全管理
  • 文件管理

♦OS分类:

  服务器OS:RHEL,CentOS,Windows Server,AIX

  桌面OS:Windows 10,Mac OS,Fedora

  移动设备OS:Andriod,IOS,AliOS

interface

  接口:interface,来源于电气工程学科,指的是插座与插头的连接口,起到将电与电器连接起为的功能。后来延伸到软件工程里指软件包向外提供的功能模块的函数接口。所以接口是用来连接两个东西、信号转换和屏蔽细节
  操作系统通过接口的方式,建立了用户与计算机硬件的沟通方式。用户通过调用操作系统的接口来使用计算机的各种计算服务。
  为操作系统一般会提供两个重要的接口来满足用户的一些一般性的使用需求:
  命令行:实际是一个叫shell的终端程序提供的功能,该程序底层的实质还是调用一些操作系统提供的函数
  窗口界面:窗口界面通过编写的窗口程序接收来自操作系统消息队列的一些鼠标、键盘动作,进而做出一些响应

开发接口标准

  ABI: Application Binary Interface

  ABI描述了应用程序与OS之间的底层接口,允许编译好的目标代码在使用兼容ABI的系统中无需改动就能运行

  API:Application Programming Interface

  API定义了源代码和库之间的接口,因此同样的源代码可以在支持这个API的任何系统中编译

  POSIX: Portable Operating System Interface 可移植的操作系统接口

    IEEE在操作系统上定义的一系列API标准

    POSIX兼容的程序可在其它POSIX操作系统编译执行

用户态和内核态

  计算机硬件资源都是操作系统内核进行管理的,目前操作系统都是基于多任务、多用户的。如果每个用户进程都可以随便访问操作系统内核的模块,改变状态,那整个操作系统的稳定性、安全性都大大降低

  为了将内核程序与用户程序隔离开,在硬件层面上提供了一次机制,将程序执行的状态分为了不同的级别,从0到3,数字越小,访问级别越高。0代表内核态,在该特权级别下,所有内存上的数据都是可见的,可访问的。3代表用户态,在这个特权级下,程序只能访问一部分的内存区域,只能执行一些限定的指令

  系统调用system call

  对于非一般性使用需求,操作系统提供了一系列的函数调用给软件开发者,由软件开发者来实现一些用户需要的功能。这些函数调用由于是操作系统内核提供的,为了有别于一般的函数调用,被称为系统调用。比如使用C语言进行软件开发时,经常用的printf函数,它的内部实际就是通过write这个系统调用,让操作系统内核把字符打印在屏幕上的

编程语言

  

低级语言
  机器语言:0和1
  汇编语言:和机器语言一一对应,与硬件相关的特有代码、驱动程序开发

中级语言:C
  系统级应用、驱动程序

高级语言: java,python,go,php,Objective-C,C#
  应用级程序开发

服务器三大操作系统 

Windows:
Linux:GNU/Linux
Unix:1969年Ken Thompson
  System: Bell Lab
    AIX (IBM)
    Solaris (SUN)
    HP-UX (HP)
  BSD: (BSRG)Berkeley System Distribution
    NetBSD
    OpenBSD
    FreeBSD

posted @ 2019-05-11 10:57  薛小新  阅读(245)  评论(0编辑  收藏  举报