linux操作系统的基础知识(Linux操作系统概述)
本文目录
Linux操作系统概述
Linux操作系统概述
Linux是一套可以免费使用和自由传播的,类似于UNIX风格的操作系统。Linux最早是由芬兰人托瓦兹(Linus Torvalds)设计的。下面是关于Linux操作系统概述,希望大家认真阅读!
Linux系统的起源与发展
由于UNIX的商业化,很遗憾,它一般只运行在昂贵的工作台上,普通人难得一见。后来Andrew Tannebaum教授开发了Minix操作系统,发布在网上,供人们免费使用,因为Minix具有UNIX的特点,但是由与UNIX不完全兼容,所以1991年10月托瓦兹自己动手写了一个UNIX PC版本,同年11月,在很多热新的支持者的帮助下开发和推出了第一个稳定的’Linux0.10工作版本。
后来1994年的3月,Linux1.0版本出现,在Linux设计过程中,借鉴了很多UNIX的思想,但是源代码都是重写的。 后面发展迅速并有很多的IT公司的加入开发,这时Linux迅速发展并普及并进入了商业领域。在1995年6月,发布了Linux 2.0版本,强大的它已经支持很多处理器,而且具有了强大的网络功能,并增强了系统的文件与虚拟内存的性能,同时可以为文件系统提供独立的高速缓存设备。
如今它已经受到了更多企业用户的重视,Linux正日益成为一个令人生畏的对手。
linux系统
Linux系统的组成
操作系统是一台计算机必不可少的系统软件,是整个计算机系统的灵魂。Linux操作系统由内核(Kernel),外壳(shell)和应用程序三大部分组成。硬件平台是Linux操作系统运行的基础。
linux系统的内核:内核是linux系统的心脏,是运行程序和管理硬件设备的 核心程序,负责控制硬件设备,管理文件系统,程序流程以及其他工作。
linux系统的外壳:外壳程序是系统的用户界面,提供用户与内核进行交互操作的一种接口。它接收用户命令,传达给内核处理,内核处理并把结果传送到界面。
linux系统的应用程序:1.文本处理工具。2.X Window。3.编程语言和开发工具。4.Internet工具软件。5.数据库。
linux系统的组成
Linux系统的特点
Linux操作系统以它的安全性,高效性和灵活性著称,它能够实现几乎全部UNIX的特性,还具有多任务,多用户的能力。
特点:
自由软件,源码公开多用户多任务并发可靠的安全系统良好的可移植性丰富的网络功能设备的独立性良好的用户界面
;Linux操作系统文件系统基础知识详解
一、linux文件结构 文件结构是文件存放在磁盘等存贮设备上的组织方法。主要体现在对文件和目录的组织上。 目录提供了管理文件的一个方便而有效的途径。 linux使用标准的目录结构,在安装的时候,安装程序就已经为用户创建了文件系统和完整而固定的目录组成形式,并指定了每个目录的作用和其中的文件类型。 /根目录┃┏━━┳━━━┳━━━┳━━━╋━━━┳━━━┳━━━┳━━━┓┃┃┃┃┃┃┃┃┃binhomedevetclibsbintmpusrvar┃┃┏━┻━┓┏━━┳━━┳━━┳━┻━┳━━┓┃┃┃┃┃┃┃┃rc.dcron.dX11R6srcliblocalmanbin┃┏━━━┳━━┳━┻━┳━━━┓┃┃┃┃┃init.drc0.drc1.drc2.dlinuxbinlibsrc linux采用的是树型结构。最上层是根目录,其他的所有目录都是从根目录出发而生成的。微软的DOS和windows也是采用树型结构,但是在DOS和windows中这样的树型结构的根是磁盘分区的盘符,有几个分区就有几个树型结构,他们之间的关系是并列的。但是在linux中,无论操作系统管理几个磁盘分区,这样的目录树只有一个。从结构上讲,各个磁盘分区上的树型目录不一定是并列的。 如果这样讲不好理解的话,我来举个例子: 有一块硬盘,分成了4个分区,分别是/;/boot;/usr和windows下的fat 对于/和/boot或者/和/usr,它们是从属关系;对于/boot和/usr,它们是并列关系。 如果我把windows下的fat分区挂载到/mnt/winc下,(挂载??哦,别急,呵呵,一会就讲,一会就讲。)那么对于/mnt/winc和/usr或/mnt/winc和/boot来说,它们是从属于目录树上没有任何关系的两个分支。 因为linux是一个多用户系统,制定一个固定的目录规划有助于对系统文件和不同的用户文件进行统一管理。但就是这一点让很多从windows转到linux的初学者感到头疼。下面列出了linux下一些主要目录的功用。 /bin二进制可执行命令 /dev设备特殊文件 /etc系统管理和配置文件 /etc/rc.d启动的配置文件和脚本 /home用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示 /lib标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件 /sbin系统管理命令,这里存放的是系统管理员使用的管理程序 /tmp公用的临时文件存储点 /root系统管理员的主目录(呵呵,特权阶级) /mnt系统提供这个目录是让用户临时挂载其他的文件系统。 /lost+found这个目录平时是空的,系统非正常关机而留下无家可归的文件(windows下叫什么.chk)就在这里 /proc虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信 息。 /var某些大文件的溢出区,比方说各种服务的日志文件 /usr最庞大的目录,要用到的应用程序和文件几乎都在这个目录。其中包 含: /usr/X11R6存放Xwindow的目录 /usr/bin众多的应用程序 /usr/sbin超级用户的一些管理程序 /usr/doclinux文档
linux具体要学点什么,基础要学什么
linux最先要学的是Linux基础知识,学完基础知识才算入门,之后还要学习综合架构、Shell编程、数据库、云计算以及网络安全方面的知识,以下是linux基础部分要学习的内容:1. 计算机硬件、组成原理、操作系统基础、Linux起源、核心介绍及Linux安装实战入门2. Xshell远程网络连接Linux、基础优化、远程连接网络基础、Xshell连接故障排错、核心基础命令讲解3. Linux系统核心通配符体系、三剑客(grep,sed,awk)核心正则表达式精讲及企业级案例实战模拟精讲4. Bash核心符号、快捷键、通配符详解5. Linux目录、FHS\挂载、文件属性、核心目录精讲6. Linux文件及目录管理核心知识和命令精讲(第二关)7. Linux企业级基础优化(工作中可直接使用8. Linux文件及目录权限精讲及多个企业案例模拟9. Linux重要核心命令回顾与深入精讲(第三关)
Linux操作系统的知识点总结
Linux操作系统的基础知识并不是很难理解,熟悉掌握基础知识能更好的学习Linux。下面由我为大家整理了Linux操作系统的知识点总结的相关知识,希望对大家有帮助!
Linux操作系统的知识点总结1.操作系统总体介绍
•CPU: 就像人的大脑,主要负责相关事情的判断以及实际处理的机制。
查询指令: cat /proc/cpuinfo
•内存: 大脑中的记忆区块,将皮肤、眼睛等所收集到的信息记录起来的地方,以供CPU进行判断。查询指令: cat /proc/meminfo
物理内存
物理内存,就是我们将内存条插在主板内存槽上的内存条的容量的大小。看计算机配置的时候,主要看的就是这个物理内存
虚拟内存
Windows中运用了虚拟内存技术,即拿出一部分硬盘空间来充当内存使用,当内存占用完时,电脑就会自动调用硬盘来充当内存,以缓解内存的紧张。
关系:windows中虚拟内存和物理内存可能都会被使用,Linux中,只有物理内存使用完了,才会使用虚拟内存
•硬盘: 大脑中的记忆区块,将重要的数据记录起来,以便未来再次使用这些数据。
查询指令: fdisk -l (需要root权限)
Linux操作系统的知识点总结2.内存和硬盘的关系
具体命令后面会介绍
Linux操作系统的知识点总结3.操作系统监控命令》单独写一份
•vmstat
•sar
•iostat
•top
•free
•uptime
•netstat
•ps
•strace
•lsof
Linux操作系统的知识点总结4.如何分析操作系统
实际流程: 读数据》数据》硬盘》虚拟内存(swaP)》内存》cpu缓存》执行队列
分析方向,正好相反
Linux操作系统的知识点总结4.各个部分常出现的漏洞
•CPU: 容易出现该类瓶颈的邮件服务器、动态web服务器
•内存: 容易出现该类瓶颈的打印服务器、数据库服务器、静态web服务器
•磁盘I/O: 频繁读写操作的项目
•网络带宽: 频繁大量上传下载项目
Linux操作系统的知识点总结5.linux本身的一些优化
1. 系统安装优化
当安装linux系统时,磁盘划分、 SWAP内存的分配都直接影响系统性能。对于虚拟内存SWAP的设定,现在已经没有了所谓虚拟内存是物理内存两倍的要求,但是根据经验,如果内存较小(物理内存小于4GB),一般设置SWAP交换分区大小为内存的2倍;如果物理内存大约4GB小于16GB,可以设置SWAP大小等于或者略小于物理内存即可;如果内存在16GB以上,原则上可以设置SWAP为0,但最好设置一定大小的SWAP
• 2. 内核参数优化
例如,如果系统部署的Oracle数据库应用,那么就需要对系统共享内存段( kernel.shmmax, kenerl.shmmni, kernel.shmall)、
系统信号量( kernel.sem)、文件句柄( fs.file0max)等参数进行优化设置;如果部署的WEB应用,那么就需要根据web应用特性进行网络参数的优化,例如修改net.ipv4.ip_local_port_range、net.ipv4.tc_tw_reuse、 net.core.somaxconn等网络
内核参数
• 3. 文件系统优化
在linux下可选的文件系统有ext2,、 ext3、 xfs、 ReiserFS
linux标准文件系统是从VFS开始,然后ext、 ext2, ext2是linux上的标准文件系统, ext3是在ext2基础上增加日志形成的。从VFS到ext3,设计思想没有太大变化,都是早期UNIX家族基于超级块和inode的设计理念设计而成。XFS文件系统是SGI开发的一个高级日志文件系统,通过分布处理磁盘请求、定位数据、保持cache的一致性来提供对文件系统数据的低延迟、高带宽的访问,因此XFS极具伸缩性,非常健壮,具有优秀的日志记录功能、可扩展性强、快速写入等优点。ReiserFS在Hans Reiser领导下开发出来的一款高性能的日志文件系统,通过完全平衡树来管理数据,包括文件数据、文件名及日志支持等。与ext2、 ext3相比,最大的优点是访问性能和安全性大幅提升。具有高效、合理利用磁盘空间,先将的日志管理机制,特意的搜寻方式,海量磁盘存储等优点
Linux操作系统的知识点总结5.重点知识
物理内存和虚拟内存
1.如何查看物理内存和虚拟内存?
Top 命令可以查看物理内存和虚拟内存的数值
2.Buffer
是硬盘控制器上的一块内存芯片,具有极快的存取速度,它是硬盘内部存储和外界接口之间的缓冲器。由于硬盘的内部数据传输速度和外界介面传输速度不同,缓存在其中起到一个缓冲的作用。缓存的大小与速度是直接关系到硬盘的传输速度的重要因素,能够大幅度地提高硬盘整体性能。
3.Cache
CPU缓存(Cache Memory)是位于CPU与内存之间的临时存储器,它的容量比内存小的多但是交换速度却比内存要快得多。缓存的出现主要是为了解决CPU运算速度与内存读写速度不匹配的矛盾,因为CPU运算速度要比内存读写速度快很多,这样会使CPU花费很长时间等待数据到来或把数据写入内存。在缓存中的数据是内存中的一小部分,但这一小部分是短时间内CPU即将访问的,当CPU调用大量数据时,就可避开内存直接从缓存中调用,从而加快读取速度
4.CPU中断
当CPU执行完一条现行指令时,如果外设向CPU发出中断请求,那么CPU在满足响应的情况下,将发出中断响应信号,与此同时关闭中断,表示CPU不在受理另外一个设备的中断。这时,CPU将寻找中断请求源是哪一个设备,并保存CPU自己的程序计数器(PC)的内容。然后,他将转移到处理该中断源的中断服务程序。CPU在保存现场信息,设备服务(如交换数据)以后,将恢复现场信息。在这些动作完成以后,开放中断,并返回到原来被中断的主程序的下一条指令。
5.上下文切换
上下文切换(Context Switch) 或者环境切换
多任务系统中,上下文切换是指CPU的控制权由运行任务转移到另外一个就绪任务时所发生的事件。
在操作系统中,CPU切换到另一个进程需要保存当前进程的状态并恢复另一个进程的状态:当前运行任务转为就绪(或者挂起、删除)状态,另一个被选定的就绪任务成为当前任务。上下文切换包括保存当前任务的运行环境,恢复将要运行任务的运行环境。
进程上下文用进程的PCB(进程控制块,也称为PCB,即任务控制块)表示,它包括进程状态,CPU寄存器的值等。
通常通过执行一个状态保存来保存CPU当前状态,然后执行一个状态恢复重新开始运行。
上下文切换会对性能造成负面影响。然而,一些上下文切换相对其他切换而言更加昂贵;其中一个更昂贵的上下文切换是跨核上下文切换(Cross-Core Context Switch)。一个线程可以运行在一个专用处理器上,也可以跨处理器。由单个处理器服务的线程都有处理器关联(Processor Affinity),这样会更加有效。在另一个处理器内核抢占和调度线程会引起缓存丢失,作为缓存丢失和过度上下文切换的结果要访问本地内存。总之,这称为“跨核上下文切换”。
6.进程和线程
进程概念
进程是表示资源分配的基本单位,又是调度运行的基本单位。例如,用户运行自己的程序,系统就创建一个进程,并为它分配资源,包括各种表格、内存空间、磁盘空间、I/O设备等。然后,把该进程放人进程的就绪队列。进程调度程序选中它,为它分配CPU以及其它有关资源,该进程才真正运行。所以,进程是系统中的并发执行的单位。
线程概念
线程是进程中执行运算的最小单位,亦即执行处理机调度的基本单位。如果把进程理解为在逻辑上操作系统所完成的任务,那么线程表示完成该任务的许多可能的子任务之一
进程和线程的关系
(1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。 (2)资源分配给进程,同一进程的所有线程共享该进程的所有资源。
(3)处理机分给线程,即真正在处理机上运行的是线程。
(4)线程在执行过程中,需要协作同步。不同进程的线程间要利用消息通信的办法实现同步。
更多文章:
微信红包自动抢最佳 抢红包神器1秒抢定全自动?抢红包神器能不能抢最佳的
2024年6月27日 21:33
免费能收黄台的app(最全的软件下载app,下载应用用什么软件好)
2024年8月20日 10:30
手机qq2011安卓版下载(安卓版手机QQ2011怎么官网没有下载了)
2024年5月17日 22:54
英雄联盟手游盒子助手(《英雄联盟》手游有没有盒子助手之类的)
2024年8月30日 23:40
网页版的微信可以在手机上登录吗有什么危险吗?微信网页版公众号在哪儿看
2023年12月6日 00:40
360直播吧足球直播无插件直播(360直播苹果手机怎么安装)
2024年7月7日 23:25
有人说买不起房子的都是懒人,你怎么看?租房有什么办法可以跳过中介找到合适的房子
2024年5月5日 18:18