Linux---Kernal与Shell讲解
目录
Shell简介
什么是Shell
Shell分类
内核Kernal
Shell简介
什么是Shell
我们首先需要知道一台完整的计算机是由硬件组成的,而人不可以直接与硬件交互,为了完成交互,进行了以下的操作
- 将硬件设备交由内核管理,给硬件套个内核,通过内核来控制硬件;不过内核的复杂性太高,在访问时存在较大的风险,所以用户不可以直接访问内核
- 通过调用API(应用程序编程接口来实现控制内核控制硬件,但是使用API实现一个简单的任务都需要调用多次API,使用起来太麻烦
- 通过外层的应用程序集成大量的API接口来控制硬件
为了使得用户与硬件交互,将硬件一层层包裹起来,就像蜗牛的壳,而壳的英文为Shell
所以我们在行业中就将用户终端程序(为用户提供操作界面的软件,通常指的是命令解释器)称之为Shell
Shell的作用
Shell接收用户命令,然后解析命令调用系统相关API操作内核,控制计算机
Shell充当了人与内核(硬件)交互的翻译官
Shell分类
Shell可以分为图形化界面Shell和命令行式Shell
图形化界面Shell主要分为
Windows Explorer (Windows操作系统)
BlakBox/FluxBux/KDE等 (Linux操作系统)
命令行式Shell主要分为
Cmd (Windows系统)
Bash/zsh/csh/sh (Unix/Linux操作系统)
Sh是最初的UNIX Shell程序
Bash是sh的增强版本,是目前通用的Linux Shell软件,大部分linux默认都是用的是bash
内核Kernal
什么是内核
Linux系统内核指的是一个由Linus Torvalds负责维护,提供进程管理、内存管理以及多任务系统功能的系统核心程序
Shell与Kernal之间的关系
用户将请求告知Shell后,由Shell和内核通信,内核再负责和硬件通信,完成交互
操作系统内核(kernal)与shell是独立的套件,而且都可以被替换
即:不同的操作系统使用不同的Shell,同一操作内核也可以使用不同的shell
Linux发行版
Linux发行套件系统是我们常说的Linux操作系统,也就是由Linux内核与各种常用软件的集合产品
目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等
Linux---Kernal与Shell讲解相关推荐
- linux脚本编程(shell)浅介
linux脚本编程(shell)浅介 2006-01-10 11:45 27693人阅读 评论(18) 收藏 举报 脚本shelllinux编程bash语言 linux脚本(shell)编程 啊,昨天 ...
- linux 定时执行搅拌,Linux上定时shell脚本
本文主要介绍在Linux系统上部署定时器,定时执行shell脚本,通过脚本执行sql文件 sql文件 -- 创建表 create table if not exists iot_test.iot_ta ...
- Linux操作系统下进程讲解(史上最强总结)
Linux操作系统下进程讲解 一.进程的基本概念: 1. 什么是进程 在传统的操作系统中,程序不可以独立的运行,作为资源分配和独立运行的基本单位都是进程.进程的定义是一个可执行中程序的实例,系统中每一 ...
- linux执行shell过程日志,Android之在linux终端执行shell脚本直接打印当前运行app的日志...
1.问题 我们一般很多时候会需要在ubuntu终端上打印当前运行app的日志,我们一般常见的做法是 1).获取包名 打开当前运行的app,然后输入如下命令,然后在第一行TASK后面的就可以看到包名 a ...
- Linux系统与shell教程(1):有没有兴趣玩耍一下shell版俄罗斯方块?
文章目录 来,我要诱惑你 Linux系统与shell 安装属于你的Linux系统 shell的功能 shell特点 shell版本 shell初体验 Hello Shell shell版俄罗斯方块 怎 ...
- Linux下的Shell工作原理
为什么80%的码农都做不了架构师?>>> Linux系统提供给用户的最重要的系统程序是Shell命令语言解释程序.它不 属于内核部分,而是在核心之外,以用户态方式运行.其基本功 ...
- Linux中执行shell脚本的4种方法
这篇文章主要介绍了Linux中执行shell脚本的4种方法总结,即在Linux中运行shell脚本的4种方法,需要的朋友可以参考下. bash shell 脚本的方法有多种,现在作个小结.假设我们编写 ...
- Linux与shell环境,Linux 环境及 Shell 程序
Linux 环境及 Shell 程序 View 98 Download 1 Embed Size (px) 344 x 292429 x 357514 x 422599 x 487 DESCRIPTI ...
- Linux基础之shell变量
Linux基础之shell变量 一.shell变量及其他相关介绍 二.shell变量类型 三.shell变量用法 四.定义命令别名 五.系统变量文件定义说明 一.shell变量及其他相关介绍 1.编译 ...
- Linux下的shell脚本实战之用户创建
Linux下的shell脚本实战之用户创建 一.脚本要求 二.脚本内容 三.运行脚本 一.脚本要求 二.脚本内容 三.运行脚本 一.脚本要求 1.该脚本提示用户创建用户名和密码 2.判断输入的用户名是 ...
最新文章
- 【转】oracle存储过程常用技巧
- python递归详解_python基于递归解决背包问题详解
- python 将字符串作为变量名
- 用tar备份linux
- 【深度学习】利用深度学习进行时间序列预测
- helm部署minio
- 信息学奥赛C++语言:统计正数
- python sys.argv
- 为什么我们要升级到 iOS 12.1.3?
- linux交换内存_Linux中的交换内存如何工作?
- 集线器、交换机和路由器之间的区别
- HDU3032 Nim or not Nim?
- delphi socket 怎样把接收到的二进制数据转换成字符串显示_【连载电子书二】Python基础数据类型详解(上)...
- python网络编程基础知识_Python 网络编程基础入门
- 【ElasticSearch系列连载】1. ES版本与开源简介
- 我是80后程序员,我支持正版!
- idear修改新的git地址
- 小程序之定位签到打卡=>腾讯地图SDK
- 如何实现一篇数据新闻报道
- 检测到#include错误,请更新IncludePath.已为此翻译单元xxx禁用波形曲线,最详细解决教程
热门文章
- 分布式缓存和本地缓存的区别
- JQuery插件开发简述
- Fluent Meshing中BOI设置的几个问题
- 教你Java5分钟制作海报、彻底解决APP兼容性问题
- iOS .car 文件内容提取
- 【MATLAB】几种求矩阵伪逆的方法
- python WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None))————
- 欧尼酱讲JVM(22)——分代收集算法
- linux下多个文件相同行合并
- 全新PHP云盘网盘系统Cloudreve程序源码一键安装版+可对接多家云存储网盘