Linux编程第三篇:Linux简介,开源软件简介(Linux是否安全?参考TESEC指标)

业精于勤荒于嬉,行成于思毁于随。
今天这篇算是Linux的正式学习,废话不多说,我们开始吧

第三篇

  • 一、UNIX与Linux发展史
    • 1.1、UNIX发展历史和发行版本
    • 1.2、UNIX主要发行版本
    • 1.3、Linux发展历史
    • 1.4、Linux内核版本
    • 1.5、Linux主要发行版本
  • 二、开源软件简介
    • 2.1、开源软件的特点
    • 2.2、开源是否安全?
    • 支持互联网的开源技术:

一、UNIX与Linux发展史

1.1、UNIX发展历史和发行版本

(1)1965年,美国麻省理工学院(MIT)、通用电气公司(GE)以及AT&T的贝尔实验室联合开发MULTICS工程计划,目标是 开发一种交互式的具有多道程序处理能力的分时操作系统 ,但是追求的目标过庞大复杂。
(2)1969年,美国贝尔实验室的肯 · 汤普森在DEC PDP-7机器上开发出UNIX系统,UNI对应小巧的意思。

题外话:当时的人思考:为什么电脑打游戏不行?最终得出结论是操作系统不行,所以开始研发新的操作系统。因此有个玩笑话是:游戏带来了技术的革新

(3)1971年,肯 · 汤普森的同事丹尼斯 · 里奇(二人合照如下)发明了C语言;1973年UNIX系统的绝大部分代码用C语言重写,这为提高UNIX系统的可移植性打下基础。肯 **·** 汤普森与同事丹尼斯 **·** 里奇

1.2、UNIX主要发行版本

操作系统公司硬件平台(CPU)
AIXIBMPowerPC
HP-UXHPPA-RISC
SolarisSunSPARC
LinuxRed Hat Linux 、Ubuntu LinuxIA(Intel、AMD、Cyrix、RISE…)

1.3、Linux发展历史

  • Linux系统诞生于1991年,由芬兰大学生李纳斯(Linus,下面的图片是李纳斯和他使用过的电脑)和后来陆续加入的众多爱好者共同开发完成(完全独立设计,参考其他开源代码所设计)。
  • Linux是开源软件(有史以来第一个完全开源的操作系统),源代码开放的UNIX。

李纳斯和他使用过的电脑

1.4、Linux内核版本

Linux内核官网(如下图):https://www.kernel.org
Linux内核官网

1.5、Linux主要发行版本

我们常用的一般是CentOSUbuntu
在这里插入图片描述

二、开源软件简介

2.1、开源软件的特点

  • 使用的自由
    • 绝大多数开源软件免费
  • 研究的自由
    • 可以获得软件源代码
  • 散布及改良的自由
    • 可以自由传播、改良甚至销售

使用开源软件主要是考虑到成本,开源软件可以让成本减少很多倍

2.2、开源是否安全?

  • 那么开源软件是否安全?
    • 事实上,开源软件非常安全,因为有足够多的眼睛关注,出现一点点小问题也会被及时发现
    • Linux 更安全、更稳定。这是一个社区驱动的系统。因此,任何漏洞的响应都会在数小时内完成,并且传播速度更快。

Linux甚至不需要什么杀毒软件(需要防火墙)

TCSEC(Trusted Computer System Evaluation Criteria)技术指标来看:

  • Windows的服务器版本安全等级大概是C1
  • Linux的服务器不做防护的安全等级大概是C1
  • 如果打上全部的防护安全措施(SE Linux),安全等级飙升到B1,
    WIKIPEDIA介绍安全等级

支持互联网的开源技术:

LAMP(Linux 操作系统+Apache Web服务器+MySQL 数据库+PHP 编程语言)

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

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

相关文章

渐变且描边文字

效果: 用 background-image:linear-gradient实现渐变、 text-shadow实现描边 元素同时添加: background-image: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(143, 180, 253, 1));-webkit-background-clip: text;background-…

大整数加法C++

大整数加法C 方法代码 方法 小的数在前,大数在后加数、被加数进行翻转,从低位开始加起,因为数组是从0位开始,与正常手工加法不同。设置进位符carry_flag先对小的数进行控制,做加法再对大的数剩下的部分,做…

Spring支持人工智能应用框架-SpringAi

简介 人工智能技术和日益成熟,开发企业级人工智能的应用已成为一个热门的趋势。Spring AI 是一个用于 AI 工程的应用框架,目的是为了简化AI应用的对接、部署、维护和扩展。 SpringAi的灵感来自LangChain和LlamaIndex,但是SpringAi并不是直接…

Python实现动态迷宫生成:自动生成迷宫的动画

文章目录 引言准备工作前置条件 代码实现与解析导入必要的库初始化Pygame定义迷宫生成类主循环 完整代码 引言 迷宫生成算法在游戏开发和图形学中有着广泛的应用。它不仅可以用于创建迷宫游戏,还可以用于生成有趣的图案。在这篇博客中,我们将使用Python…

一文了解java中Optional

文章目录 1. Optional简介2. 常用的接口2.1 常用接口简单使用2.1.1 创建的常用方法2.1.2 获取值的常用方法2.1.3 判定的常用方法2.1.4 判定后的操作方法2.2 map方法介绍 2.2 其他方法2.2.1 Filter 方法2.2.2 FlatMap 方法 3. 常用的实例4. 总结 1. Optional简介 Optional是在ja…

基于Java的校园交友网站系统

你好,我是专注于计算机技术研究的学姐码农小野。如果你对校园交友网站系统的构建或者相关技术感兴趣,欢迎私信交流。 开发语言 Java 数据库 MySQL 技术 Java语言、SpringBoot框架、B/S结构 工具 MyEclipse、Navicat、Maven 系统展示 首页 个人…

Postman:Body类型中的x-www-from-urlencoded参数可以接受GET请求吗?

不可以 今天学习Spring Web MVC,在借助Postman学习 RequestMapping 注解时,发现Body类型中的x-www-from-urlencoded参数不支持GET请求。 按理说 RequestMapping 注解可以支持全部类型的请求,但为何在这里不能支持GET请求呢? 以下是…

Diffusion 加速系列之三 | LCM

0. 资源链接 论文: LCM:https://arxiv.org/abs/2310.04378 项目: https://github.com/luosiallen/latent-consistency-model 1. 背景动机 现有的高分辨率的 diffusion 模型推理存在的问题: Diffusion 模型推理过程包含多步去噪的流程,这会…

VMware虚拟机使用标准分区后对分区进行扩容

前言: 使用虚拟机创建系统后,/ 盘 想要扩容需要几步才能实现,下面将介绍具体流程 确定根分区磁盘以及分区号,和起始扇区和结束扇区 # 查看磁盘名称和分区 # 如下可看出根分区为 /dev/sda2 ,磁盘为sda [root192 ~]# ls…

【鸿蒙学习笔记】元服务

官方文档:元服务规格 目录标题 什么是元服务特征第一个元服务-案例介绍创建项目源码启动模拟器启动entry创建卡片出发元服务 什么是元服务 特征 免安装分包预加载老化和更新机制 第一个元服务-案例介绍 创建项目 源码 Entry Component struct WidgetCard {buil…

qt 线程举例

qt 线程举例 在Qt中,使用线程的一个常见方式是通过QThread类。下面是一个简单的例子,展示了如何创建一个线程并在其中执行任务。 步骤 1: 创建一个Worker类 首先,创建一个继承自QObject的Worker类,这个类将包含要在线程中执行的…

three完全开源扩展案例02-跳动的音乐

更多案例尽在https://threelab.cn/ 演示地址 import * as THREE from "three"; import { OrbitControls } from "three/examples/jsm/controls/OrbitControls.js";let mediaElement; let analyser; let scene; let camera; let renderer; let controls; …

RabbitMQ中常用的三种交换机【Fanout、Direct、Topic】

目录 1、引入 2、Fanout交换机 案例:利用SpringAMQP演示Fanout交换机的使用 3、Direct交换机 案例:利用SpringAMQP演示Direct交换机的使用 4、Topic交换机 案例:利用SpringAMQP演示Topic交换机的使用 1、引入 真实的生产环境都会经过e…

1. openstack

openstack 一、云的简介1、优势2、类型2.1 根据提供的服务范围2.2 根据提供服务不同 二、openstack核心组件1、核心组件2、nova组件2.1 nova核心进程 3、glance组件4、cinder组件5、neutron组件6、swift组件7、cellometer组件8、keystone组件9、heat组件10、dashboard 一、云的…

大模型/NLP/算法面试题总结9——从普通注意力换成多头注意力会导致参数暴涨吗?

从普通注意力换成多头注意力(Multi-Head Attention),通常不会导致参数总量暴涨。相反,在某些实现和配置下,参数量的增加可能相对可控,甚至在某些情况下,通过优化可以实现参数量的有效控制。 参…

韦东山嵌入式linux系列-LED 驱动程序框架

1 回顾字符设备驱动程序框架 图中驱动层访问硬件外设寄存器依靠的是 ioremap 函数去映射到寄存器地址,然后开始控制寄存器。 那么该如何编写驱动程序? ① 确定主设备号,也可以让内核分配;② 定义自己的 file_operations 结构体&…

编程开发语言跨平台、无缝升级才是大势所趋

编程语言的兼容性 编程语言的新特性升级,导致对原有项目环境不能直接使用最新版本的功能。 举个例子:比如PHP语言 PHP5.* 系 、 PHP7.*系 、 PHP8.*系 低版本向高版本升级更多的操作是:兼容性检查 在升级之前,应该确保项目…

【LeetCode:1071. 字符串的最大公因子 + 模拟 + 最大公约数】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

使用Ultralytics YOLO进行模型验证

使用Ultralytics YOLO进行模型验证 使用Ultralytics YOLO进行模型验证简介为什么使用Ultralytics YOLO进行验证?验证模式的主要功能使用示例YOLO模型验证参数使用参数进行验证的示例使用Ultralytics YOLO进行模型验证 简介 验证是机器学习管道中的关键步骤,可以评估训练模型…

水库大坝安全监测险情应对措施

汛期暴雨洪涝灾害发生后,为保证大坝及下游人民生命财产安全,应及时进行大坝安全现场检查和快速评估。评估内容包括大坝沉降和水平变形、裂缝、坝坡是否塌滑、下游坡是否存在集中渗漏或大面积渗水、溢洪道启闭设备能否正常运行、近坝库岸是否有大的滑坡体…