mips

How to Debug MIPS Interactively

大城市里の小女人 提交于 2020-04-16 03:29:22
问题 I'm taking a course on Computer Organization and Assembly. In class, we're learning MIPS. This is for the purpose of introducing basic concepts, like pipelining. We're writing a handful of simple MIPS programs for class. I'm used to gdb for debugging and learning, and the debugger we use in class is SPIM. SPIM sucks. It allows me to step through a program, but it doesn't allow me to interactively execute MIPS instructions at an arbitrary point of execution. I am immediately tired of having to

documentation of gnu assembler directives

冷暖自知 提交于 2020-04-13 04:09:17
问题 I'm trying to learn mips assembly at the moment. To that end, I wrote a very simple c program... int main(){} ...and compiled it on a mips machine with the -S option to gcc to generate assembly code. Here is what the beginning of the main function looks like: .ent main main: .frame $fp,8,$31 .mask 0x40000000,-8 .fmask 0x00000000,0 I then tried to figure out what this all means by looking at the documentation for gas, but I couldn't find any of these directives there. So what do they mean?

documentation of gnu assembler directives

走远了吗. 提交于 2020-04-13 04:09:07
问题 I'm trying to learn mips assembly at the moment. To that end, I wrote a very simple c program... int main(){} ...and compiled it on a mips machine with the -S option to gcc to generate assembly code. Here is what the beginning of the main function looks like: .ent main main: .frame $fp,8,$31 .mask 0x40000000,-8 .fmask 0x00000000,0 I then tried to figure out what this all means by looking at the documentation for gas, but I couldn't find any of these directives there. So what do they mean?

一步一步pwn路由器之路由器环境修复&&rop技术分析

梦想与她 提交于 2020-03-05 23:41:28
前言 本文由 本人 首发于 先知安全技术社区: https://xianzhi.aliyun.com/forum/user/5274 拿到路由器的固件后,第一时间肯定是去运行目标程序,一般是web服务程序。我们可以去 /etc/init.d/ 找启动文件,或者看看一些有可能的目录。一般来说路由器的程序很少的情况下是可以直接用qemu运行起来的。我们需要做一些修复的工作,本文会介绍一个常用的方法,后面会分析在 mips uclibc 中常用的 rop 手法。 正文 运行环境修复 由于路由器运行时会去 nvram中获取配置信息,而我们的qemu中是没有该设备,路由器中的程序可能会因为没法获取配置信息而退出。我们可以使用 https://github.com/zcutlip/nvram-faker 配合着设置 LD_PRELOAD 环境变量来使用( 类似于一种 hook )。如果你的mips交叉编译工具链和它脚本里面的不一样就要修改它的脚本,比如 编译后把 libnvram-faker.so 和 nvram.ini 放到 / 目录,然后使用 LD_PRELOAD 来加载。即可 sudo chroot . ./qemu-mips-static -E LD_PRELOAD=/libnvram-faker.so /usr/bin/httpd 如果程序还会在其他地方保错,就要自己分析程序

QtSPIM: Explanation for code shown without loading program

假装没事ソ 提交于 2020-03-05 04:07:09
问题 The QtSPIM MIPS assembler already shows some lines of code even though there is no program loaded, like can be seen on https://ecs-network.serv.pacific.edu/ecpe-170/tutorials/qtspim-tutorial. I assume this is required for loading programs, but I would be very interested in an exact explanation to understand all details. 回答1: A QtSPIM program consists of two parts: an exception handler, and a user program. The default exception handler includes both a short user-mode startup code sequence

QtSPIM: Explanation for code shown without loading program

南笙酒味 提交于 2020-03-05 04:06:31
问题 The QtSPIM MIPS assembler already shows some lines of code even though there is no program loaded, like can be seen on https://ecs-network.serv.pacific.edu/ecpe-170/tutorials/qtspim-tutorial. I assume this is required for loading programs, but I would be very interested in an exact explanation to understand all details. 回答1: A QtSPIM program consists of two parts: an exception handler, and a user program. The default exception handler includes both a short user-mode startup code sequence

关于龙芯的争吵我都无语了

我是研究僧i 提交于 2020-03-01 05:45:35
和很多国人一样,龙芯一出世就让俺振奋并一直关注。不过出了汉芯那破事,很多人对国产CPU一直报怀疑态度。可是后来本本都出来了,并且基于龙芯的高性能计算机都出来了,事实明摆在那还有人总是棒杀那就着实让人可气。这不,这几天就和别人吵吵起来了,贴贴回复: 龙芯--中国CPU核自主战略并非失败 3楼:显然楼主不知道啥叫"Verilog综合" tendy:”龙芯和其他号称自主创新的标准不同之处,就是在于其团队敢于承认并非完全自主创新,自己去揭盖子,而不是打肿脸充胖子。“ 这是反串,还是赤果果的无耻? goofegg:什么叫无耻你懂不?龙芯没有丢谁的人。因为龙芯,中国可以自主一个个管子完全清晰的搭起现在适用的CPU,所有的指令集等等都是自己一点点实现的。 授权和技术两码事。授权仅仅是允许你建别人设计的房子,没掌握建房子的技术,授给你建再漂亮再高大的房子的权力都没有用,因为你建不起来,而且也不会有人 教你怎么建。龙芯现在让中国从不会建房子到能够建房子,这种功劳被某些人无视,反诬无耻,真不知道谁到底无耻;现在底层设计都慢慢的掌握了,需要做大的时候才正合时宜的需要这样的授权,仅此而已。 真搞不懂某些人看到这类的消息,就像苍蝇闻到臭肉一样扑过来闹哄一通,龙芯课题组的人忙得很,没功夫理某些鸟人。也就俺这类无聊的看着不爽来掺和掺和。 Lordaeron :無恥之恥, 無恥矣!! 拿國家的錢,

关于龙芯的争吵我都无语了

时间秒杀一切 提交于 2020-03-01 05:45:19
和很多国人一样,龙芯一出世就让俺振奋并一直关注。不过出了汉芯那破事,很多人对国产CPU一直报怀疑态度。可是后来本本都出来了,并且基于龙芯的高性能计算机都出来了,事实明摆在那还有人总是棒杀那就着实让人可气。这不,这几天就和别人吵吵起来了,贴贴回复: 龙芯--中国CPU核自主战略并非失败 3楼:显然楼主不知道啥叫"Verilog综合" tendy:”龙芯和其他号称自主创新的标准不同之处,就是在于其团队敢于承认并非完全自主创新,自己去揭盖子,而不是打肿脸充胖子。“ 这是反串,还是赤果果的无耻? goofegg:什么叫无耻你懂不?龙芯没有丢谁的人。因为龙芯,中国可以自主一个个管子完全清晰的搭起现在适用的CPU,所有的指令集等等都是自己一点点实现的。 授权和技术两码事。授权仅仅是允许你建别人设计的房子,没掌握建房子的技术,授给你建再漂亮再高大的房子的权力都没有用,因为你建不起来,而且也不会有人 教你怎么建。龙芯现在让中国从不会建房子到能够建房子,这种功劳被某些人无视,反诬无耻,真不知道谁到底无耻;现在底层设计都慢慢的掌握了,需要做大的时候才正合时宜的需要这样的授权,仅此而已。 真搞不懂某些人看到这类的消息,就像苍蝇闻到臭肉一样扑过来闹哄一通,龙芯课题组的人忙得很,没功夫理某些鸟人。也就俺这类无聊的看着不爽来掺和掺和。 Lordaeron :無恥之恥, 無恥矣!! 拿國家的錢,

龙芯宣传的自主知识产权没有错

非 Y 不嫁゛ 提交于 2020-02-28 21:44:14
和别人吵架没吵完,继续: 龙芯--中国CPU核自主战略并非失败 midc :要不要重新做指令集什么的这个旁人也许无法说什么. 但是有两点,实在够恶心国人的: 1 自主知识产权. 不管是搞电子的还是其他专业的,绝对会理解为不受国际上任何限制.可是现在呢,又要去买MIPS授权.大家会觉得你这个项目是又一个汉芯.你用人家已有 的专利(别说他那专利在国外),还叫什么自主知识产权?就算你这样搞国产CPU,大家也觉得可行,因为毕竟从设计到生产到应用都是自己搞的,可是你用别人的专利你为什么要大张旗鼓的宣传你是完全自主知识 产权?你这样还不叫恶心? (不得不插一段,上次我查专利,居然有2B公司把cat /proc/cpuinfo这种东西都申请为专利了,说发明了查看Linux系统CPU信息 ) 我觉得有些人在启动这个项目的时候根本就没有任何目的性,你是要用在军方及相关国家保密单位呢?还是要走向市场?你要走向市场当时为什么不考虑到MIPS 在国外授权的问题? 别告诉我走向市场先在国内卖就OK了, IBM ,HP ,SUN,DELL的服务器进中国,国家收了多少关税 ? 小型机且不论,国内的所谓,方正,浪潮,联想之类的X86服务器,成本比人家低这么多?又卖出去多少?君不见各大机房的X86服务器绝大部分都是人家的服 务器吗 ? 服务器如此尚且你新出的非X86的CPU , 市场定位相当的烂

龙芯宣传的自主知识产权没有错

落爺英雄遲暮 提交于 2020-02-28 21:15:37
和别人吵架没吵完,继续: 龙芯--中国CPU核自主战略并非失败 midc :要不要重新做指令集什么的这个旁人也许无法说什么. 但是有两点,实在够恶心国人的: 1 自主知识产权. 不管是搞电子的还是其他专业的,绝对会理解为不受国际上任何限制.可是现在呢,又要去买MIPS授权.大家会觉得你这个项目是又一个汉芯.你用人家已有 的专利(别说他那专利在国外),还叫什么自主知识产权?就算你这样搞国产CPU,大家也觉得可行,因为毕竟从设计到生产到应用都是自己搞的,可是你用别人的专利你为什么要大张旗鼓的宣传你是完全自主知识 产权?你这样还不叫恶心? (不得不插一段,上次我查专利,居然有2B公司把cat /proc/cpuinfo这种东西都申请为专利了,说发明了查看Linux系统CPU信息 ) 我觉得有些人在启动这个项目的时候根本就没有任何目的性,你是要用在军方及相关国家保密单位呢?还是要走向市场?你要走向市场当时为什么不考虑到MIPS 在国外授权的问题? 别告诉我走向市场先在国内卖就OK了, IBM ,HP ,SUN,DELL的服务器进中国,国家收了多少关税 ? 小型机且不论,国内的所谓,方正,浪潮,联想之类的X86服务器,成本比人家低这么多?又卖出去多少?君不见各大机房的X86服务器绝大部分都是人家的服 务器吗 ? 服务器如此尚且你新出的非X86的CPU , 市场定位相当的烂