or1200下Raw-OS学习(仿真环境篇)

2024-04-19 14:38
文章标签 学习 环境 仿真 os or1200 raw

本文主要是介绍or1200下Raw-OS学习(仿真环境篇),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        貌似最近都在公司混日子过了,怎么办?哎哎哎~罪过啊罪过,不过也是的,加工资居然没我份,顶领导个肺的,叫我怎么继续活啊~哎哎哎~

        算了,不谈这些鸟事情了,说多了都是泪啊,这篇blog开始我们进入raw-os的api学习,为期大概是2个月吧,因为我从来没有接触过操作系统,好多东西都要补,本科学的是通信专业,妹的天天搞电路,不是放大器就是滤波器,不是锁相环就是AGC,天天搞天天搞,搞到现在出来工作了分配到个做软件的岗位,天朝就是这个坑爹来的么,从来都不懂什么叫资源合理分配,不过也没办法了,有时也找找自身的原因,不要去做愤青了~

        这篇blog先说说在openrisc架构体系下如何做验证raw-os的程序吧,至于实验环境还是官方提供的ubuntu镜像,因为这样我们就可以不用手动地区编译万恶的cross-tools,这些手动编译起来超级麻烦。



        至于官方提供的是vbox的镜像,真是什么都是开源的,打开深入之后就是这个样子的了,里面都是一些文档,至于环境搭建请参考《or1200软件环境搭建》,由于如果只是学习raw-os里kernel提供的APIs的话,现在可以不用去搭建FPGA上的SOC,这样学起来会比较快。

        但是我个人是不太喜欢用图形界面去搞的,在linux上命令行才是王道,所以呢,用linux的text模式登陆吧,类似于ubuntu server版本的情况,官方怎么不用server版呢,可能要迎合大众的口味吧~

        好吧,修改grub文件,如下图啦~

        命令是:sudo gedit /etc/default/grub



        然后对着:

        GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

        GRUB_CMDLINE_LINUX=""


        改为:

        GRUB_CMDLINE_LINUX_DEFAULT="quiet splash text"

        GRUB_CMDLINE_LINUX="vga=789"


        至于“vga=789”这个参数呢,貌似是有个参数表的,这个是修改成800*600的分辨率和24bit色的,这个为了分辨率而弄,具体可以google一下有关文章咧~

        好,保存,然后更新配置选项。

        命令:sudo update-grub



        OK,到此你就可以reboot你的系统了。

        命令:sudo reboot


        然后等再开机你会发现你没进入图形界面了,这个应该是一片黑的,然后在你的本本的键盘上激活控制台。

        命令:crtl+alt+f1~f6均可~默认开启是有6个tty控制台的,现在用crtl+alt+f2来激活tty2

        账号密码均为:openrisc


        登录进来,这里就是linux万恶的命令行模式,在这里我们就可以在纯软件而不用硬件平台去验证所写的raw-os程序,然后我们就一个例子看看如果使用这个环境。

        至于txj老大会不会最后选择FPGA平台的openrisc架构作为Raw-OS的下一个发展方向,我都会全力支持陈sir的伟大宏愿的~支持~v587,至于所写的例程都会作为学习raw-os的入门文档,当然也要希望各位去捧场lor~


        不废话了,接下来看看怎么使用这个环境吧~

        在这个tty的环境中和进了图形界面的terminal环境没什么区别的,唯一不能的就是图形复制和粘贴操作,这个比较可恨,遇到一个你比较长的命令的话就要敲半天,但是也没关系了,码农唯一一个技能就是能码,你吹我不胀,要不也可以写个shell脚本从windows那边粘贴命令过来连续执行。

        顺便了,在这个环境还能强制我们用shell和VIM,想转linux环境的最好还是自己逼迫自己使用这些东东吧。


        一个例子,这个有关定时器的一个例程了,这个星期会转入到任务同步和通信的学习,首先是信号量,然后再慢慢加深。


        1.首先挂在windows上的共享文件夹,目录根据自己的环境定哈~



        2.再然后看看共享文件夹里面关于raw-os工程的目录结构

        之前移植raw-os的blog里又说这个文件目录结构,这里不细说了~



        3.然后打开or1ksim.cfg文件,这个就是在linux中利用or1ksim这个软件架构模拟openrisc运行行为的配置文件,至于or1ksim已经安装好在官方提供的镜像了,这里就直说用法啦~

        找到section uart,修改成,这样就能在tty控制台观察到log了~



        4.然后回到tty里面,因为工程已经写好,就直接make了,在tty里面就是比在terminal里面的速度快好几倍~爽啊~


        到最后会生成boot.or32文件,这个就是or1ksim能识别的执行文件


        5.输入命令sim -f or1ksim.cfg boot.or32,回车,就可以观察到代码的运行情况,这样在软件上验证代码比起每次都要拿个开发板去验证爽多了



        因为现在软件这边打算在一个产品上上Raw-OS,现在是学习和验证Raw-OS的,因为软件这边是我全部负责的,所以用什么技术不用经过领导评审,哇哈哈~用的是TI的cortex-M4的单片机,话说TI也太恶心了,明明量产了,供货周期居然要18个月,你妹的,不过也好,我刚好能把软件重写一遍~上Raw-OS去跑~

        希望大家能继续支持Raw-OS的发展,小弟我也默默在支持支持~

这篇关于or1200下Raw-OS学习(仿真环境篇)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/917821

相关文章

Android开发环境配置避坑指南

《Android开发环境配置避坑指南》本文主要介绍了Android开发环境配置过程中遇到的问题及解决方案,包括VPN注意事项、工具版本统一、Gerrit邮箱配置、Git拉取和提交代码、MergevsR... 目录网络环境:VPN 注意事项工具版本统一:android Studio & JDKGerrit的邮

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Python如何自动生成环境依赖包requirements

《Python如何自动生成环境依赖包requirements》:本文主要介绍Python如何自动生成环境依赖包requirements问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录生成当前 python 环境 安装的所有依赖包1、命令2、常见问题只生成当前 项目 的所有依赖包1、

Redis在windows环境下如何启动

《Redis在windows环境下如何启动》:本文主要介绍Redis在windows环境下如何启动的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Redis在Windows环境下启动1.在redis的安装目录下2.输入·redis-server.exe

Pytest多环境切换的常见方法介绍

《Pytest多环境切换的常见方法介绍》Pytest作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进... 目录1.pytest-base-url2.hooks函数3.yml和fixture结论你是否也遇到过

浅谈配置MMCV环境,解决报错,版本不匹配问题

《浅谈配置MMCV环境,解决报错,版本不匹配问题》:本文主要介绍浅谈配置MMCV环境,解决报错,版本不匹配问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录配置MMCV环境,解决报错,版本不匹配错误示例正确示例总结配置MMCV环境,解决报错,版本不匹配在col

Centos环境下Tomcat虚拟主机配置详细教程

《Centos环境下Tomcat虚拟主机配置详细教程》这篇文章主要讲的是在CentOS系统上,如何一步步配置Tomcat的虚拟主机,内容很简单,从目录准备到配置文件修改,再到重启和测试,手把手带你搞定... 目录1. 准备虚拟主机的目录和内容创建目录添加测试文件2. 修改 Tomcat 的 server.X

VSCode配置Anaconda Python环境的实现

《VSCode配置AnacondaPython环境的实现》VisualStudioCode中可以使用Anaconda环境进行Python开发,本文主要介绍了VSCode配置AnacondaPytho... 目录前言一、安装 Visual Studio Code 和 Anaconda二、创建或激活 conda

pytorch+torchvision+python版本对应及环境安装

《pytorch+torchvision+python版本对应及环境安装》本文主要介绍了pytorch+torchvision+python版本对应及环境安装,安装过程中需要注意Numpy版本的降级,... 目录一、版本对应二、安装命令(pip)1. 版本2. 安装全过程3. 命令相关解释参考文章一、版本对