首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏五分钟学算法

    别人家的孩子!CPU、操作系统、编译器全自主写,刘知远点赞!

    本项目主要将其移植到 MIPS32上,最终可以在组成原理课程编写的 MIPS32处理器上运行。 实现了在自己写的CPU上运行自己写的操作系统,以及自己实现的编译器生成的程序。 项目开源:rCore for MIPS32 - Linux 兼容的 rust 编写的操作系统 rCore for MIPS32这个项目已经在GitHub上开源,感兴趣的读者可以去研究一下: Github 我们主要将其移植到 MIPS32 上。它最终可以在组成原理课程编写的 MIPS32 处理器上运行。 ? 我们自己实现了一个十级双发射顺序 MIPS32 处理器,包含 32 位浮点单元和一个 AES 加速单元。在其上自行设计了 SoC 同时移植了 Linux 操作系统。 、软件工程的联合实验,在组成原理的 ThinPad 实验板上编写的 MIPS32 处理器。

    1.2K40发布于 2019-09-24
  • 来自专栏机器学习算法与Python学习

    清华学霸直博简历火了!CPU、操作系统、编译器全自主写,刘知远点赞

    本项目主要将其移植到 MIPS32上,最终可以在组成原理课程编写的 MIPS32处理器上运行。 实现了在自己写的CPU上运行自己写的操作系统,以及自己实现的编译器生成的程序。 下面是清华大学计算机科学与技术专业本科培养方案中的专业主修课程内容: 项目开源:rCore for MIPS32 - Linux 兼容的 rust 编写的操作系统 rCore for MIPS32这个项目已经在 我们主要将其移植到 MIPS32 上。它最终可以在组成原理课程编写的 MIPS32 处理器上运行。 我们自己实现了一个十级双发射顺序 MIPS32 处理器,包含 32 位浮点单元和一个 AES 加速单元。在其上自行设计了 SoC 同时移植了 Linux 操作系统。 、软件工程的联合实验,在组成原理的 ThinPad 实验板上编写的 MIPS32 处理器。

    1.8K30发布于 2019-09-17
  • 来自专栏数据派THU

    清华学霸直博全自主写CPU、操作系统、编译器!刘知远点赞!(附链接)

    本项目主要将其移植到 MIPS32上,最终可以在组成原理课程编写的 MIPS32处理器上运行。 实现了在自己写的CPU上运行自己写的操作系统,以及自己实现的编译器生成的程序。 项目开源:rCore for MIPS32 - Linux 兼容的 rust 编写的操作系统 rCore for MIPS32这个项目已经在GitHub上开源,感兴趣的读者可以去研究一下: Github 我们主要将其移植到 MIPS32 上。它最终可以在组成原理课程编写的 MIPS32 处理器上运行。 ? 我们自己实现了一个十级双发射顺序 MIPS32 处理器,包含 32 位浮点单元和一个 AES 加速单元。在其上自行设计了 SoC 同时移植了 Linux 操作系统。 、软件工程的联合实验,在组成原理的 ThinPad 实验板上编写的 MIPS32 处理器。

    2.9K40发布于 2019-09-16
  • 来自专栏微信公众号【Java技术江湖】

    清华学霸直博简历火了:CPU、操作系统、编译器全自己写

    在OpenSSL上利用AES单元加速后吞吐率大约为10MBps,同频率下i7-8750H的2.7倍 rCore for MIPS32 - Rust语言实现的Linux兼容操作系统:这是一个操作系统的课程项目 本项目将其移植到 MIPS32 上。它最终可以在组成原理课程编写的 MIPS32 处理器上运行。 关于前面提到的系统都已经在Github上开源了,感兴趣的伙伴们可以仔细研究学习: NonTrivialMIPS -十级流水双射MIPS处理器 这个是参加 “龙芯杯” 的作品,获得特等奖,是一个十级双发射顺序 MIPS32 处理器(Github地址:https://github.com/trivialmips/nontrivial-mips) rCore for MIPS32 - Rust语言实现的Linux兼容操作系统 支持的体系结构:x86_64,RISCV32 / 64,AArch64,MIPS32

    1.2K20发布于 2020-01-14
  • 来自专栏嵌入式ARM和Linux

    MIPS架构深入理解2-MIPS架构体系

    对于MIPS指令集架构描述最好的,肯定是MIPS公司出版的MIPS32和MIPS64架构规范。MIPS32是MIPS64的一个子集,用于描述具有32位通用目的寄存器的CPU。 为了简单,我们缩写为MIPS32/64。 生产MIPS架构CPU的公司,尽量兼容MIPS32/64规范。 在MIPS32/64规范之前,已经发布了多版的MIPS架构。 MIPS32、MIPS64: 1998年,由从Silicon Graphics公司分拆出来的MIPS Technologies Inc.公司制定的标准。 所以,在后面的描述中,我们使用MIPS32/64作为基础架构。到目前为止,MIPS32/64规范已经发布到了第6版。 指令集扩展的规范化—ASE 我们一直强调,RISC和保持指令集小没有关系。 MIPS32/64规范还包含一个mul三目乘法指令,将结果的低字节保存到一个通用目的寄存器中。也就是说,这个指令只能计算相乘的结果小于寄存器大小的情况。

    6.8K20编辑于 2022-08-15
  • 来自专栏全栈程序员必看

    自己动手写CPU之第五阶段(3)——MIPS指令集中的逻辑、移位与空指令

    我尽量每周四篇 5.4 逻辑、移位操作与空指令说明 MIPS32指令集架构中定义的逻辑操作指令有8条:and、andi、or、ori、xor、xori、nor、lui。 MIPS32指令集架构中定义的移位操作指令有6条:sll、sllv、sra、srav、srl、srlv。 MIPS32指令集架构中定义的空指令有2条:nop、ssnop。 另外,MIPS32指令集架构中还定义了sync、pref这2条指令,当中sync指令用于保证载入、存储操作的顺序,对于OpenMIPS而言,是严格依照指令顺序运行的,载入、存储操作也是依照顺序进行的,所以能够将 而且指令码都是6’b000000,也就是MIPS32指令集架构中定义的SPECIAL类。此外,第6-10bit都为0,须要根据指令中0-5bit功能码的值进一步推断是哪一种指令。

    3.9K10编辑于 2022-07-08
  • 来自专栏嵌入式ARM和Linux

    MIPS架构深入理解5-内存管理

    图6-1是一个兼容MIPS32/64规范的TLB项定义。它们的控制使用协处理器0(CP0)寄存器实现。图中的标签就是寄存器的名称。 MIPS32/64规范中允许EntryHi的最大虚拟地址区域,达到64位,然而当前的通用CPU只能实现40位。 下面是一个MIPS32架构的CPU或者MIPS64架构的CPU被当作32位的CPU,处理TLB未命中的处理程序。 如图6-4所示,MIPS32/64架构的Context寄存器为成对的物理地址映射保留了16字节的空间(每个物理页的映射需要8字节),尽管MIPS32的EntryLo0和EntryLo1只是32位寄存器。 其中一个,和MIPS32架构CPU共享,用来处理32位地址空间的转换;另一个入口点为64位架构提供,供其寻址更大的地址空间。

    2.5K20编辑于 2022-08-15
  • 来自专栏giantbranch's blog

    路由器漏洞分析入门:D-Link Service.Cgi远程命令执行漏洞

    squashfs-root/htdocs [oit@ubuntu] [2:06] > file cgibin cgibin: ELF 32-bit LSB executable, MIPS, MIPS32 /htdocs [oit@ubuntu] [2:06] > file fileaccess.cgi fileaccess.cgi: ELF 32-bit LSB executable, MIPS, MIPS32

    43210编辑于 2024-12-31
  • 来自专栏开源运维解决方案

    WGCLOUD支持amd64和x86-64吗

    都支持此外WGCLOUD还支持amd64,amd32,arm32,arm64,macOS,mips32,mips64,riscv64,s390x等平台运行监测支持监测Linux系列:Debian、RedHat

    71761编辑于 2022-09-11
  • 来自专栏嵌入式ARM和Linux

    MIPS架构深入理解3-协处理器0

    但是MIPS32/64架构扩展到了256个寄存器,为了向前兼容,在指令中添加select域来控制多个寄存器。 于是,MIPS32/64架构定义了新的指令:避险指令。 三个避险指令: ehb指令 消除执行危险。早期的MIPS架构CPU把这个当做一个nop操作。 而且大部分时候,对于不遵守MIPS32/64架构规范的CPU还会提供必要的延时。

    2K10编辑于 2022-08-15
  • 来自专栏米扑专栏

    ARM、X86/Atom、MIPS、PowerPC

    1999年,MIPS公司发布MIPS32和MIPS64架构标准,为未来MIPS处理器的开发奠定了基础。新的架构集成了所有原来NIPS指令集,并且增加了许多更强大的功能。 2000年,MIPS公司发布了针对MIPS32 4Kc的版本以及64位MIPS 64 20Kc处理器内核。  2007年12月20日-MIPS科技宣布,扬智科技已取得其针对先进多媒体所设计的可定制化系统单芯片(SoC)核心“MIPS32 24KEc Pro”授权。

    2.7K20发布于 2019-02-19
  • 来自专栏PHP饭米粒

    手把手撸PHP扩展 0x00: 编写config.m4文件

    STUDY_CONTEXT_ASM_FILE="arm64_aapcs_elf_gas.S" fi elif test "$STUDY_CPU" = "mips32 STUDY_OS" = "LINUX"; then STUDY_CONTEXT_ASM_FILE="arm64_aapcs_elf_gas.S" fi elif test "$STUDY_CPU" = "mips32

    1.7K30发布于 2019-07-10
  • 来自专栏黑伞安全

    从一道mips题目学习搭建mips环境及ROP

    github.com/Q1IQ/ctf/blob/master/mips/pwn2 题目初览 首先使用file看一下文件类型,从这里我们能得到的信息是题目是32位的;LSB表示是小端,如果是MSB则表示大端;MIPS32 version 1 (SYSV)表示MIPS的版本,MIPS版本有MIPS32/64、MIPS I到V等等;题目是动态链接的,所以我们需要对应的动态链接库。 各个架构静态编译的gdbserver下载链接https://github.com/e3pem/embedded-toolkit 查看gdbserver的README,本题使用的mips版本为MIPS32

    3.6K20发布于 2020-11-09
  • 来自专栏嵌入式ARM和Linux

    MIPS架构深入理解6-异常和中断

    但是符合MIPS32规范的CPU通过规避,已经不存在这个问题了。 所以,自从在MIPS32架构上添加了向量化中断之后,几乎没有人使用。 奇偶/ECC错误异常 MIPS32架构CPU的内存数据错误只有在Cache中使用时才会发现,然后产生自陷。 但是MIPS32/64架构CPU为中断提供了一个可选的不同的异常入口点,这能节省几个时钟周期。通过Cause寄存器的IV标志位进行使能。 7.5 MIPS32/64架构CPU的中断向量化和EIC中断 MIPS32规范的第二版中,引入了两个新的特性,使中断的处理更为高效。这两个特性就是向量化中断和EIC模式。

    3.6K20编辑于 2022-08-15
  • 来自专栏嵌入式ARM和Linux

    MIPS架构深入理解4-Cache机制

    9 对MIPS32/64高速缓存的编程 兼容MIPS32/64架构的CPU一般具有write-back功能的高速Cache。 但是,与MIPS32/64兼容的CPU必须实现基本的三个操作:索引型失效、Index Store Tag、和Hit Writeback invalidate。 为此,MIPS32/64定义了一对32位寄存器:TagLo和TagHi,使用它们对Cache的Tag部分进行管理。 MIPS32/64定义了store和load两种Cache操作,但它们是可选的,具体依赖于CPU实现。 Tag包含Cache索引之外的所有必须位。 9.4 设置Cache大小和配置 对于兼容MIPS32/64架构的CPU,Cache大小,Cache结构,行大小都可以通过协处理器0(CP0)的Config1-2寄存器获取。

    3.1K31编辑于 2022-08-15
  • 来自专栏嵌入式ARM和Linux

    MIPS架构深入理解7-汇编语言理解

    .set mips0,使用原本的指令集; .set mips3,使用MIPS IV中的指令(64位兼容32位); .set mips32,使用32位指令集; .set mips64,使用64位指令集; 9.3.3 64/32位指令 我们在前面看到,MIPS体系结构扩展到64位(第2.7.3节)时非常注意确保MIPS32程序的行为保持不变,即使它们在MIPS64机器上运行;在MIPS64机器中,MIPS32 MIPS64架构完全兼容MIPS32架构,执行MIPS32指令时,总是使用通用寄存器的高32位,也就是偶数号寄存器。

    4K20编辑于 2022-08-15
  • 来自专栏云深知网络 可编程P4君

    799美金的100G交换机香不香?可惜是美国中情局的重点攻击对象

    和交换芯片之间采用1G带宽直连 MikroTik 主要产品是软路由 在CPU选型方面着实诡异 上一次选择过AWS独家的ARM 这一次是高通公司的2.4G WLAN SOC QCA9531内置的是古老的MIPS32

    69210编辑于 2023-02-15
  • 来自专栏嵌入式ARM和Linux

    MIPS架构深入理解10-向MIPS移植软件之内存序

    read操作抢先于write操作执行 上面已经讨论过,MIPS32/64架构允许这种操作。如果想要软件更加健壮和具有可移植性,就不应该假定read和write操作顺序会被保持。 对于兼容MIPS32/64规范的任何系统,这应该都是有效的。 但是,有效不等于高效。通过提高内存的读写速度也可以降低整体的负荷。有些特定的系统可能会提供更快的内存或者写缓存。

    1.2K10编辑于 2022-08-15
  • 来自专栏JVMGC

    20.8k stars本科生为你开发的十六进制编辑器

    SHA-224, SHA-256, SHA-384, SHA-512 支持多种不同的架构的拆解器 ARM32 (ARM, Thumb, Cortex-M, aarch32) ARM64 MIPS (MIPS32

    1.3K20编辑于 2023-03-10
  • 来自专栏帘卷西风的专栏

    linux安装valgrind

    目前支持的平台,在官网上列表如下:       {x86,amd64,arm,ppc32,ppc64,s390x,mips32,mips64}-linux, arm-android (2.3 and later

    2.5K10发布于 2018-08-03
领券