GKLBB

当你经历了暴风雨,你也就成为了暴风雨

导航

浅谈生活中常见的三大应用程序架构(PE、ELF、Mach-O)、五大操作系统(windows、linux、macos、android、ios)和三大cpu架构(x86、arm、mips)

·  今天不聊复杂的技术,就是想做一下科普。我们生活中常见的操作系统,大致有5种分别是 

    电脑:   Windows    linux         macos  

    手机           android    ios  

  Windows手机操作系统没有发展起来,不同的操作系统间软件不能兼容,Windows可执行文件后缀exe或msi(底层应用程序架构格式是PE),linux可执行文件后缀deb或rpm(底层格式是ELF),macos可执行文件后缀dmg(底层格式elf ),android可执行文件后缀apk(底层格式是DEX和ELF),ios可执行文件后缀IPA(底层格式Mach-O)。底层格式指得是单文件结构,他们有各自的结构但是说白了其实统统都是压缩包,将一堆指令文件和数据文件打包在一起形成一个单一文件的形式。安装的过程,就是解包这些文件到指定的正确位置。

  最强大的操作系统仍然是windows,不是说win有多么的NB,只是windows+intel=wintel的两个最佳拍档目前在软件生态上已经非常成熟,而其他系统平台的软件远不及wintel,但是手机的 arm+android=andarm 拍档发展迅猛,赶超wintel指日可待

 

  cpu硬件架构有三个   x86  arm  mips  ,x86架构上运行的主要是电脑端系统,arm主要是手机端系统,mips 主要是家用路由器,家用路由器的系统是私有的固件系统。Windows也有arm架构的,android也有x86架构的,但它们都不火,最近在x86上的macos也要整体迁移到arm架构上来,但linux系统几乎在任何架构都有身影

  最强大的架构仍然是x86

 

  位数,位数有三种,一种是应用程序的位数,操作系统的位数,cpu位数,应用程序的位数指的是为多少位数的操作系统创建的,操作系统的位数指的是为多少位数的cpu创建的,cpu位数指的是cpu一次读取处理的数据宽度。应用程序的位数多是64位,操作系统两者都有,cpu位数x86有32位和主流64位,因为有两家生产x86cpu的公司一家是intel和amd,intel生产的32位的x86架构叫IA32,64位叫IA64而amd公司的叫amd32和amd64,虽说x86架构是通用架构的但是还是有intel和amd的产品有细微的区别,arm主流32位但目前64位已经出现,arm的32为架构叫做arm32而arm的64位架构叫aarch64表示arm arch 64,mips主流16位。32位程序和64位程序可以安装在64位操作系统且可以安装在32位和64位的x86架构上。32位操作系统且可以安装在32位和64位的x86架构上但是只能安装32位程序,64位程序不可以安装。要想发挥最大性能,最好是全64位架构机,即就是64位程序运行在64位cpu的64位操作系统上,

  最强大的位数无疑是全64位

 

  RISC与CISC,他们是对cpu而言的,大型unix服务器中cpu常常使用的是RISC,arm cpu也是RISC,其特点就是简单稳定节能,而x86是CISC的,特点就是复杂强大耗电

 

  开源,操作系统只有linux和android开源,三大cpu硬件架构都不开源,目前出现了一个开源架构是risc-v架构

  最强大的开源和应用范围最广的无疑是linux

 

  公司,Windows系统有微软维护,linux没有公司是由社区和基金会维护,android有google维护,macos、ios有苹果维护,x86有intel维护,arm有arm公司维护,mips有mips公司维护

posted on 2020-09-27 21:47  GKLBB  阅读(1556)  评论(0编辑  收藏  举报