当前位置: 首页 > news >正文

建设金融行业网站淘宝网页版电脑版入口淘宝网

建设金融行业网站,淘宝网页版电脑版入口淘宝网,网络营销是学什么的,网站更换备案吗文章目录 什么是嵌入式开发交叉编译查看一些GCC文件夹 调试器GDB相关语法命令 模拟器QEMUQEMU的安装和使用项目构造工具MakeMakeFile的构成make的运行 练习4-1练习4-2练习4-3 什么是嵌入式开发 程序跑到开发板上#xff0c;或者说运行到硬件上 交叉编译 简单理解交叉编译来说… 文章目录 什么是嵌入式开发交叉编译查看一些GCC文件夹 调试器GDB相关语法命令 模拟器QEMUQEMU的安装和使用项目构造工具MakeMakeFile的构成make的运行 练习4-1练习4-2练习4-3 什么是嵌入式开发 程序跑到开发板上或者说运行到硬件上 交叉编译 简单理解交叉编译来说就是生成的程序不在本机上运行而在与本机架构不同的计算机上运行 build生成编译程序的计算机 host运行build计算机生成的编译程序的计算机 target就是编译结果运行的地方 查看一些GCC文件夹 -是符号链接 调试器GDB GDB调试包括2个程序gdb程序和被调试程序。根据这2个程序是否运行在同一台电脑中可以把GDB的调试模型分为2种: 本地调试调试程序和被调试程序运行在同一台电脑中 gdb 运行起来后它会先fork一个子进程被调试的程序会运行在这个单独的子进程中gdb这个程序也会单独运行在一个独立的进程里。然后这两个进程通过独特的ptrace系统调用建立连接。 远程调试调试程序运行在一台电脑中被调试程序运行在另一台电脑中 在目标机会有一个gdbserver的服务gdb会与gdbserver交互由gdbserver代理我们的调试过程被调试的程序是运行在目标机上的而调试是在本机上的。两台机器通过网络连接 相关语法命令 p 变量名称 Print的简写显示指定变量临时变量或全局变量的值。s 执行一行源程序代码如果此行代码中有函数调用则进入该函数。相当于其它调试器中的“Step Into (单步跟踪进入)”。 这个命令必须在有源代码调试信息的情况下才可以使用GCC编译时使用“-g”参数。si si命令类似于s命令但针对汇编指令。n 执行一行源程序代码此行代码中的函数调用也一并执行。相当于其它调试器中的“Step Over (单步跟踪)”。 这个命令必须在有源代码调试信息的情况下才可以使用GCC编译时使用“-g”参数。ni ni命令类似于n命令但针对汇编指令。c Continue的简写继续执行被调试程序直至下一个断点或程序结束。l List的简写列出当前位置之后的10行代码list line_number: 列出line_number之后的十行代码。 模拟器QEMU 此时是模拟用户层的环境类似操作系统 llk运行在用户层 qemu-riscv32 ./llk #在qemu提供的环境上运行llk开发操作系统时要模拟系统级别的层次类似硬件层次 QEMU的安装和使用 项目构造工具Make 以自动化的方式编译程序 -f指定makefile文件 MakeFile的构成 .DEFAULT_GOAL的特殊变量可用于告知如果在命令行中未指定目标(就是只make时候) 应该构建哪个目标或目标。否则Make会简单地使它遇到的第一个目标。 .PHONY:伪目标。伪目标是这样一个目标它不代表一个真正的文件名在执行make时可以指定这个目标来执行所在规则定义的命令有时也可以将一个伪目标称为标签。伪目标通过PHONY来指明。 PHONY定义伪目标的命令一定会被执行 对于到下图中就是clean的里面的命令不管clean是否存在都会执行 $(SRCS_ASM:.S.o) 就是将SRCS_ASH变量里面的.S都替换为.omake的运行 差不多就是一步步套娃 练习4-1 熟悉交叉编译概念使⽤ riscv gcc 编译代码并使⽤ binutils ⼯具对⽣成的⽬标文件和可执⾏文件ELF 格式 进⾏分析。具体要求如下 编写⼀个简单的打印 “hello world” 的程序源文件hello.c对源文件进⾏编译⽣成针对⽀持 rv32ima 指令集架构处理器的⽬标文件 hello.o查看 hello.o 的文件的文件头信息。查看 hello.o 的 Section header table。对 hello.o 反汇编并查看 hello.c 的 C 程序源码和机器指令的对应关系。 -marchrv32ima指定生成后的32位可执行文件可以运行在支持 i 整数指令集 m 乘除法指令集 a 原子操作指令集 -mabiilp32:一个长整数时多少位 riscv64-unknown-elf-gcc -marchrv32ima -mabiilp32 llk.c -o llkfile llkqemu-riscv32 ./llk #在qemu提供的环境上运行llk练习4-2 基于 练习 4-1 继续熟悉 qemu/gdb 等⼯具的使⽤具体要求如下 将 hello.c 编译成可调式版本的可执⾏程序 a.out先执⾏ qemu-riscv32 运⾏ a.out。使⽤ qemu-riscv32 和 gdb 调试 a.out。 练习4-3 ⾃学 Makefile 的语法理解在 riscv-operating-system-mooc 仓库的根⽬录下执⾏ make 会发⽣什么。 SECTIONS \code/asm \code/os \.DEFAULT_GOAL : all all :echo begin compile ALL exercises for assembly samples .......................for dir in $(SECTIONS); do $(MAKE) -C $$dir || exit $$?; doneecho compile ALL exercises finished successfully! .......PHONY : clean clean:for dir in $(SECTIONS); do $(MAKE) -C $$dir clean || exit $$?; done.PHONY : slides slides:rm -f ./slides/*.pdfsoffice --headless --convert-to pdf:writer_pdf_Export --outdir ./slides ./docs/ppts/*.pptx \表示换行。只有执行对应的Makefile命令的shell语句时才会进入shell环境每行命令独立每行都是单独的shell所以上一行定义的shell变量并不适用于下一行。当然如果是使用了\来合并行就可以摆脱这个限制了。就是使之成为一条指令或者是一个shell执行的。图中SECTIONS后的/可以理解就是把下面的和上面的练成一行。不然make执行时每行都是一个单独的shell执行这样SECTIONS就没有成功赋值。加了的话shell就执行三行就可以成功赋值了for in ; do ; done循环语句 在makefile中的shell变量要用2个$号表示变量名称, 对应表示dirmake -C 目录 表示进入目录后执行make||表示前面部分指令执行失败后执行后面的指令 所以大概整个make就是进入code/asm 和code/os目录执行make然后/code/asm 下对应的makefile又是进入各个文件执行make/code/os也一样
http://www.dnsts.com.cn/news/138428.html

相关文章:

  • 门户网站建设的公司成都销售型网站
  • 推广网站挣钱 优帮云网站搭建教程零基础
  • 怎样更新网站wordpress 强制换行
  • 工商网站查询企业信息查询官网关键词网站优化平台
  • 怎么给网站设置搜索关键词 wordpress网站建设课程体会
  • 长沙便宜网站建设英语门户网站织梦源码
  • 简述电子商务网站建设的基本要求6网络股权设计培训课程
  • 网站宣传的重要性安徽建设网
  • 网站制作赚钱吗网站开发动静分离实践
  • 免费行情软件网站有哪些开店怎么做会员系统
  • 像网站的ppt怎么做的百度认证官网
  • pc和移动端网站跳转那个平台能免费做网站
  • 网站域名的分类阿里云免费服务器
  • 专业网站建设最新报价网站建设学习网站
  • 织梦网站主页地址更改厦门创意互动网站建设
  • 苏州个人网站制作亳州公司做网站
  • 增城百度做网站多少钱自学网站建设教程
  • winxp下做网站信息化建设
  • 深圳网站设计公司招聘前端转行可以找啥工作
  • 医疗网站建设网站深圳设计收费标准
  • 北京师范大学学风建设专题网站做相册视频的网站
  • 大连培训通网站建设阿里云的wordpress建站
  • 琼山网站制作长沙门户网站
  • 分类信息建站系统wordpress relevanssi
  • 云南省和城乡建设厅网站wordpress账号密码在哪个文件下
  • 什么语言做网站快浦口区网站建设及推广
  • 企业建站源代码室内设计师培训网
  • 网站开发南京招聘惠州规划建设局网站
  • 为什么大公司开发网站农业电商平台有哪些
  • 萍乡网站建设哪家好图片 网站开发