编译原理讲述了高级语言是如何转化成汇编语言的
计算机组成讲述了汇编语句字典对应的二进制代码如何执行的
OS讲述高级语言如何存储和管理计算机的程序、文件(设备可看成带文件的特殊程序
计网讲述程序如何交互文件
操作系统,是一个浩大的软件工程,充分运用了面向对象的编程思想
- 网络安全也是,只是多用了点数论
- 进程、内存分配进程影响和文件、文件系统、IO的管理都是内核的功能,接受(用户的)系统调用
来管理资源
OS基础概念
程序接口与命令接口(terminal)对比
- 这两种方式都是为了执行系统调用,
- 系统调用函数即为底层内存空间分配,释放,刷新显存,在磁盘空间中新建文件夹…,
- 部分系统调用可以用GUI界面(对应程序接口)实现,但进程终止,切换相关的没找到对应的GUI接口
- 在ubuntu中,进程终止可用命令行
sudo pkill wps-office
实现,
‘C知道’给的回答
程序接口(application-programme interface),可理解为用户程序中调用的系统相关的库函数,
不过也可以用图形界面的点击等操作来调用系统函数;
OS(操作系统)的程序接口和命令接口是两种不同的接口类型,它们分别用于不同的目的和方式与操作系统进行交互。
- 程序接口(API,Application Programming Interface):
程序接口是一组定义了操作系统提供的函数和数据结构的规范,用于编写应用程序和软件库。通过程序接口,开发人员可以利用操作系统提供的功能和服务来创建、运行和管理应用程序。程序接口通常以编程语言的形式提供,如C/C++、Java等。
程序接口的特点:
- 提供了丰富的功能和服务,如文件操作、进程管理、网络通信等。
- 可以通过编程语言直接调用接口函数,实现与操作系统的交互。
- 开发人员可以根据自己的需求和业务逻辑,使用程序接口进行应用程序的开发和扩展。
- 命令接口(CLI,Command Line Interface):
命令接口是一种通过命令行输入文本指令与操作系统进行交互的方式。用户可以通过输入特定的命令来执行操作系统提供的功能和任务。命令接口通常以命令行终端的形式呈现,用户可以直接键入命令并按下回车键来执行。
命令接口的特点:
- 用户通过输入命令来与操作系统进行交互,无需编写代码。
- 提供了一组预定义的命令和参数,用于执行特定的操作和任务。
- 用户可以根据命令的规则和语法,执行不同的操作系统功能,如文件操作、进程管理、系统配置等。
总结:
程序接口主要面向开发人员,通过编程语言调用操作系统提供的函数和服务。而命令接口主要面向用户,通过输入命令行指令与操作系统进行交互。两者是不同的接口方式,用于实现不同的操作系统使用场景和目的。
体现Computer design mind 的硬件进化历程
OS的执行环境
介绍了内核态(把CPU的内核寄存器设置为1即可)可以执行的指令,如何进入内核态,
进入中断的方式也是,把中断寄存器设置为1,
OS程序的软件设计构思
操作系统与内核的区别
内核是操作系统的核心组件,负责管理计算机的硬件资源和提供基本的系统服务。
而操作系统则包括了内核以外的部分,如系统工具、用户界面、应用程序等。
宏内核和模块化的区别
操作系统的模块化和宏内核是两种不同设计思想,它们在操作系统部的组织结构和功能划分上有所不同。
模块化操作系统是将操作系统不同功能模块化,每个模块负责特定的功能,如文件系统、网络协议栈、设备驱动等。这些模块可以独立开发、测试和维护,也可以根据需要进行动态加载和卸载。模块操作系统的优点是提高了系统的可维护性和可扩展性,也使得不同的模块可以并行开发,加快了开发进度。然而,模块化操作系统的缺点是模块之间的接口和通信可能引入额外的开销,对性能有一定影响。
宏内核操作系统则将大部分核心功能集中在一个单一的内核中,包括调度器、设备驱动、文件系统等。宏内核的设计思想是将所有功能紧密集成在内核中,以提高系统性能和效率。宏内核操作系统的优点是具有更高的性能和效率,因为减少了模块之间的通信和切换开销。然而,宏内核操作系统的缺点是内核变得复杂庞大,难以维护和扩展。
总结来说,模块化操作系统注重可维护性和可扩展性,将功能模块化处理;而宏内核操作系统注重性能和效率,将核心功能集成在一个内核中。选择使用哪种设计思想取决于具体的应用场景和需求。
OS启动过程
- 激活CPU,CPU读取/boot/efi/boot程序(主板引导程序),
- 硬件自检,bios程序执行检查指令,check hardware status;
- load device with os,boot界面含有设备(windows硬盘,ubuntu硬盘,U盘)boot顺序,控制权给启动顺序第1位的,对应ubuntu目录=/boot/efi/EFI/,
- 控制权转交后,检查是否可引导,比如你把带文件的U盘放到第一位,这个不可引导,依次找下一个存储设备,比如查找到/boot/efi/EFI/可引导,/boot/efi/EFI/boot为设备引导程序
- 加载可引导设备(硬盘)的主引导记录MBR(=/boot/efi/EFI/boot/xxx)——查找活动分区=操作系统所在分区,
- 找到活动分区/dev/nvme0n1p4=/boot/efi/boot/ubuntu,
加载分区引导记录,/boot/efi/EFI/ubuntu/BOOTX64.CSV,
激活启动管理器,/boot/efi/EFI/ubuntu/grulbx64.efi(OS引导程序) - 加载ubuntu’s grub
- 加载OS
VM
loss
- 对启动过程还是不熟悉,
- 在ubuntu上不会对图片处理,
waste many time, - 接下来是看操作系统及内核是如何管理资源的
今天的文章OS的概念,特征和功能是什么_简述虚拟机的概念[通俗易懂]分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/83828.html