0
点赞
收藏
分享

微信扫一扫

操作系统接口

冬冬_79d4 2022-05-01 阅读 20
服务器

文章目录


前言

了解

一、联机命令接口

用户命令分为两类:

  • 联机命令接口:交互(命令界面,图形界面)
  • 脱机命令接口:批处理、或作业控制

字符命令用户接口
字符方式联机用户接口又称为联机命令接口。是指用户通过命令语言实现对作业的控制,以及取得操作系统的服务。即用户在实现与机器的交互时,先在终端的键盘上键入所需的命令,由终端处理程序接收该命令,并在用户终端屏幕上以字符显示方式反馈用户 输入的命令信息、命令执行及执行结果信息。
图形化联机命令接口
GUI
联机命令的类型
通常,OS都向用户提供了几十条甚至上百条的联机命令。根据这些命令所完成功能的不同,可把它们分成以下几类:
1.系统访问类

  • 在单用户微型机中,一般没有系统访问命令;
  • 在多用户系统中,为了保证系统的安全性,都毫无例外地设置了系统访问命令,即注册命令login。
  • 凡要在多用户系统的终端上上机的用户,都必须先在系统管理员处获得一合法的用户名和口令。
  • 每当用户在接通其所用终端的电源后,便由系统直接调用并在屏幕上显示出以下的注册命令:
    login: //提示用户键入自己的注册名
    password: //提示用户键入自己的口令
    2.目录操作类
    (1) 建立子目录命令: mkdir, md / mkdir
    (2) 显示目录命令: dir / ls
    (3) 删除空子目录命令:rmdir, rd / rmdir, rm
    (4) 显示目录结构命令:tree / tree
    (5) 改变当前目录命令:chdir, cd / cd, pwd
    3.文件操作类
    (1) 显示文件命令:type / cat
    (2) 拷贝文件命令:copy / cp
    (3) 文件比较命令:comp / cmp
    (4) 重新命名命令:ren, move / mv
    (5) 删除文件命令:erase, del / rm
    4.其他命令(I/O重定向、管道、过滤和批处理)
    I/O重定向
    管道
    过滤
    批处理
    5.磁盘操作类
    (1) 磁盘格式化命令format
    (2) 复制整个软盘命令diskcopy
    (3) 软盘比较命令diskcomp
    (4) 备份命令backup
    (5) 分区管理命令fdisk
    6.通信类
    7.命令解释程序

二、 Shell命令语言

在Unix/Linux系统中, Shell是命令语言、命令解释器(程序)及程序设计语言的统称。
(1) 命令解释器(Shell程序):对输入的命令解释执行。
(2) 程序设计语言:支持绝大多数在高级语言中能见到的程序元素,如函 数、变量、数组和程序控制结构。具有较强的编程能力。
(3) 拥有自己内建的Shell命令集。

Linux系统基本知识补充

比如:
ls # 列当前目录
ls / # 列根目录
ls -l / # 长格式列根目录
ls -lu / #长格式列根目录,不排序
date # 显示系统时间
date -u # 显示系统的Greenwich时间
可通过以下方式获得命令的简帮助
cmd --help
ls --help

简单命令

两大类:

系统提供类
用户自定义类

还可以分为:

内部命令
外部命令

简单命令的种类

  1. 进入和退出系统
    (1)进入系统
    当用户需要注册进入系统时,系统会自动调用login命令,让用户输入用户名和密码,验证无误后方可进入系统。过程为:
    *** login:
    Password:
    (2)退出系统
    当用户使用完毕系统后,要退出系统。方法有
    logout
    exit
    ^D
  2. 目录操作命令
    列目录:ls
    目录创建:mkdir
    改变目录:cd
    显示当前目录:pwd
    目录的移动与更名:mv
    目录的删除:rm
  3. 文件操作命令
    文件显示与合并命令:cat
    文件复制命令:cp
    文件的更名与移动:mv
    文件的删除:rm
    确定文件的类型:file、stat
    改变文件的存取方式:chmod
  4. 系统询问类
    时间查询命令:date
    查询谁在系统中:who
    查询我是谁:whoami
    查询所有终端名:tty
    查询进程树:pstree
    查询主机名:hostname
    查询系统信息:uname
  5. 系统管理命令
    关闭/重启系统命令
    用户、组和密码管理
    日期和时间管理
    权限管理
    设备管理
    网络管理
    系统管理

I/O重定向与管道命令

1. I/O重定向
UNIX/Linux/DOS/Windows的3 类标准I/O:
0 – stdin(标准输入)
1 – stdout(标准输出)
2 – stderr(标准错误)
均可重定向,使用符号如下:
< : 用于输入的重定向;
> : 用于输出重定向。若改道的文件不存在则创建之,若存在则将其冲空后,把标准输出的内容写指定文件。
>>:用于输出重定向。若改道的文件不存在则创建之,若存在则将文件指针指向该文件的尾部后,把标准输出的内容写指定文件,也就是追加致已存在文件的尾部。
2>&1:将标准错误重定向到标准输出。

2. 管道连接
I/O重定向的另一种形式是管道。具体做法是将前一条命令的输出信息作为下一个命令的输入信息,用符号“|”在两个相邻命令之间形成一条管道。
管道形式的一般格式为:
cmd1 | cmd2 | … | cmdn;

通信命令

1、信箱通信命令:mail
2、对话通信命令:write
3、通信控制命令:mesg
4、广播通信命令:wall

后台命令

命令的后台执行:

  • Unix/Linux提供了命令后台执行机制,命令启动方法与前台正常基本一样,只是要在命令的最后,回车键之前加上“&”。
  • 例如:ls -l /dev &
  • 注意:
    在程序后台执行时,不能进行交互。
    若程序有未被重定向的输入,则被阻塞。
    若有未重定向的输出,则以邮件形式发给用户

Linux C编程补充

Unix/Linux C编程简介

三、 联机命令接口的实现

  • 为了实现人机交互,在系统中必须配置相应的软件来实现人机交互。这就是shell程序。
  • 基本功能是:
    接收并缓存用户输入
    命令解释,并提交系统执行
    最后,将结果返回给用户。
    终端键盘处理程序
    终端键盘处理程序应具有以下功能:
    ①接收用户从终端上打入的字符
    ②字符缓冲,用于暂存所接收的字符
    ③回送显示
    ④屏幕编辑
    ⑤特殊字符处理

四、 系统调用的概念和类型

系统调用的基本概念

  • 系统调用是操作系统内事先编制好的,实现服务功能的子程序或过程,是OS提供给编程人员的接口,是用户程序获取系统服务的唯一途径。
  • 编程人员利用系统调用,在源程序一级动态请求和释放系统资源,调用系统中已有的系统功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。
  • 系统调用像一个透明箱子那样,对用户屏蔽了操作系统的具体动细节而只提供有关的功能。
  • 命令控制界面或库函数也都是在系统调用的基础上开发而成的。
    系统调用的执行过程
    在这里插入图片描述

系统调用的类型
1. 进程控制类
(1) 创建和终止进程
(2) 获得和设置进程属性
(3) 等待某事件出现
2. 文件操纵类
(1) 创建和删除文件
(2) 打开和关闭文件
(3) 读和写文件
(4) 文件的指针移动
(5) 文件的属性操作
3. 进程通信类
进程间通信也叫IPC(Inter-process communication)。常用的机制有:

消息传递机制
共享内存机制
信号机制
信箱机制
管道机制

4.设备管理类
5.存储管理类
6.线程管理类
POSIX标准

  • 不同OS有差别。
  • POSIX标准。
    POSIX定义了标准应用程序接口(API),用于保证编制的应用程序可以在源代码一级上多种操作系统上移植运行。只有符合这一标准的应用程序,才有可能完全兼容多种OS,在多种操作系统下能够编译后运行。
  • 可以在POSIX基础上构建自己的库

五、 UNIX系统调用

六、 系统调用的实现

1.引入库

代码如下(示例):

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context

2.读入数据

代码如下(示例):

data = pd.read_csv(
    'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())

该处使用的url网络请求的数据。


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

举报

相关推荐

0 条评论