Linux基础入门

1.1****什么是计算机

计算机的组成:
1 、 控制器 ,是整个计算机的中枢神经,根据程序要求进行控制,协调计算机各部分工作及内存与外设的 访问等。
2 、 运算器 ,功能是对数据进行各种 算术运算逻辑运算
3 、 存储器 ,功能是存储程序、数据和各种信号、命令等信息。
4 、 输入设备 ,输入设备的作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。常见的输入设备有键盘、鼠标等。
5 、 输出设备 ,它把计算机计算后的信息输出出来。常用的输出设备有显示终端、打印机、绘图仪等。

计算机的功能: 接收输入设备的指令和数据,经过 cpu 的数据和逻辑运算处理产生有用的信息存储起来
或者输出到屏幕上。
那么我们的计算机所接受到的指令和数据都是什么样的呢?
其实我们的计算机只认识0,1代码。早期对计算机的全部操作都是采取人工操作方式进行的,早期的操作方式是由纸带或卡片打孔和没打孔来代替0 和 1 输入计算机来实现一些功能的,就相当于是直接使用机器语言让计算机工作。但是使用机器语言去操控计算机有几个缺点:
第一:需要了解机器语言。
第二:需要了解所有硬件的相关功能函数。因为你的程序必须要写给机器看,你就得去参考机器本
身的功能,然后针对该功能去编写程序代码。例如你要让 DVD 影片能够放映,那就得要参考 DVD 光驱的硬件信息。看参考手册是很费劲的。
第三:程序不具有可移植性。每个 CPU 都有独特的微指令集,同样,每个硬件都有其功能函数。
第四: 程序具有专一性。因为这样的程序必须要针对硬件功能函数来编写,如果已经开发了一个浏览器程序,想要再开发文件管理程序时,还得要从头参考硬件的功能函数来继续编写。
为了解决这几个问题,计算机科学家就设计出一种让人类看得懂的程序语言,然后创造一种 " 编译器 " 来将这些人类写的程序语言翻译成机器能看懂的机器码。这样一来我们修改与编写程序就变得容易多了。
目前常见的编译器有 C , C++ , JAVA 等。
但是,在这样的环境下我们还得要考虑整体的硬件系统来设计程序。举例来说:当你需要将运行的数据写入内存中,你就得要自行分配一个内存块出来让自己的数据能够填上去,所以你还得要了解到内存的地址是如何定位的。为了要克服硬件方面老是需要重复编写句柄的问题,所以就有了操作系统。

1.2****操作系统简介

操作系统是什么 ?操作系统( Operating System ,简称 OS )是管理和控制计算机硬件与软件资源的计算机程序,是配置在计算机硬件上的第一层软件,任何其它软件都必须在操作系统的支持下才能运行。
操作系统的主要工作是由操作系统内核实现的,操作系统内核提供一系列具备预定功能的多内核函数, 通过一组称为系统调用的接口(应用编程接口API ,由操作系统实现提供的所有系统调用所构成的集合, 是应用程序和系统之间的接口)呈现给用户。
操作系统内核的功能
系统调用接口:程序员通过该接口与内核进行通信
程序管理:一部计算机可能同时间有很多的工作在等待 CPU 运算处理,内核这个时候必须要能够控
制这些工作,让 CPU 的资源做有效的分配才行。
内存管理:控制整个系统的内存管理,系统所有的程序代码与数据都必须要先存放在内核当中。通
常内核会提供虚拟内存的功能,当内存不足时可以提供内存交换的功能。
文件系统管理 :例如数据的输入和输出等的工作,还有不同文件格式的支持等。
设备驱动:硬件的管理是内核的主要工作之一,设备的驱动程序就是内核管理着硬件的代码,设备
的驱动程序可以使硬件准备好工作,时刻等待着程序的调用。好在目前都有所谓的 " 可加载模块 " 功
能,可以将驱动程序编辑成模块,就不需要重新编译内核。

系统调用把应用程序的请求传给内核,调用相应的内核函数完成所需的处理,将处理的结果返回给应用程序。
常见的操作系统: UNIX 、 Linux 类、 MacOS 、 Windows 类、 iOS 、 Android 、 ChromeOS 等等

1.3为什么要学习Linux

Linux 因其高效率、易于裁剪、应用广等优势,成为了当今中高端服务器的主要操作系统,并且处于一个不可替代的地位。
Linux成为开源软件的代名词
陪伴互联网时代的7大开源软件
加密互联网的安全协议OpenSSL
数据仓库大王--MySQL
万能开发工具Eclipse
互联网的门卫Apache
大数据的心脏Hadoop
互联网的排版引擎WebKit
Linux 在服务器领域发展良好,尤其在政府、金融、农业、交通、电信等国家关键领域已经形成了
大规模的市场应用
Linux 在桌面领域的发展良好,国内如中标麒麟 Linux 、红旗 Linux 、深度 Linux 等系统软件厂商都推
出的 Linux 桌面操作系统,另外 SUSE 、 Ubuntu 也相继推出了基于 Linux 的桌面系统,特别是
Ubuntu Linux ,已经积累了大量社区用户
Linux 的低成本、强大的定制功能以及良好的移植性能,使得 Linux 在嵌入式系统方面也得到广泛应
用,目前 Linux 以广泛应用于手机、平板电脑、路由器、电视和电子游戏机等领域。
Linux 在云计算 / 大数据领域的发展互联网产业的迅猛发展,促使云计算、大数据产业的形成并快速
发展

1.4 Linux 特点

开源软件的特点就是把软件程序与源代码文件一起打包提供给用户,让用户在不受限制地使用某个软件功能的基础上还可以按需进行修改,或编制成衍生产品再发布出去。用户具有使用自由、修改自由、重新发布自由以及创建衍生品的自由。这也正好符合了黑客和极客对自由的追求,因此国内外开源社区的根基都很庞大,人气也相当高。
开源软件最重要的特性:
低风险:使用闭源软件无疑把命运交付给他人,一旦封闭的源代码没有人来维护,你将进退维谷;
而且相较于商业软件公司,开源社区很少存在倒闭的问题。
高品质:相较于闭源软件产品,开源项目通常是由开源社区来研发及维护的,参与编写、维护、测
试的用户量众多,一般的 bug 还没有等爆发就已经被修补。
低成本:开源工作者都是在幕后默默且无偿地付出劳动成果,为美好的世界贡献一份力量,因此使
用开源社区推动的软件项目可以节省大量的人力、物力和财力。
更透明:没有哪个笨蛋会把木马、后门等放到开放的源代码中,这样无疑是把自己的罪行暴露在阳
光之下。
Linux 的特点
源代码开放
真正的多用户多任务
完全兼容 POSIX 标准
强大的可移植性
丰富的网络功能
良好的用户界面
可靠的系统安全
高度的稳定性

1.5 Linux****的应用领域

服务器领域
桌面应用领域 嵌入式系统
集群、虚拟化、云计算、大数据平台基石

1.6 Linux****的发行版本


Red Hat Enterprise Linux 简介
Red hat Linux 9 之后,发展为两个分支:
社区版 : Fedora (Cloud 云端 /Server 服务器 /Workstation 工作站 三大版本 )
企业版: Enterprise
最新版: Red Hat Enterprise Linux 8.0
派生版: CentOS 、 Scientific Linux 、 Oracle Linux

1.7 Linux****认证

Linux 的相关认证比较多,其中红帽的Linux 认证和LPI 的认证比较常见。
红帽 Linux 认证

RHCSA 英文全称: Red Hat Certified System Administrator ,中文全称:红帽认证系统管理员
RHCE 英文全称: Red Hat Certified Engineer ,中文全称:红帽认证工程师。
RHCA 英文全称: Red Hat Certified Architect ,中文全称:红帽认证架构师。
RHCSS 英文全称: Red Hat Certified Security Specialist ,中文全称:红帽认证安全专家。
RHCDS 英文全称: Red Hat Certified Datacenter Specialist ,中文全称:红帽认证数据中心专家。
RHCVA 英文全称: Red Hat Certified Virtualization Administrator ,中文全称:红帽企业虚拟化管理
红帽 OpenStack 认证工程师
红帽 OpenStack 认证系统管理员

相关推荐
此生只爱蛋13 分钟前
【Linux】正/反向代理
linux·运维·服务器
qq_54702617919 分钟前
Linux 基础
linux·运维·arm开发
zfj32125 分钟前
sshd除了远程shell外还有哪些功能
linux·ssh·sftp·shell
废春啊32 分钟前
前端工程化
运维·服务器·前端
我只会发热35 分钟前
Ubuntu 20.04.6 根目录扩容(图文详解)
linux·运维·ubuntu
爱潜水的小L1 小时前
自学嵌入式day34,ipc进程间通信
linux·运维·服务器
保持低旋律节奏1 小时前
linux——进程状态
android·linux·php
zhuzewennamoamtf1 小时前
Linux I2C设备驱动
linux·运维·服务器
zhixingheyi_tian1 小时前
Linux 之 memory 碎片
linux
邂逅星河浪漫1 小时前
【域名解析+反向代理】配置与实现(步骤)-SwitchHosts-Nginx
linux·nginx·反向代理·域名解析·switchhosts