操作系统专题

现成轮子OSAL操作系统抽象层的移植

简单介绍一下Z-STACK中的OSAL,值得一看的现成轮子; 什么是 OSAL? 今天同学忽然问我有没有搞过OSAL,忽然间一头雾水,于是在搜索引擎上找到了答案,发现这是一个十分实用的东西。 OSAL(operating system abstraction layer),操作系统抽象层,是一种以实现多任务为核心的系统资源管理机制,实现了类似RTOS的某些功能,但并不能称之为真正意义上的RT

一个操作系统的实现_十分钟完成的操作系统

步骤: 1.编辑器(例如记事本)写入操作系统启动代码,保存为后缀名为.asm的文件格式         2.安装一款虚拟机软件以wm为例,新建一个虚拟机,注意操作系统与版本都选择其他,创建的最后一步选择[自定义硬件], 进入后选择[添加],选择[软盘驱动器],接着[创建空软盘映像],在虚拟机根目录下任意创建一个后缀名为.img或者.flg的映像文件 (可以新建文本文档,更

如何在Linux操作系统上设置代理

Linux操作系统相信很多人都不陌生,对于一部分程序员来说,Linux操作系统是比Windows操作系统更为熟悉的存在,它依靠Linux命令进行操作,在许多技术领域都发挥着重要的作用,本文将介绍Linux与IP代理的相关知识。 如何在Linux操作系统上设置代理? 在设置前,我们先来熟悉几个常用的Linux命令。 cd: 切换当前目录,是使用者经常需要使用的基础命令之一,帮助用户在指

ubuntu 通过QT修改操作系统时间

最近做一个项目,其中涉及到系统日期时间设置,刚开始也检索和查阅了不少书籍和网贴,但都没有给出清晰可行的方法,在不断的尝试下总结该问题的解决方法如下: 1. 需要用到的头文件有 time.h 2. 实现代码如下:      QDateTime dt = ui->dateTimeEditor->dateTime();    //获取日历控件上用户新设置的日期和时间      time_t tt

机器人操作系统ROS2学习—控制小海龟运动

将Ubuntu系统和ROS2安装完成后,就可以进行调用小海龟运动了。 一、打开Ubuntu系统后,调用终端窗口。有3 种方法可以打开启动终端:  1、通过快捷键Ctr+AIt+T;  2、桌面左下角有个显示应用的菜单,点击后找到终端“Terminal”图标,打开即可; 3、点击鼠标右键,选择“Open in Terminal"也能打开终端。 打开终端界面如下:  二、输入第一个

王道操作系统个人向笔记-第二章

文章目录 2.1 进程2.1.1 进程的概念、组成、特征2.1.2 进程的状态与转换2.1.3 进程控制2.1.4 进程通信IPC共享存储消息传递管道通信 2.2 线程2.2.1 线程的概念2.2.2 线程的实现方式2.2.3 线程的状态与转换 2.3 调度2.3.1 调度的概念、层次2.3.2 进程调度的时机、切换与过程调度方式2.3.3 调度器和闲逛进程2.3.4 调度算法的评价指标2

操作系统-单片机进程状态问题(三态模型问题)

例题:在单处理机计算机系统中有1台打印机、1台扫描仪,系统采用先来先服务调度算法。假设系统中有进程P1、P2、P3、P4,其中P1为运行状态,P2为就绪状态,P3等待打印机,P4等待扫描仪。此时,若P1释放了扫描仪,则进程P1、P2、P3、P4的状态分别为() A.等待、运行、等待、就绪 B.运行、就绪、等待、就绪 C.就绪、就绪、等待、运行 D.就绪、运行、等待、就绪 在题干提示有相关进

【Chapter4】互斥、同步与通信,计算机操作系统教程,第四版,左万利,王英

文章目录 一、并发进程1.1 前驱图的定义1.2 顺序程序及其特性1.2.1 程序的顺序执行1.2.2 顺序程序的特性 1.3 并发程序及其特性1.3.1 程序的并发执行1.3.2 并发程序的特性 1.4 程序并发执行的条件1.5 与时间有关的错误 二、进程互斥2.1 什么是进程互斥2.2 进程互斥原则2.3 进程互斥的软件实现2.3.1 单标志法2.3.2 双标志先检查法2.3.3 双标志

操作系统实验三之进程调度算法

/* 设有两个并发执行的父子进程,不断循环输出各自进程号、优先数和调度策 略。进程初始调度策略均为系统默认策略和默认优先级。父进程收到SIGINT信号时会自动将其优先数加1,子进程收到SIGTSTP 信号时会自动将其优先数减1。*/ #include <stdio.h>#include <stdlib.h>#include <sched.h>#include <sys/time.h>#

操作系统实验二之管道通信实验

设有二元函数f(x,y) = f(x) + f(y)其中: f(x) = f(x-1) * x (x >1)f(x)=1 (x=1)f(y) = f(y-1) + f(y-2) (y> 2)f(y)=1 (y=1,2)请编程建立3 个并发协作进程,它们分别完成f(x,y)、f(x)、f(y) #include <stdio.h>#include <unistd.h>#include

操作系统实验一之进程控制实验

// 编写一个多进程并发执行程序。父进程首先创建一个执行 ls 命令的子进程然后再创建一个执行 ps 命令的子进程,并控制ps 命令总在 ls 命令之前执行。pctl.c#include "pctl.h"int main(int argc,char *argv[]){int i;int pid1;int pid2;int status1;int status2;signal(SIGINT,(s

408操作系统知识点——第二章 进程与线程

文章目录 进程与线程进程的概念和特征进程的概念进程的特征 进程的组成进程控制块(PCB)程序段、数据段 进程的状态与切换进程的状态进程状态的转换进程的组织 进程控制进程的创建进程的终止进程的阻塞和唤醒 进程通信共享存储消息传递管道通信 线程的概念线程的基本概念进程和线程的比较线程的属性线程实现的方式用户级线程内核级线程 多线程模型线程的状态和与转换线程的组织与控制 处理机调度调度的基本概念

【操作系统复习之路】虚拟存储器(第五章)

文章专栏:操作系统复习之路 目录 一、虚拟存储器概述 1.1 局部性原理 1.2 虚拟存储器的定义 1.2 虚拟存储器的特征 二、请求分页存储管理方式 2.1 请求分页中的硬件支持 2.1.1 页表机制 2.1.2 缺页中断机构 2.1.3 地址变换机构 2.2 请求分页中的内存分配 2.2.1 固定分配+局部置换 2.2.2 可变分配+全局置换 2.2.3 可变分配+

操作系统用户界面(三)

3.1 操作系统启动过程 操作系统的启动过程是BIOS和主引导记录MBR。计算机的工作模式有实模式(计算刚加电启动时候)和保护模式(操作系统启动后)。 实模式(实地址模式,REAL MODE) 实模式按照8086寻址方法访问0h-FFFFFh(1MB)空间寻址方式:物理地址(20位)=段地址:偏移地址CPU单任务运行 保护模式(内存保护模式,PROTECT MODE) 寻址方式:段(32

操作系统逻辑结构(二)

2.1  操作系统的逻辑结构 OS的设计和实现思路称为逻辑结构。 逻辑结构的种类 整体式结构层次式结构微内核结构(客户/服务器结构) 整体式结构 以模块为基本单位构建。 特点:模块设计、编码和调试独立;模块调用自由;模块通信多以全局变量形式完成 缺点:信息传递随意,维护和更新困难 层次式结构 分层结构的操作系统所有功能模块按照调用次序排成若干层,相邻层间只有单向依赖或单向调用

操作系统概述(一)

1.1 概述 当使用电脑时候,我们都会先给电脑配置一个操作系统(Operater System, OS)。操作系统是我们和计算机软硬件交互的一个重要接口。常见的桌面操作系统有Windows, Linux, Mac, Unix,操作系统的作用主要概括如下: 提供操作界面控制程序运行管理系统资源配置系统参数监控系统状态工具软件集合 1.2 操作系统的功能和定义 操作系统的功能 操作系统的功能

银河麒麟V10操作系统编译LLVM18踩坑记录

1、简述         要在银河麒麟V10操作系统上编译一个LLVM18,这个系统之前确实也没有用过,所以开始了一系列的摸排工作,进行一下记录。         首先肯定是要搞一个系统,所以去到银河麒麟的网站,填写了一个申请 产品试用申请·国产操作系统、麒麟操作系统——麒麟软件官方网站麒麟软件是专业从事国产操作系统研发和产业化的高新技术企业,旗下拥有银河麒麟、中标麒麟、星光麒麟三大国产操作

每天3分钟操作系统修炼秘籍(17):进程间通信(3):套接字

点我查看秘籍连载 套接字 套接字(Socket)用于协调不同计算机上的进程间通信,也就是基于网络的通信。当然,也可以在本机上使用套接字进行进程间的通信。 套接字通信的方式非常多,有Unix域套接字、TCP套接字、UDP套接字、链路层套接字等等。但最常用的肯定是TCP套接字。所以,这里介绍下TCP Socket通信方式,稍后再单独介绍Unix域套接字。 TCP Socket用于客户端、服务端

Docker 的 Busybox 操作系统镜像

BusyBox是一个遵循GPL协议、以自由软件形式发行的应用程序。 Busybox在单一的可执行文件中提供了精简的Unix工具集,可运行于多款POSIX环境的操作系统,例如Linux(包括Android)、Hurd、FreeBSD等等。 由于BusyBox可执行文件的文件比较小,使得它非常适合使用于嵌入式系统。 作者将BusyBox称为“嵌入式Linux的瑞士军刀”。 在以

操作系统整理(一)

目录 一、引言 二、操作系统 ------>2.1、整体介绍 ------------>2.1.1、kernel主要组件 ------------>2.1.2、内核版本 ------------>2.1.3、qemu 搭建kernel调试环境 ------>2.2、linux启动流程 三、五大子系统介绍 四、IO机制原理与系统总线 ------>4.1、地址的概念 -----

Cobbler 批量安装操作系统

文章目录 环境准备部署cobblercobbler语法检查以及排错问题1问题2问题3问题4问题5问题6问题7问题8修改dhcp模板重启服务,再次检查 镜像配置镜像导入 kickstarts 文件配置最小化安装图形化安装查看kickstart的配置 修改启动菜单 环境准备 [root@cobbler-server ~]# free -htotal used

打造一款属于自己的CentOS操作系统

文章目录 声明关闭selinux以及firewalld修改终端前缀显示修改默认网卡名称为eth0替换yum源安装常用工具优化history配置回收站迎宾显示优化vim清空yum缓存清空历史操作 声明 此操作仅仅只是适合个人学习使用,在vmware中建立虚拟机后,将虚拟机文件压缩打包,只需vmware版本兼容,即可在其他电脑上的vmware中操作和使用 关闭selinux以及

操作系统原理与系统——实验十三多道批处理作业调度(作业可移动)

关键代码 #include<stdio.h>#include<stdlib.h>#include<string.h>typedef struct data{int hour;//当前小时int min;//当前分钟}time;struct node{char name[20];//进程名time arrive;//到达就绪队列时间int zx;//执行时间(预期时间)int si

【操作系统期末速成】​内存管理|内存的装入模块在装入内存的方式|分配管理方式|页面置换算法|页面置换

🎥 个人主页:深鱼~🔥收录专栏:操作系统🌄欢迎 👍点赞✍评论⭐收藏 推荐 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站  前言: 最近在备战期末考试,所以本专栏主要是为了备战期末操作系统这门考试,讲的比较浅显,但是都是期末常考的考点和题型,仅限于“期末不挂”的层面 ​​ 一、内存管理 1.内存管理的概念

考研操作系统-1.计算机系统概述

王道考研操作系统-1.计算机系统概述 操作系统 是指控制和管理整个计算机系统的硬件和软件资源,合理地组织调度计算机的工作和资源的分配;提供给用户和软件方便的接口和环境;是计算机系统中最基本的系统软件。 应包括: 1)能有效地组织和管理四大资源的软件 2)合理地对各类作业进行调度和控制它们运行的软件 3)方便用户使用计算机的软件 计算机系统自上而下大致可以分为4部分:用户、应用程序、操作系统和硬