当前位置: 首页 > news >正文

【Linux从入门到精通一】操作系统概述与Linux初识

个人名片
在这里插入图片描述
🎓作者简介:java领域优质创作者
🌐个人主页:码农阿豪
📞工作室:新空间代码工作室(提供各种软件服务)
💌个人邮箱:[2435024119@qq.com]
📱个人微信:15279484656
🌐个人导航网站:www.forff.top
💡座右铭:总有人要赢。为什么不能是我呢?

  • 专栏导航:

码农阿豪系列专栏导航
面试专栏:收集了java相关高频面试题,面试实战总结🍻🎉🖥️
Spring5系列专栏:整理了Spring5重要知识点与实战演练,有案例可直接使用🚀🔧💻
Redis专栏:Redis从零到一学习分享,经验总结,案例实战💐📝💡
全栈系列专栏:海纳百川有容乃大,可能你想要的东西里面都有🤸🌱🚀

目录

      • 【Linux从入门到精通一】操作系统概述与Linux初识
        • 一、操作系统概述
        • 二、Linux初识
          • 1. **Linux的特点**
          • 2. **Linux的发行版**
          • 3. **Linux 的常见应用场景**
        • 三、虚拟机介绍
          • 1. **什么是虚拟机?**
          • 2. **虚拟机的工作原理**
          • 3. **虚拟机的优势**
          • 4. **常见的虚拟化软件**
        • 四、安装 VMware Workstation 虚拟化软件
          • 1. **VMware Workstation 的下载**
          • 2. **VMware Workstation 的安装步骤**
          • 3. **VMware Workstation 的优势**
      • 总结

【Linux从入门到精通一】操作系统概述与Linux初识

一、操作系统概述

操作系统(Operating System,简称OS)是计算机系统中最基本的系统软件,它负责管理硬件资源、提供用户与计算机之间的接口,并运行其他应用程序。简单来说,操作系统充当了硬件与用户之间的桥梁。

  1. 操作系统的基本功能

    • 进程管理:操作系统通过调度管理CPU执行的各个进程,并提供进程间的同步与通信。
    • 内存管理:操作系统管理物理内存的分配与回收,确保每个程序在运行时能够获取所需的内存。
    • 文件系统管理:负责文件的存储、组织、命名和保护,常见的文件系统有FAT、NTFS、ext4等。
    • 设备管理:操作系统控制所有硬件设备(如硬盘、显示器、键盘、鼠标等)的使用,提供统一的接口。
    • 用户界面:为用户提供使用计算机的接口,如命令行界面(CLI)和图形用户界面(GUI)。
  2. 常见的操作系统
    操作系统主要分为三大类:

    • Windows:微软开发的闭源操作系统,主要用于桌面和企业市场。
    • macOS:苹果公司为其硬件产品设计的操作系统,具有高度封闭和集成的特性。
    • Linux:一个开源、免费的操作系统,具有强大的网络功能和高安全性,广泛应用于服务器、嵌入式设备和开发环境中。

Linux 是本系列文章的重点,我们将在接下来的章节中全面了解 Linux 的基本功能和特点。

二、Linux初识

Linux 是基于 UNIX 设计的开源操作系统,它由 Linus Torvalds 于1991年发布的最早版本发展而来,如今已经成为服务器和开发领域的主流操作系统之一。

1. Linux的特点

Linux 之所以广泛使用,主要有以下几个特点:

  • 开源自由:Linux 是一个自由开放的操作系统,遵循 GPL 开源协议,用户可以自由地修改、分发和使用 Linux 的源代码。这为开发者提供了极大的灵活性和可定制性。

  • 稳定与安全:Linux 系统以其稳定性和安全性著称,特别是在服务器领域,很多大型互联网公司的服务器都基于 Linux 来运行。

  • 多用户、多任务:Linux 原生支持多用户和多任务系统,可以在同一时间内允许多个用户连接并操作系统,这使得它成为开发和服务器管理的理想选择。

  • 支持多种平台:Linux 具有高度的移植性,几乎可以在任何硬件平台上运行,从个人计算机到嵌入式设备,再到超级计算机。

  • 丰富的命令行工具:Linux 的命令行工具非常丰富,几乎可以完成所有的系统管理、文件处理、网络配置等任务,这使得 Linux 尤其适合开发者和系统管理员。

2. Linux的发行版

由于 Linux 是开源的,任何人都可以基于它的内核开发自己的发行版,因此我们看到市场上有大量的 Linux 发行版。常见的 Linux 发行版包括:

  • Ubuntu:基于 Debian 的一个用户友好型发行版,适合初学者和桌面用户使用。它提供了完善的软件包管理系统和图形用户界面,非常适合新手入门。

  • CentOS/Red Hat Enterprise Linux (RHEL):CentOS 是 RHEL 的开源版本,广泛应用于服务器领域。它提供了稳定的企业级解决方案,非常适合生产环境。

  • Debian:一个非常稳定和安全的发行版,很多其他发行版(如 Ubuntu)都是基于 Debian 的。Debian 更适合高级用户和服务器管理员使用。

  • Arch Linux:面向高级用户的一个轻量级发行版,它提供极大的定制灵活性,但配置和安装相对复杂。

  • Fedora:由 Red Hat 支持的社区驱动发行版,它经常集成最新的技术和特性,适合那些想尝试前沿技术的开发者。

3. Linux 的常见应用场景

Linux 的应用范围非常广泛,涵盖了从服务器到嵌入式设备、桌面系统等多个领域:

  • 服务器:由于 Linux 的安全性和稳定性,它几乎占据了全球服务器市场的主导地位。很多互联网公司、大型企业和数据中心都基于 Linux 来运行关键业务。

  • 开发环境:Linux 提供了强大的命令行工具和灵活的开发环境配置,很多开发者选择使用 Linux 进行软件开发,尤其是 Web 开发、嵌入式开发和开源项目的开发。

  • 物联网与嵌入式设备:由于 Linux 具有很高的移植性和灵活性,很多嵌入式设备(如智能家居、物联网设备等)都基于 Linux 来开发。

  • 个人桌面环境:虽然 Windows 和 macOS 在个人桌面操作系统中占据主导地位,但 Linux 发行版(如 Ubuntu、Fedora)也逐渐受到开发者和技术爱好者的青睐,尤其是在编程和系统管理领域。

三、虚拟机介绍

在学习 Linux 之前,为了避免直接修改自己计算机的操作系统,我们可以通过 虚拟机 来搭建一个虚拟化的学习环境。虚拟机是一种软件技术,它可以在一个计算机上运行多个不同的操作系统,每个操作系统都在其自己的虚拟硬件环境中运行,不会影响主机的操作系统。

1. 什么是虚拟机?

虚拟机(Virtual Machine,VM)是指在一个物理计算机上通过虚拟化软件运行的操作系统,它具有独立的计算资源,如 CPU、内存、磁盘和网络接口。虚拟机允许你在现有的操作系统中安装和运行另一个操作系统,而不会影响现有的系统配置。

2. 虚拟机的工作原理

虚拟机的工作原理是通过虚拟化技术将主机的硬件资源虚拟化为一系列软件层次的资源,每个虚拟机可以视作是一个独立的计算机,拥有自己的硬件环境。虚拟机与主机共享 CPU、内存、硬盘等资源,并通过虚拟化软件进行管理和调度。

3. 虚拟机的优势
  • 隔离性:虚拟机之间相互独立,彼此不影响。这意味着你可以在同一台物理计算机上运行多个不同的操作系统,而不会产生冲突。

  • 灵活性:虚拟机可以快速部署和销毁,非常适合开发测试环境。你可以在虚拟机中进行实验,而不必担心损坏主机的操作系统。

  • 多系统运行:虚拟机允许你在同一台计算机上同时运行多个操作系统,如在 Windows 上运行 Linux,或者在 Linux 上运行 Windows。

4. 常见的虚拟化软件

目前市面上有很多流行的虚拟化软件可以帮助你在主机上运行多个操作系统。常见的虚拟化软件包括:

  • VMware Workstation:VMware 提供的一款强大且易于使用的桌面虚拟化软件,适用于个人开发、测试和学习环境。

  • Oracle VirtualBox:免费且开源的虚拟机软件,支持多种操作系统,广泛应用于开发和测试。

  • KVM(Kernel-based Virtual Machine):基于 Linux 内核的虚拟化解决方案,适合服务器虚拟化和生产环境使用。

四、安装 VMware Workstation 虚拟化软件

为了开始使用 Linux,我们需要安装虚拟化软件。VMware Workstation 是目前市场上非常流行的桌面虚拟化工具,它不仅功能强大,易于使用,而且支持多个操作系统。下面将介绍如何在 Windows 系统中安装 VMware Workstation。

1. VMware Workstation 的下载

首先,访问 VMware 的官方网站:VMware Workstation 下载页面,下载最新版本的 VMware Workstation 安装包。

2. VMware Workstation 的安装步骤

安装 VMware Workstation 的步骤非常简单,只需按照以下步骤进行:

  • 运行安装程序:双击下载的安装包,启动 VMware Workstation 安装程序。

  • 同意许可协议:安装过程中会提示你阅读并同意软件许可协议。勾选“我同意”,然后点击“下一步”。

  • 选择安装路径:默认情况下,VMware Workstation 会安装在系统盘的 C:\Program Files\VMware\VMware Workstation 目录

下。你也可以根据需要修改安装路径。

  • 自定义设置:在安装选项中,可以选择是否启用产品更新和用户体验改进计划。如果你只是为了学习使用,可以选择默认设置,点击“下一步”。

  • 安装:点击“安装”按钮,等待安装完成。安装过程可能需要几分钟。

  • 启动 VMware Workstation:安装完成后,运行 VMware Workstation,你就可以开始创建虚拟机并安装 Linux 系统了。

3. VMware Workstation 的优势
  • 跨平台支持:VMware Workstation 支持 Windows 和 Linux 操作系统,可以在这两个平台上运行虚拟机。

  • 强大的硬件虚拟化:VMware Workstation 支持最新的硬件虚拟化技术,可以为虚拟机提供与物理计算机几乎一致的性能。

  • 快照功能:VMware Workstation 提供快照功能,可以随时保存虚拟机的状态,方便回滚到之前的某个状态,非常适合开发测试环境。

总结

在本篇文章中,我们首先概述了操作系统的基本概念与功能,并详细介绍了 Linux 的历史、特点及应用场景。接着,我们介绍了虚拟机的概念与优势,帮助大家了解如何在不影响现有操作系统的情况下体验 Linux。最后,我们详细讲解了 VMware Workstation 的安装步骤,为后续的 Linux 学习打下了坚实基础。

在接下来的文章中,我们将进一步深入 Linux 的实际操作,讲解如何在虚拟机中安装并配置一个 Linux 系统,敬请期待!

相关文章:

【Linux从入门到精通一】操作系统概述与Linux初识

个人名片 🎓作者简介:java领域优质创作者 🌐个人主页:码农阿豪 📞工作室:新空间代码工作室(提供各种软件服务) 💌个人邮箱:[2435024119qq.com] &#x1f4f1…...

Git 深度解析 —— 从基础到进阶

目录 1. Git 基础概念 1.1 版本控制 (Version Control) 1.2 分布式版本控制 (Distributed Version Control) 1.3 核心概念 1.4 Git 工作流程 2. Git 常用命令 2.1 初始化仓库 2.2 添加文件 2.3 提交修改 2.4 查看状态 2.5 查看历史记录 2.6 切换分支 2.7 创建分支…...

PCIE-变量总结

1.changed_speed_recovery: 表示链路双方已经将链路速率协商为更高的速率。 在configuration.complete状态下此变量会reset成0; 当前状态在recovery.rcvrlock状态: 在经过24ms的timeout之后,任何一个已经configured的lane&…...

【iOS】AFNetworing初步学习

文章目录 前言OC的网络请求步骤单例封装网络请求使用AFNetworking进行网络请求 前言 在暑假,学习了一些简单的网络请求的内容,本周学习了AFNetworking的基本使用,通过本篇博客进行一个简单的介绍。 OC的网络请求步骤 简单的网络请求主要有…...

【数据结构】堆的创建

Heap.h #include<stdio.h> #include<stdlib.h> #include<stdbool.h> #include<assert.h>//创建堆结构体 typedef int HPDateType; typedef struct Heap {HPDateType* a;int size;int capacity; }HP;//堆的初始化 void HPInit(HP* php);//堆的销毁 voi…...

Linux下Git操作

一、基本命令 1、创建 git 目录&#xff08;工作区&#xff09; mkdir gitcode 2、创建本地仓库&#xff0c;生成 .git 隐藏目录 git init 3、设置配置项 git config user.name "xxx" git config user.email "....." 4、查看配置项 git config -l …...

缺失d3dx9_42.dll如何修复,d3dx9_42.dll故障的6种修复方法分享

在电脑使用过程中&#xff0c;许多游戏玩家和软件用户可能都遇到过d3dx9_42.dll丢失的问题。这个问题会导致游戏或软件无法正常运行&#xff0c;给用户带来诸多不便。本文将详细解读d3dx9_42.dll丢失的原因、影响及解决方案&#xff0c;帮助大家顺利解决这个问题。 一、d3dx9_4…...

深入理解Android WebView的加载流程与事件回调

文章目录 一、WebView 加载流程时序图二、WebView 加载流程回调函数说明三、AwContents3.1 主要功能和职责3.2 架构和实现3.3 使用场景 四、利用WebView回调函数检测白屏4.1 使用onPageStarted和onPageFinished检测加载时间4.2 利用onReceivedError和onReceivedHttpError检测加…...

机器视觉相机自动对焦算法

第一&#xff0c;Brenner梯度法、 第二&#xff0c;Tenegrad梯度法、 第三&#xff0c;laplace梯度法、 第四&#xff0c;方差法、 第五&#xff0c;能量梯度法。 此实例通过使用Halcon实现5种清晰度算法函数&#xff1a; 1. 方差算法函数&#xff1b; 2. 拉普拉斯能量函数…...

StarTowerChain:开启去中心化创新篇章

官网&#xff1a; www.startower.fr 在当今创新驱动的时代&#xff0c;StarTowerChain 以其独特的去中心化创新模式&#xff0c;为我们带来了新的希望和机遇。去中心化&#xff0c;这个充满活力与创造力的理念&#xff0c;正引领着我们走向未来的创新之路。 StarTowerChain …...

SpringCloudStream使用StreamBridge实现延时队列

利用RabbitMQ实现消息的延迟队列 一、安装RabbitMQ 1、安装rabbitmq 安装可以看https://blog.csdn.net/qq_38618691/article/details/118223851,进行安装。 2、安装插件 安装完毕后,exchange是不支持延迟类型的,需要手动安装插件,需要和安装的rabbitmq版本一致 https:…...

MATLAB中head函数用法

目录 语法 说明 示例 显示矩阵的前八行 显示表的前三行 返回表的前八行 head函数的功能是获取数组或表的顶行。 语法 head(A) head(A,k) B head(___) 说明 head(A) 在命令行窗口中显示数组、表或时间表 A 的前八行&#xff0c;但不存储值。 head(A,k) 显示 A 的前 k …...

golang 基本数据类型

1. go语言的数据类型简介 golang的数据类型分为两大类&#xff0c;一类是基本数据类型和符合数据类型&#xff1b; 按照传递的内容分&#xff1a;传递本身数据和传递地址&#xff1b; golang和java很相似&#xff0c;都是值传递&#xff0c;不过分为传递的值和传递的地址&a…...

各种查询sql介绍

1. 关联查询&#xff08;JOIN&#xff09; 关联查询用于从多个表中检索数据。它基于两个或多个表之间的共同字段&#xff08;通常是主键和外键&#xff09;来组合数据。 内连接&#xff08;INNER JOIN&#xff09;&#xff1a; sql SELECT a.name, b.order_date FROM custome…...

Guava防击穿回源-异步防击穿

异步防击穿策略 在高并发环境下,缓存击穿(Cache Stampede)是一种常见的问题。当缓存中的热点数据失效或未命中时,大量并发请求同时访问后端数据源(如数据库),可能导致后端系统压力骤增,甚至出现崩溃。为了有效防止这种情况,可以利用Guava提供的异步缓存加载机制(类似…...

人工智能正在扼杀云计算的可持续性

可持续性曾是公共云计算中备受推崇的优势。企业和云提供商大肆宣扬他们的绿色计划&#xff0c;推广采用可再生能源的数据中心&#xff0c;以减少碳足迹。 近几个月来&#xff0c;这个话题已悄然淡出人们的视线。罪魁祸首是什么&#xff1f;对人工智能功能的无限需求正在推动云…...

C# 条形码、二维码标签打印程序

1、条码标答打印主界面 2、打印设置 3、生成QR代码 private void GetBarcode_T(string lr) { QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();//创建一个对象 qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE; //设置编码测量…...

嵌入式入门学习——6Protues点亮数码管,认识位码和段码,分辨共阴还是共阳(数字时钟第一步)

0 系列文章入口 嵌入式入门学习——0快速入门&#xff0c;Let‘s Do It&#xff01; 首先新建基于Arduino UNO的protues工程&#xff0c;见本系列第3篇文章 1 点“P”按钮找器件 2 输入“seg”或“digit”查找数码管器件 3 找到我们想要的6位7段数码管 4如图A、B…DP都是段码…...

poisson过程——随机模拟(Python和R实现)

Python实现 exponential()使用&#xff0c;自动poisson过程实现。 import numpy as np import matplotlib.pyplot as plt# Parameters lambda_rate 5 # rate parameter (events per time unit) T 10 # total time# Generate Poisson process times np.random.exponential(…...

100 种下划线 / 覆盖层动画 | 终极 CSS(层叠样式表)集合

还在为你的菜单项和链接寻找动画效果而感到疲惫吗&#xff1f; 不用再找了&#xff01;这里列出了 100 多种不同的动画。从简单的到更复杂的&#xff0c;你肯定能找到自己想要的。 无需 SVG&#xff08;可缩放矢量图形&#xff09;&#xff0c;无需 JavaScript&#xff08;脚…...

华为ICT大赛2024-2025网络赛道考试分析

华为ICT大赛2024-2025正在报名中&#xff0c;网络赛道的同学如何备考&#xff0c;了解考试内容呢&#xff1f; 一、考试概况 华为ICT大赛分为4个赛段&#xff0c;分别为省赛初赛、省赛复赛、中国总决赛&#xff0c;全球总决赛。其中对应的能力级别分别如下&#xff1a; 省赛…...

linux 效率化 - 输入法 - fcitx5

安装 Fcitx5 1. 卸载 ibus 框架 由于 ibus 和 fcitx 可能会冲突&#xff0c;先卸载 ibus&#xff08;暂未确认原因&#xff09; sudo apt remove --purge ibus2. 安装 fcitx5 输入法框架 sudo apt update sudo apt install fcitx5 fcitx5-chinese-addons fcitx5-frontend-gtk…...

YOLOv11改进策略【卷积层】| 替换骨干网络 CVPR-2024 RepViT 轻量级的Vision Transformers架构

一、本文介绍 本文记录的是基于RepVit的YOLOv11轻量化改进方法研究。RepVit的网络结构借鉴ViT的设计理念,通过分离的token mixe和channel mixer减少推理时的计算和内存成本,同时减少扩展比率并增加宽度,降低延迟,并通过加倍通道来弥补参数大幅减少的问题,提高了准确性。本…...

一天认识一个硬件之路由器

今天来给大家分享一下路由器的知识&#xff0c;先来说一下什么是路由器&#xff0c;路由器是一种计算机网络设备&#xff0c;它的主要作用是在不同的网络之间转发数据包&#xff0c;实现数据的传输和共享&#xff0c;介绍完了什么是路由器&#xff0c;再来介绍一下路由器的定义…...

【scene_manager】与 MoveIt 机器人的规划场景进行交互

scene_manager Scene Manager包是由 Robotnik 创建的 ROS 包&#xff0c;旨在帮助构建和与 MoveIt 机器人的规划场景进行交互。 背景信息 MoveIt 规划场景 是一个用于存储机器人周围世界的表示&#xff08;外部碰撞&#xff09;以及机器人自身状态&#xff08;内部碰撞和当…...

数据结构单向链表的插入和删除(一)

链表 一、链表结构&#xff1a; &#xff08;物理存储结构上不连续&#xff0c;逻辑上连续&#xff1b;大小不固定&#xff09;二、单链表&#xff1a;三、单项链表的代码实现&#xff1a;四、开发可用的链表&#xff1a;四、单链表的效率分析&#xff1a; 一、链表结构&#x…...

鸿蒙网络编程系列30-断点续传下载文件示例

1. 断点续传简介 在文件的下载中&#xff0c;特别是大文件的下载中&#xff0c;可能会出现各种原因导致的下载暂停情况&#xff0c;如果不做特殊处理&#xff0c;下次还需要从头开始下载&#xff0c;既浪费了时间&#xff0c;又浪费了流量。不过&#xff0c;HTTP协议通过Range…...

深入拆解TomcatJetty(二)

深入拆解Tomcat&Jetty&#xff08;二&#xff09; 专栏地址&#xff1a;https://time.geekbang.org/column/intro/100027701 1、Tomcat支持的IO模型和应用层协议 IO模型&#xff1a; NIO&#xff1a;非阻塞 I/O&#xff0c;采用 Java NIO 类库实现。NIO2&#xff1a;异…...

单元化架构,分布式系统的新王!

0 关键收获 单元化架构通过减少故障的爆炸半径来增加系统弹性单元化架构是那些任何停机时间都被认为是不可接受的&#xff0c;或者可以显著影响最终用户的系统的一个好选择单元化架构通过强制使用固定大小的单元作为部署单元&#xff0c;并倾向于扩展而不是扩展的方法&#xf…...

【力扣打卡系列】滑动窗口与双指针(乘积小于K的子数组)

坚持按题型打卡&刷&梳理力扣算法题系列&#xff0c;语言为go&#xff0c;Day6 乘积小于K的子数组 题目描述解题思路 双指针移动&#xff0c;遍历右端点right&#xff0c;滑动左端点left子数组的个数&#xff1a;固定右端点r&#xff0c;子数组的个数其实就是从l到r的元…...