01Linux以及操作系统概述

课程目标

1.了解现代操作系统的整体构成及发展历史 2.了解Linux操作系统及其分支版本 3.直观上理解服务器端与桌面端版本的区别

课程实验

1.通过对CentOS和Ubuntu的演示,直观理解Linux与Windows的异同

课堂引入

本章内容主要为大家详细讲解Linux操作系统(以下简称Linux)的基本情况。业界客户端目前大多采用Windows系统(以下简称Windows),而服务器端大多数使用的是Linux,可见其学习的重要性。究其根源主要是由于其开源免费、安全性高、支持多用户、支持关闭任意不需要的功能和对硬件资源要求低等因素。同时,[inux也是众多开源产品首先支持的平台,也是实际意义上的服务器和云平台的标准,包括众多安全设备,其内置的也是Linux操作系统(如防火墙、路由器、交换机、IDS和IPS、网闸等产品),对于网络安全的学习来说,起着至关重要的作用。

授课进程

一、操作系统的作用

1、五大基本功能

(1)进程和线程的管理:进程线程的状态,控制,同步互斥,通信调度等

(2)存储管理:分配/回收、地址转换,存储保护等等

(3)文件管理:文件目录,文件操作,磁盘空间,文件存储控制

(4)设备管理:设备驱动,分配回收,缓冲技术等

(5)用户接口:系统命令,编程接口

2、三个作用

(1)资源的管理者

(2)向用户提供各种服务

(3)对硬件机器的扩展

内核(kernel)就是操作系统的本身:就是用来解决五大基本功能的,内核之外的我们称之为壳(shell),壳之外的就是我们称之为的就是应用程序application

3、操作系统的应用场景

(1)嵌入式设备:如POS机,单反相机,游戏机,智能设备等等

(2)移动端设备:如手机,平板电脑等等

(3)个人桌面电脑:如上网本,游戏本,笔记本电脑,台式机等

(4)服务器:如云服务器,PC服务器,刀片服务器,小型机等等

(5)超级计算机:各类超级计算机《大型服务器等等

二、Linux的发展历史

1、Unix

1965年,MIT、贝尔实验室和美国通用电气公司合作准备搞个超级操作系统,取了个霸气的名字:Multics(Multiplexed Informationand Computing System),多路复用信息和计算机系统。能让多个人可以同时干很多事,也叫多用户多任务操作系统。 1969年项目Multics 进展缓慢被迫停止,项目成员Ken Thompson 和 Dennis Ritchie没活干就准备打游戏,然后找了一台破旧的电脑准备玩以前开发的游戏,在称植的过程中实现了一个简单的操作系统,也就是Unix,到了1970年这个系统基本可以运行了,所以1970年也称为Unix元年,Unix 时间戳从 1970 年1月1日开始计算和 Unix 诞生的时间有莫大关系。 Unx 一经出现,引起了众人的关注,很多人找 Thompson 和 Ritchie 要 Unix 的源代码。那是个开放的时代,那是个相互学习研究的时代,把程序的源码分享给别人是很平常的事。一份份的 Unix 源码被流传到各个实验室、学校、公司。 当时主要两个分支,一个是贝尔实验室的Unix,还有一个是伯克利分校的BSD(macos前身)。到了1983年,贝尔实验室的母公司AT&T想利用Unix赚钱,不在开发Unix的源码,BSD这边不想着急赚钱想开发源码,所以只能修改源码,然后就引发了官司。在这种混乱的局面下,出现了一个人理查德·斯托曼(Richard Mathew stallman)博士,他要向这个世风日下、令人沮丧的时代挑战他要还一个开源、免费的系统与人世间。

他雄心勃勃地提出了一项伟大的计划,GNU(GNU's not Unix)计划。Not Unix,不是 Unix,是自由的、免费的、开源的、像 Unix - 样好用的系统。

$$
Unix操作系统后来经过完善和演化,形成了4个主要发行版本:IBM公司的AIX,Sun公司的Solaris(已被Oracle收购),HP公司的 HP-UX,以及FreeBsD.
$$

2、Linux

1991 年,Linus iorvalds 尚是芬兰赫尔辛基大学的一名学生,他在学校学操作系统的课程,他也想搞个操作系统玩玩。他当时已经在使用 Gnu 项目的 Bash、GCC 等软件。受 GNU 的影响,把他自己开发的一个简陋的操作系统内核放到了互联网上。

这个内核系统就是Linux,Linuss Unix,Linus的Unix。名字并非Linus所取,他一贯的风格是取个调侃的名字,但当时管理员说Linux挺好,名字就这么定了。 Linux放到网上后引起了多人的兴趣,他们陆续通过互联网加入到Linux开发过程中。1993年,大约有100多名程序员参与了Linux内核代码。 这时已经是互联网的时代,他们不用相识,不用谋面,通过网络讨论,通过网络协作,推进着Linux。 Limus(inus)后来坦言,他开发Linux时不了解还有FreeBSD等项目,如果知道了可能他就不会动手写Linux了。那时各种BSD系统正存官言的阴影笼罩下,某种程度了也促进了Linux的发展。2004年,他被《时代周刊》评为世界最有影响力的人之一。

万物皆可文件

三、Linux发行版本

下图图标不足以描述Linux的强大的分支和发行厂商,Linux是当今开源社区最为活跃的,市场的占有率最高的操作系统,没有之一。

目前的主流分支主要有三套:

1、Redhat公司发布的Redhat Linux,后续分化为:面向企业客户的RHEL,面向个人客户的Fedora,而后RHEL双继续分支出CentOs,也就是我们今天最为主流的服务器开源操作系统,也是本次课程的学习重要。 2、Debian公司发布的Debian Linux,由此行生了大名鼎鼎的Ubuntu Linux(分个人版和服务器版),在Ubuntu的源代码基础上,又衍生了Kali Linux,Kali Linux操作系统上安装了很多网络安全攻防必备的工具。 3、国产Linux发行版本:中标麒麟、银河麒麟、统信UOS、深度操作系统、华为鸿蒙操作系统、阿里云的ALIOS等

四、Linux应用场景

1、服务器操作系统

如今的 IT 服务器领域是 linux、UNIX、Windows 三分天下,Linux 系统可谓后起之秀,特别是"互联网热”以来,[inux 在服务器端的市场份额不断扩大,每年增长势头迅猛,开始对 Windows 和 UNIX 的地位构成严重的威胁,已经成为事实上的服务器标准。互联网产业的迅猛发展,促使云计算、大数据产业的形成并快速发展,云计算、大数据作为一个基于开源软件的平台,[inux占据了核心优势;据Linux基金会的研究,86%的企业已经使用Linux操作系统进行云计算、大数据平台的构建,目前,[inux已开始取代Unix成为最受青睐的云计算、大数据平台操作系统。

2、移动端智能操作系统

Android操作系统采用Linux内核,并进行了开源,我们可以免费获取和修改Android的源代码(AOSP:Android Open SourceProject),其中华为鸿蒙的手机版操作系统便是基于AOSP项目源码进行了的优化和改进版本,其核心均是Linux操作系统。 同时,Linux操作系统和Android操作系统也广泛应用于各类智能设备和物联网设备中,比如智能影响、智能手表、智能家居、无人机、医疗器械、车联网、安防等各个领域,也包括更早期的嵌入式操作系统,很多设备也是采用简化版的Linux操作系统内核。

3、云大物智移及智能制造

Linux操作系统及其定制版本和衍生版本,广泛应用于云计算、大数据、物联网、人工智能、移动互联网及工业制造领域,无处不在。

五、Linux与Windows

(1)Linux的应用场景跟Windows及MacOS正好形成了互补关系,但是也有交叉,目前也有很多工程师使用Linux(主要是Ubuntu)作为日常办公使用,而Windows Server版本也有很多企业作为服务器使用,依赖于微软的完整产业链,也获得了不少客户的青睐, (2)与Windows和MacOS一样,Linux发行版本也提供了自己的桌面环境,如KDE、GNOME等,用户也可以像操作Windows和MacC一样,通过鼠标来操作和控制Linux。但是通常在服务器端的安装环境中,默认不建议安装桌面,而是全部通过命令行进行使用,以提性能和安全性。 (3)在网络安全领域,Linux是主流,Windows是配角。

通常情况下,服务端操作系统(windows。Linux)不会安装GUI界面,只是一个内核加shell,再加少量的命令行

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/20208.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PPT 隐藏开启对象图层

目录预览 一、问题描述二、解决方案三、参考链接 一、问题描述 制作PPT的时候,有时候需要在一张PPT放置多个依次出现的内容,然后设置对应的动画,要是需要对某个内容进行修改的话,就会很不方便,这个时候就需要使用&…

基于SpringBoot的旅游攻略信息系统的设计与实现

文档介绍 用户群体 针对已经学习过SpringBoot的同学,希望通过一个项目来加强对框架的应用能力,增加项目经验 针对需要完成大学期间的毕设项目的同学,可以通过此文档了解整个系统技术架构,为自己的毕设论文提供指导性建议 文档内容 此文档内容可以让学习此实战项目的同学有一…

webshell代码免杀

1.什么是WAF? Web Application Firewal(web应用防火墙),web应用防火通过执行一系列针对HTTP/HTTPS的安全策略来专门为web应用提供保护的一款产品,基本可以分为以下4种 软件型WAF:以软件的形式安装在服务器上面,可以接触到服务器…

MAB规范(1):概览介绍

前言 MATLAB的MAAB(MathWorks Automotive Advisory Board)建模规范是一套由MathWorks主导的建模指南,旨在提高基于Simulink和Stateflow进行建模的代码质量、可读性、可维护性和可重用性。这些规范最初是由汽车行业的主要厂商共同制定的&…

c#基础()

学习目标 了解:嵌套类,匿名类,对象初始化器 重点:类的定义以及对象,构造方法,this和static关键字 掌握:面向对象的概念,访问修饰符,垃圾回收 面向对象 面向对象的概…

2024年5月月终总结

一转眼4月份又过去了,按照年初的承诺,每月照例要写一个月总结,简单回顾下: 1) 英语学习继续进行: 百词斩: 不背单词: 每日英语听力: 2)中医学习每天15分钟,没有中断。 …

xxl-job的使用

介绍 在分布式中,很多微服务可能存在多实例部署的现象,如果在某个具体的微服务中实现一个定时任务,而该微服务存在多个实例的话,那么会导致该定时任务在不同实例中都会进行执行!这很容易导致脏数据、数据重复等问题&am…

远程继电器模块实现(nodemcu D1 + 继电器)

前言 接下来将实现一个远程继电器,实时远程控制和查询的开关状态。用 5v 直流电控制 220v 交流电。 硬件上: 使用 nodemcu D1 和 JQC-3FF-S-Z 继电器。 软件上: 使用 nodejs 作为服务端,和 html 作为客户端。 在开始之前在电脑…

Scrapy vs. Beautiful Soup | 网络抓取教程 2024

网络爬虫是任何想要从网上收集数据用于分析、研究或商业智能的人必备的技能。Python中两个最受欢迎的网络爬虫工具是Scrapy和Beautiful Soup。在本教程中,我们将比较这些工具,探索它们的功能,并指导你如何有效地使用它们。此外,我…

精雕细琢,B 端 UI 设计展典雅风范

精雕细琢,B 端 UI 设计展典雅风范

CC工具箱使用指南:【山西省村规结构调整表(亦求长生亦求你)】

一、简介 群友定制工具。 工具根据输入的用地图层,生成山西村规的结构调整表。 和一般的用地表有些不一样的地方是,现状和规划字段都在同一个图层里。 并且还有一个【村庄名称】的字段,可以将多个村庄放在一个图层中,一次性生…

【网络研究观】-20240531

战争揭开美国武器优势的面纱 随着俄军在哈尔科夫地区稳步推进,乌克兰战争对美国国防机器而言是一场灾难,这一点越来越明显,这不仅是因为我们的援助未能挽救乌克兰的撤退和可能的失败。更重要的是,这场战争无情地暴露了我们国防体…

Nginx一个端口代理多个vue项目,通过不同路由转到不同系统,反向代理Apache进行文件处理

需求:由于一些因素限制,需要尽可能的少开放外部端口访问,这里将多个vue项目通过一个nginx端口进行代理,由不同的路由来确定访问哪些项目,apache同理 nginx代理多个vue项目 安装和配置nginx的基础教程这里就不写了&…

thinkphp6 queue队列的maxTries自定义

前景需求:在我们用队列的时候发现maxtries的个数时255次,这个太影响其他队列任务 我目前使用的thinkphp版本是6.1 第一部定义一个新的类 CustomDataBase(我用的mysql数据库存放的队列) 重写__make 和createPlainPayload方法 …

前端功能拖拽篇:dragleave拖拽事件穿透子元素的优雅解决方案

文章目录 前情提要应用场景⭐拖拽改变元素位置⭐拖拽改变目标区域的样式⭐dragleave拖拽事件穿透子元素的优雅解决方案 最后 前情提要 在前端工作过程中,避免不了要接触各种技术,拖拽就是其中一个,大部分关于拖拽的基础知识和Demo都在MDN中写…

day-36 删除链表的倒数第 N 个结点

思路 首先计算出链表的长度,然后删除第n个节点即可,但要注意考虑特殊情况 解题方法 特殊情况:1.删除节点为最后一个节点 2.删除节点为头结点 Code /*** Definition for singly-linked list.* public class ListNode {* int val;* …

Go-知识并发控制Context

Go-知识并发控制Context 1. 介绍2. 实现原理2.1 接口定义2.2 Deadline()2.3 Done()2.4 Err()2.5 Value() 3. 空 context4. cancelCtx4.1 Done()4.2 Err()4.3 cancel()4.4 WithCancel4.5 例子4.6 总结 5. timerCtx5.1 Deadline5.2 cancel5.3 WithDeadline5.4 WithTimeout5.5 例子…

HTML+CSS+JS 熊猫登录表单

效果演示 实现了一个可爱的熊猫登录界面,页面背景使用了渐变色,熊猫的头部和身体使用了圆形和椭圆形的边框,使用了CSS的伪元素和阴影效果来实现熊猫的手和脚。登录框使用了flex布局,包括用户名和密码的输入框和登录按钮,使用了CSS的过渡效果和伪类来实现输入框的动态效果。…

【LeetCode刷题】二分查找:山脉数组的峰顶索引、寻找峰值

【LeetCode刷题】Day 13 题目1:852.山脉数组的峰顶索引思路分析:思路1:暴力枚举O(N)思路2:二分查找O(logN) 题目2:162.寻找峰值思路分析:思路1:二分查找O(logN) 题目1:852.山脉数组的…

(二刷)代码随想录第15天|层序遍历 226.翻转二叉树 101.对称二叉树2

层序遍历 10 102. 二叉树的层序遍历 - 力扣&#xff08;LeetCode&#xff09; 代码随想录 (programmercarl.com) 综合代码&#xff1a; class Solution{public List<List<Integer>> resList new ArrayList<List<Integer>>();public List<List<…