FreeNOS学习笔记(一)

FreeNOS:FreeNOS(Free Niek的操作系统)是一种基于微内核的实验性操作系统,用于以C ++编写的学习目的。 您可以根据GPLv3的条款随意使用该代码 关于{#mainpage} FreeNOS(Free Niek的操作系统)是一种基于微内核的实验性操作系统,用于以C ++编写的学习目的。 您可以根据GPLv3的条款随意使用该代码。 有关更多信息,访问项目网站 。 产品特点 Intel x86(PC)和ARMv6 / ARMv7架构(Raspberry Pi 1,2,3,Allwinner H2 + / H3) 虚拟内存 简单的任务调度 进程间通信(IPC) 具有MPI支持的对称多处理(通过控制台和以太网) 设备: VGA /键盘控制台(也由Ed的libteken 支持) i8250串行UART PCI主机控制器 CMOS RTC时钟 ATA主机控制器 Allwinner H2 + / H3以太网控制器 环回以太网控制器 文件系统: 虚拟文件系统(VFS) 临时文件系统(TmpFS) Linnenbank文件系统(LinnFS) 网络(IP,UDP,ICMP,ARP) POSIX,ANSI C库 动态和共享内存 全自动测试仪 使用jenkins( )和Vagrant( )自动进行持续集成 Doxygen( 立即下载

本人系统环境为 ubantu 16.04 LTS

1、下载源文件 和 ios镜像文件

下载链接(download目录中):http://www.freenos.org/

2、文件位置:

将源文件包和FreeNOS.ios镜像文件都放在FreeNOS文件夹下

3、终端中安装虚拟机qemu

执行命令:

sudo apt-get install qemu

4、创建虚拟机

首先cd到文件夹FreeNOS中,然后利用 qemu-img 命令创建一个虚拟机:

qemu-img create FreeNOS.img 10G

虚拟机文件名为FreeNOS.img 大小为10G,10G是虚拟磁盘。


之前按网上说的执行 qemu-img create –f qcow2 FreeNOS.img 10G 会出现问题,一直提示size不对,去掉中间的operate项后就ok了。

5、启动虚拟机

利用 qemu-system-x86_64 命令启动虚拟机

qemu-system-x86_64 -m 512 -smp 4 -hda FreeNOS.img -cdrom FreeNOS.iso -boot dc

-m分配虚拟内存,单位为MB,一开始分配4096提示错误!因为我的电脑也才4G内存;-smp分配虚拟硬盘空间,单位为GB;-hda指定虚拟机文件路径和文件名;-cdrom指定ios镜像文件路径和文件名;-boot指定从磁盘启动。执行命令后(成功)打开虚拟机窗口:


执行 uname 会显示名字,执行 ls /bin 会显示可用的命令。

FreeNOS:免费Niek的操作系统(FreeNOS) 关于{#mainpage} FreeNOS(Free Niek的操作系统)是一种基于微内核的实验性操作系统,用于以C ++编写的学习目的。 您可以根据GPLv3的条款随意使用该代码。 有关更多信息,访问项目网站 。 特征 英特尔x86(PC)和ARMv6 / ARMv7架构(Raspberry Pi 1,2,3,Allwinner H2 + / H3) 虚拟内存 简单的任务调度 进程间通信(IPC) 具有MPI支持的对称多处理(通过控制台和以太网) 设备: VGA /键盘控制台(也由Ed的libteken 支持) i8250串行UART PCI主机控制器 CMOS RTC时钟 ATA主机控制器 Allwinner H2 + / H3以太网控制器 环回以太网控制器 文件系统: 虚拟文件系统(VFS) 临时文件系统(TmpFS) Linnenbank文件系统(LinnFS 立即下载

相关推荐

基于开源微内核操作系统FreeNos.zip

基于开源微内核操作系统FreeNos.zip

FreeNOS学习3——了解目录结构和Main函数

下载源码的文件夹,看到里面有以下内容: 解释一下里面都有啥 lib -> 共享代码   1、libfs 文件系统(磁盘管理)   2、liballoc 内存分配和虚拟内存映射(内存管理)   3、libexec 程序代码和数据的处理及获取   4、libmpi 并发编程的一些通信接口   5、libipc 进程间通信接口   6、libnet ...

weixin_38168322的博客 425

fdtd(时域有限差分)仿真

基础入门阶段采用 Step by step 的教学方式带着做具体的案例,在案例中学习 FDTD 应用的。的痛难点,将 FDTD 仿真引入实验当中,通过软件可视化处理有效直观的展示仿真的流程,与实验数。图像传感器,OLED 和液晶,表面计量,表面等离子体,石墨烯,太阳能电池,集成光子组件,超材。料,衍射光学和光子晶体。波,场极化,磁场,周期性结构,半球功率积分等设计解决方案,提供时域有限差分分析函数,时域。子光学传感器、热电子光探测器的光学特性研究、光学微腔宽带吸收器等多个方向的研究方法。

y2715163545的博客 5445

FreeNOS学习笔记之一:下载及安装

文章目录FreeNOS简介微内核概念下载安装 FreeNOS简介 Github上的几个C++开源项目 C++入门后,想通过阅读FreeNOS源代码,深入理解C++与操作系统原理。FreeNOS是一个用C++实现的微内核操作系统,完全基于面向对象,能较好的学习到OOP的设计方式,代码风格比较好,能学习到doxgen,scon以及常见的一些设计模式。 FreeNOS手册 微内核概念 微内核是20世纪80年代后期发展起来的。能有效地支持多处理机运行,适用于分布式系统环境。微内核只将操作系统中最基本的部分放入微内核

weixin_42047065的博客 936

关于Kswapd的理解(一)

关于Kswapd的理解(一) 之前跟踪了MemAvailable的计算方式,其中watermark的计算花了很多精力,在学习的过程中看到一些资料中说watermark是给swapd使用的,于是乎,研究一下看看咯 本部分主要记录两个方面: 对于kswapd这个东西,从初学者(我)的角度出发会考虑哪些内容? 跟踪kswapd 初始化结构部分; 1. KSwapd机制 上图是还没有跟踪kswapd code的时候,对自己提出的一些疑问和自身的理解,主要是如下内容: kswapd 机制用来做什么:内存不足时

And乔的博客 2716

【STM32学习】(29)STM32实现595驱动三个数码管(标准库和HAL库实现)

我选用的单片机型号为:STM32F103系列 74LS595是一个串转并行输出的芯片,它能为单片机节省很多的IO口,应用场景广泛。 现要求三个数码管动态显示,常规设计都是并行实现,需要8个IO数据口,然后还需要3个IO片选数码管接口,这样大大占用了IO口,导致连接的外设变少。因此我们引入74LS595芯片。电路设计如下: 只需要三个共阴极数码管与三个595芯片级联即可完成,通过RCLK,SCK,SER三个IO即可完成对数码管的动态控制并显示。电路焊接的实物图如下: 要求完成功能:实现数.

XiaoCaiDaYong的博客 8265

FreeNOS学习笔记二(阅读)

FreeNOS学习 ## FreeNOS简介:   FreeNOS是github上一个开源项目,该项目是用C++写的一个操作系统微内核,各种宏内核中的服务作为一个独立的services在微内核中,基于消息的通信方式,该项目代码风格良好,完全基于面向对象,还有常见的设计模式,良好的注释,doxygen,scons.   关于如何看   类模板 ...

学而不思则罔,思而不学则殆。 2919

comfyui利用 SkyReels-V2直接生成长视频本地部署问题总结 2 :寻找丢失的model 和工作流中 get set 方法的应用

寻找丢失的model 和工作流中 get set 方法的应用,为什么有写工作流 中有很多断掉的节点,没有相互链接?

AI懒虫 1790

【FreeNOS学习笔记】FreeNOS安装手册

笔者操作系统为Ubuntu16.04,按照官网给的教程结合在网上找到的大家一起踩过的坑,总结出如下安装手册。基本思路是在Ubuntu16.04上安装虚拟机qemu,在虚拟机上跑FreeNOS。 参考博客为: FreeNOS初探索 FreeNOS学习,在Ubuntu16.04的64位计算机上编译32位汇编文件,在SConstruct中添加编译选项 FreeNOS学习笔记 官网安装手册为:官网...

eriHanami的博客 2062

CANFD升级踩坑实录:DBC转换时DLC大于8的信号怎么处理?

本文详细探讨了CANFD升级过程中DLC大于8的信号处理问题,提供了工程化解决方案和AutoSar BSW层配置要点。通过分析CAN与CANFD的DLC本质差异,提出信号拆分重组、DLC重映射和协议层适配三种策略,并给出验证与测试方案,帮助开发者避免数据截断和通信故障。

weixin_42521843的博客 230

Unity 接入 Steam 平台

Unity 接入 steam sdk 的登录和应用内购买功能

MarinaTsang的博客 3904

FreeNOS学习-在Ubuntu安装FreeNOS系统

1. 下载源文件 和 ios镜像文件 下载虚拟机镜像地址: http://www.freenos.org/pub/FreeNOS/iso/X86/index.html 源码下载地址: https://github.com/Neirth/FreeNOS 2.安装qemu QEMU是一套由法布里斯·贝拉(Fabrice Bellard)所编写的以GPL许可证分发源码的模拟处理器,在GNU...

len_yue_mo_fu的博客 807

基于FPGA的超声成像算法的硬件设计

顶层设计如下图: 1. Verilog的硬件设计型号是 ALTERA 2.数据的输入量已经给出,附上的四个矩阵输入都要实现。 3.波束形成部分要在FPGA上完成,最后的matlab的代码部分只是获取数据后的图像显示 4.不需要动态聚焦,只是完成固定的四个不同输入数据的显示即可 5.不需要实物,但要实现硬件的仿真,要有相应的模块图和结构图,类似如下 具体实现过程和最终结果如下: 定义aperture(孔径)大小————输入量,数据已给出,一共四个规格的ape...

FPGA/MATLAB学习教程/源码/项目合作开发 1万+

FreeNOS学习笔记一(安装)

结合网上的教程,终于配置好啦~ 系统环境为ubuntu 16.04 LTS 1、下载源工程 https://github.com/Neirth/FreeNOS 即终端输入将代码clone至本地 git clone https://github.com/Neirth/FreeNOS.git 2、安装scons(用于构建源代码) (scons是Linux下的一种自动构建工具,类似于cm...

学而不思则罔,思而不学则殆。 3135

YOLO11优化:TGRS2026 CKConv结合C3k2 | 方向特征与跨阶段融合协同,小目标漏检率大幅下降

多尺度适配小目标尺寸变化:在 C3k2 不同阶段配置 CKConv 不同核尺度(浅层小核捕获精细纹理,深层大核聚合上下文),兼顾局部细节与全局感知,提升对舰船、车辆等小尺寸目标及红外热目标的检测鲁棒性。

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 565

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

FreeNOS源码编译

FreeNOS是一个使用C++编写的一个具有完整多任务调度,进程间通信以及中断处理等功能作系统,还包括文件系统挂载,文件节点创建,基本上涵盖了一个操作系统启动初期的实地址模式到保护模式的跳转,初始化硬件资源以及实现内核态与用户态的陷阱门接口,加载设备驱动,最后进入shell终端,是学习操作系统很好的一个开源项目。 项目主页 www.freenos.org,也即是FreeNOS的官网,如下: 该项目源码使用C++编写,使用了许多经典的设计模式,模块类,虚函数也运用的十分巧妙,...

danshiming的博客 2572

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

FreeNOS安装与使用指南

FreeNOS是一个开源操作系统项目,致力于提供一个灵活且可扩展的平台,允许开发者和系统管理员高度定制其运行环境。虽然详细的文档可能在官方GitHub仓库中更为全面,但以下内容将简要概括其核心的目录结构、启动文件以及配置文件,以便新用户快速上手。 --- ### 1. **项目目录结构及介绍** FreeNOS的目录结构遵循了典型的类UNIX系统设计原则,确保了一致性和易维护性。以下是关键目...

gitblog_00046的博客 1061

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

在ubuntu上编译运行FreeNOS(一)

网上关于FreeNOS编译运行讲解资料不全,而且大多或多或少存在错误,此处给出实际编译运行步骤以及避免错误操作,为学习FreeNOS搭建一个良好的学习平台。

jeremy的博客 2316

FreeNOS 开源操作系统指南

--- ## 项目介绍 FreeNOS 是一个高度可定制的开源操作系统项目,旨在提供一个轻量级且灵活的平台,适用于从嵌入式设备到服务器等多种场景。由 Niek Linnenbank 领导的开发者社区开发,它强调模块化设计和现代内核技术,支持多种硬件架构,致力于成为开发者和研究者的理想选择。FreeNOS 的设计理念围绕着易用性、稳定性和性能优化展开,它的开源性质鼓励全球开发者贡献代码,共同推动...

gitblog_00552的博客 952

FreeNOS学习1——系统安装和使用

官网安装教程:http://www.freenos.org/doxygen/index.html 整体思路:在Ubuntu操作系统下,安装qemu虚拟机,然后用虚拟机运行FreeNOS的镜像。以下是详细操作步骤: 一、下载必要的开发工具 Update your system repository cache and install the required development ...

weixin_38168322的博客 247

FreeNOS学习笔记之二:目录结构详解

文章目录从哪开始看目录结构 从哪开始看 参考文档:http://www.freenos.org/doxygen/ 从/kernel/intel/pc/Main.cpp开始看 目录结构 下载源码后,目录结构如下: bin/ - 一些常用的命令,CUI,类似Linux shell,源码大多数实现较为简单,大致浏览即可无须细看 config/ - 不同处理器平台下的构建脚本配置文件,用于scons自动化构建,可以先略过,想了解scons时再仔细研究 kernel/ - 操作系统微内核实现,重点,

weixin_42047065的博客 604

编译FreeNOS遇到的坑汇总

听说FreeNOS是个微内核操作系统,且用C++编写,很适合学习操作系统和C++,于是准备研究下,但第一步编译就遇到好多坑,现在汇总如下: 坑1: 从GitHub的https://github.com/nieklinnenbank/FreeNOS 下载FreeNOS源码,发现不同版本的源码目录有的有site_scons目录,有的没有,如下为:master版本的目录结构如下: master版本的没有site_scons目录,编译时报如下错误: scons: Building targets ..

danshiming的博客 2008

FreeNOS的启动

关于FreeNOS的编译,请参见《FreeNOS源码编译》 为了在你本机运行FreeNOS的自动测试程序,在FreeNOS的代码根目录运行如下命令: scons test 为了在Qemu下运行FreeNOS的自动测试程序,在FreeNOS的代码根目录运行如下命令 scons qemu_test 为了在Qemu的虚拟机中运行FreeNOS操作系统,执行如下命令: scons qemu 执行后出现如下登录界面,表示系统成功启动: 用户名输入root,直接回车(密码默认没...

danshiming的博客 922

FreeNOS--项目的README

FreeNOS

weixin_44984622的博客 1014

FreeNOS源码分析 及 目录结构

开源项目FreeNOS源码分析 https://blog.youkuaiyun.com/weixin_38134600/column/info/35091 FreeNOS学习3——了解目录结构和Main函数 https://www.cnblogs.com/grooovvve/p/11409113.html

happylzs2008的专栏 1242

freeNOS代码走读杂记

最近在看github上一个微os的代码,freeNOS.走读的过程中顺便记一下学习的点 枚举用位偏移定义来提高效率 /** * Memory access flags. */ typedef enum Access { None = 0, Readable = 1 << 0, Writable = 1 << ...

toyijiu的专栏 2648
上一篇: 【C++】sizeof各种类型的大小
下一篇: Min Cost Climbing Stairs
Sim0Hayha
博客等级 码龄10年 9粉丝 55原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值