进程-操作系统结构

简介: 进程-操作系统结构

进程-操作系统结构

中文仅本人理解,有错误请联系我。

操作系统为不同方面服务,有不同的设计角度。

为用户: 使用

为程序员:创造

程序员需要关注的就是system call接口的调度

file systems:ntfs,ext4

communication:进程之间通信的服务,让它们可以互相传递数据

UI.(user interfaces)分类:

CLI.:linux shell

GUI:图形化接口

batch:包含命令和指示的一个文件,类似于批处理文件

system call分类:

系统调用的实现代码是操作系统级别的

这个接口通常是面向程序员的

system call开放api,程序员只需要放入api需要的对应参数,得到api返回的对应值。

例如:调用printf这个写在c的lib库中的api

user mode和kernel mode双重模式

用户模式:执行用户代码

内核模式:执行操作系统代码

状态码 0代表内核模式,1代表用户模式

上面知道了操作系统是如何设计陷阱来让一个进程在用户模式和系统模式切换

那么我们在切换到系统模式的时候还需要调用系统级别的函数。

那么上面的问题操作系统是如何实现的呢?

系统调用有一个编号

程序调用时,程序会把需要调用的系统调用好写入一个寄存器,内核从寄存器中读取这个编号,查索引表,确定调用system call函数。

程序产生的进程号是一个随机数,也就是一个动态分配的号码,但是此进程所产生的系统调用号是固定的

操作系统的设计思路

设计目标:

用户目标:美观,舒适度

系统目标:调用api通用性

机制与策略的分离:

机制(machanism):如何做,系统如何调度程序在用户模式和系统模式进行切换

策略(policy):做什么,在多进程(任务)的复杂情况下,谁先谁后是个问题

微内核操作系统:是一个机制和策略分离系统的典型模板如mac os的内核。

GNU/LINUX:

Open-source os

Close-source os

hybrid os

GUN is not Unix

Unix是要钱的,但是GUN的目的是在付费系统上开放软件代码。

GUN项目的发布需要满足GPL

由于开源思想的盛行,并逐渐被一群极客推崇,所以就有了类unix 内核的linux 内核出现

linux著名的发行版本

相关文章
|
19天前
|
供应链 安全 数据处理
操作系统高级议题:并发控制与进程互斥技术
操作系统高级议题:并发控制与进程互斥技术
37 0
|
3天前
|
存储 调度 C++
【操作系统】进程与线程的区别及总结(非常非常重要,面试必考题,其它文章可以不看,但这篇文章最后的总结你必须要看,满满的全是干货......)
【操作系统】进程与线程的区别及总结(非常非常重要,面试必考题,其它文章可以不看,但这篇文章最后的总结你必须要看,满满的全是干货......)
23 1
|
19天前
|
算法 数据库
操作系统:经典进程同步问题的高级探讨
操作系统:经典进程同步问题的高级探讨
20 1
|
3天前
|
存储 负载均衡 算法
深入理解操作系统的进程调度
【6月更文挑战第20天】本文将探讨操作系统中的进程调度,包括其定义、重要性以及常见的调度算法。我们将通过具体的例子和代码片段来深入理解进程调度的工作原理和实现方式。最后,我们将讨论进程调度在现代操作系统中的应用和挑战。
|
5天前
|
调度
操作系统之进程调度机制
操作系统之进程调度机制
9 1
|
5天前
|
存储 缓存 运维
深入理解操作系统:从进程管理到内存分配
在数字时代的心脏,操作系统扮演着至关重要的角色。本文将深入探讨操作系统的核心机制,包括进程管理、内存分配和文件系统,揭示它们如何协同工作以支持现代计算需求。通过技术深度解析和实际应用示例,我们将一窥操作系统的复杂性与优雅,理解其在软件开发和系统性能优化中的重要性。
|
6天前
|
负载均衡 算法 调度
深入理解操作系统之进程调度
本文旨在探究操作系统核心机制之一——进程调度。文章首先概述进程与线程的基本概念,随后详细解析进程调度的目标、常见算法及其优缺点,并探讨现代操作系统中进程调度的高级话题,如多核调度和实时系统的调度策略。通过实例分析,本篇文章将帮助读者深化对进程调度复杂性的理解,并指出未来可能的发展方向。
|
10天前
|
消息中间件 分布式计算 物联网
深入理解操作系统之进程与线程管理
操作系统的核心职责之一是进程与线程管理,它关乎系统的效率和稳定性。本文将剖析进程与线程的基本概念、生命周期以及它们在现代操作系统中的实现机制。通过对比分析,我们将揭示进程与线程的区别、优势及其适用场景,并探讨它们对系统性能的具体影响。进一步,文章将讨论进程间通信(IPC)的几种方式,以及同步和异步处理在多任务环境中的重要性。最后,我们将展望未来操作系统在进程与线程管理方面可能的发展趋势。
|
3天前
|
网络协议 Unix
每天3分钟操作系统修炼秘籍(17):进程间通信(3):套接字
每天3分钟操作系统修炼秘籍(17):进程间通信(3):套接字
8 0
|
25天前
|
安全 Linux 应用服务中间件
操作系统引导过程 与 服务进程的控制
操作系统引导过程 与 服务进程的控制

热门文章

最新文章