科软 | Linux课程总结报告

本文介绍了操作系统的概念,强调内核在管理硬件、系统调用、程序管理、内存管理和设备驱动等方面的作用。同时,探讨了Linux作为内核在不同环境中的应用,特别是Linux发行版和虚拟化技术的重要性,如OpenStack中的KVM和Xen。此外,文章详细阐述了Linux系统执行过程中的进程切换机制。
摘要由CSDN通过智能技术生成

一、操作系统概念

1、操作系统内核(kernel):操作系统本质是一组程序,用于管理计算机所有的活动以及驱动系统中的所有硬件。

2、操作系统的内核直接参考硬件规格写成,因此同一个操作系统不能再不一样的硬件架构下运行。

3、应用程序的开发都是参考操作系统提供的开发接口,所以应用程序只能在该操作系统上运行。

内核功能至少应该具备的功能:

(1)系统调用接口:进一步利用硬件资源,便于同内核通信,有利于开发人员。

(2)程序管理:合理的利用cpu资源,即cpu调度机制。

(3)内存管理:控制系统的内存,提供虚拟内存功能,当内存不足时可以提供内存交换功能。

(4)文件系统管理:数据的输入和输出等,文件格式支持等。

(5)设备驱动:硬件厂商参考系统的提供的开发接口开发驱动程序。

二、Linux概念

1、Linux是一个内核,Linux+softwares+tools才是可安装的系统,称之为Linux distribution(Linux发行版),Linux主要应用环境包括网络服务器、工作站计算机、嵌入式系统和桌面计算机等。

2、虚拟化技术介绍:

虚拟化是云计算的基础。虚拟化使得在一台物理服务器上可以运行多台虚拟机,虚拟机共享物理机的CPU、内存、I/O硬件资源,但逻辑上虚拟机之间是相互隔离的。OpenStack作为IaaS云操作系统,最主要的服务就是为用户提供虚拟机。在目前 OpenStack 的实际应用中,主要使用 KVM 和Xen这两种Linux虚拟化技术。

3 Linux系统的一般执行过程分析

最一般的情况:正在运行的用户态进程X切换到运行用户态进程Y的过程

(1)正在运行的用户态进程X

(2)发生中断——save cs:eip/esp/eflags(current) to kernel stack,then load cs:eip(entry of a specific ISR) and ss:esp(point to kernel stack).

(3)SAVE_ALL //保存现场

(4)中断处理过程中或中断返回前调用了schedule(),其中的switch_to做了关键的进程上下文切换

(5)标号1之后开始运行用户态进程Y(这里Y曾经通过以上步骤被切换出去过因此可以从标号1继续执行)

(6)restore_all //恢复现场

(7)iret - pop cs:eip/ss:esp/eflags from kernel stack

(8)继续运行用户态进程Y

结合课程学习情况谈谈您在 Linux 操作系统分析课程中的收获

对于学生来说,Linux 操作系统分析课程的收获非常多。在 Linux 操作系统分析课程中,我加深了对 Linux 操作系统的理解,这对于未来从事计算机相关工作的人来说非常重要。

在Linux课程中,我主要学习到了以下内容:

  1. 基于 VSCode 的 Linux 内核调试环境搭建
  2. 了解了linux的操作和内核模式
  3. time/gettimeofday 系统调用为例分析ARM64 Linux 5.4.34
  4. 了解 Linux 操作系统中进程切换的过程。
  5. 了解了虚拟化技术下 Linux 系统的一般执行过程。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
1.什么是Linux操作系统? Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。它主要用于基于Intel x86系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品 !   Linux以它的高效性和灵活性著称。Linux模块化的设计结构,使得它既能在价格昂贵的工作站上运行,也能够在廉价的PC机上实现全部的Unix特性,具有多任务、多用户的能力。Linux是在GNU公共许可权限下免费获得的,是一个符合POSIX标准的操作系统。Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有多个窗口管理器的X-Windows图形用户界面,如同我们使用Windows NT一样,允许我们使用窗口、图标和菜单对系统进行操作。   Linux具有Unix的优点:稳定、可靠、安全,有强大的网络功能。在相关软件的支持下,可实现WWW、FTP、DNS、DHCP、E-mail等服务,还可作为路由器使用,利用ipchains/iptables可构建NAT及功能全面的防火墙。 2.Linux的目录结构
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_之桐_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值