b2c信息网

您现在的位置是:首页 > 明日新闻 > 正文

明日新闻

国产cpu公开源码下载(中国开源代码)

hacker2022-06-08 14:58:29明日新闻91
本文目录一览:1、大虾,我还是不懂如何获取cpu的id呀有源码吗?帮个忙呀我刚接触

本文目录一览:

大虾,我还是不懂如何获取cpu的id呀 有源码吗? 帮个忙呀 我刚接触

// 本函数用来获取 CPU 的 ID 信息

// 结果保存在当前目录下的 cpu_id_info.txt 文件中

void GetCpuID()

{

// 定义一些变量,用于存储 CPU 的 ID信息

BYTE szCpu[16] = { 0 };

UINT uCpuID = 0U;

// 以写追加的方式打开用来保存结果的文件

FILE *pf = fopen("./cpu_id_info.txt", "a+");

// 对文件指针的有效性进行判断

assert(NULL != pf);

if (NULL == pf)

return;

// 调用汇编代码,获取 CPU ID 信息

_asm

{

mov eax, 0

cpuid

mov dword ptr szCpu[0], ebx

mov dword ptr szCpu[4], edx

mov dword ptr szCpu[8], ecx

mov eax, 1

cpuid

mov uCpuID, edx

}

// 把结果输出到文件中

fprintf(pf, "cpu id is %u, info is %s", uCpuID, szCpu);

// 关闭文件指针在内存中的映射

fclose(pf);

}

国产CPU和国产操作系统大揭底:究竟都有啥

近日,龙芯在北京开了一场盛大的发布会,并声称和Intel最强技术只有30%的差距。因为从某个角度上看,龙芯更是一个自主设计的产品,作为一个中国人是应该感到兴奋的。但龙芯的发布会又让我们对国产CPU的真实状况和搭配的国产操作系统倍加关注,于是我们在知乎上找到了一篇对比较好的揭底文章:

先不谈制造,直说设计,打着国产旗号的CPU有很多,可以分为以下几个类型:

1. 龙芯这种从下到上都是自主设计,指令集虽然是模仿的,但也勉强算是自主的,现代CPU架构下指令集的差异性已经不大了。

2. 用开源的硬件方案的,代表类型有SPARC架构下的一些CPU,比如神舟飞船上用的就是这类,拿别人开源的东西改改就可以用了。

3. 直接买别人的硬件方案,这了指的是买了全套东西的那种,代表类型有alpha架构,也就是申威系列,太湖之光用的。

4. 拿别人的授权,然后生产CPU的,代表类型是华为海思这种,拿到ARM的授权,然后重新设计的,虽然ARM会提供公版,但像拿来直接用还是有点难度的。

5. 破解、抄袭、打磨别人家的CPU的,有一些研究所在做。

哪个是国产CPU的最好选择?

龙芯这种其实意义是最大的,基本上把CPU设计中所有的水都试过,虽然也出过能跑Linux的桌面版本,但整体技术来说有点落后,并且市场前景也不乐观,MIPS自己都快死了。

龙芯肯定会活着,至少作为国家战略的技术储备,也会有人让它活着,但活的好不好就难说了。玩硬件太烧钱了,看Intel挣的多,烧的钱更多。

SPARC和alpha其实在实际中差不多,一种是开源的,另一种是整体买过来的。问题在于,不管是开源还是买的,基本上搞不到太好的东西,虽然申威拿到的超算的第一,但申威自身的问题很多,比如内存设计就很弱,适合做并行计算,但不适合民用。

当年太湖之光拿下超算第一的时候,很多人觉得国产CPU成气候了,其实不是那么一回事,民用领域对单核性能要求很高的,申威的单核可能还不如龙芯(没研究过具体数据,可能有偏差),申威的优势在于浮点性能强悍,但普通用户要那么强的浮点性能干嘛?

SPARC多用在航天领域,欧洲人一直在用,我们在后面跟着学(之前写的有误,老美用的是PPC,欧洲人用SPARC),我们自己造的SPARC整体上还是有一定的差距,如果只是使用的话,已经足够了。

再次强调,这两类不太适合民用。

第四类就是拿授权,自己设计Soc之类的,这类包含很多,广义一点来说,兆芯(x86)、飞腾(ARM)、海思(ARM)、展讯(ARM)等等,好像PPC指令集在国内也有拿到授权的。龙芯拿到MIPS授权以后,其实也可以归到这类,但毕竟龙芯早期确实是全自主设计,只不过是“兼容”MIPS指令,而且龙芯发布的年代国内缺人缺钱,条件要困难的多。

狭义的看,像兆芯这种其实不算,因为没有什么自主性可言,其实就是VIA,但要是哪天VIA卖给国内也许不是什么坏事,起码可以合法生产x86的CPU了(评论里说最新的兆芯已经重新设计IP了,如果这样就跟海思之类的差不多)。

拿到的授权不同,自主的程度也不一样,有些可以做深度定制,有些就只能简单改改,因为这类厂商实在是太多了,我了解的不全,不好一一评价。但我个人认为,从商业化的角度上看,这条路是最好走的。兼容性上没有门槛,前期不需要烧特别多的钱(但也不少),对于商业化来说相对比较容易。

最后一类是拿别人的片子搞破解抄袭之类的,基本没有什么市场可言,要么是打着科研的旗号,要么打着国防的旗号,要么就是纯粹骗钱,当然可能两三种情况并存的也有。还有,特别注意区别一下龙芯是自己做出来的,汉芯是靠打磨骗钱的,两个不是一回事。

以上都是CPU设计方面的。

关于制造方面

生产方面,国内芯片工艺相对落后,光刻机被卡着脖子,高端的芯片生产不了。这里的芯片类型包括但不限于CPU、内存、Flash存储等,低端的可以做一些,高端的基本没戏。设计CPU已经很烧钱了,造CPU就更烧钱,这方面除了收购别人已经没有捷径可言,可是稍微好点的又限制中国收购(镁光),龙芯过去都是委托别人制造的。

光刻机虽然是别人不卖(编者按:据ASML相关人透露,现在是已经取消这个限制了),但主要原因还是工业积累的时间不够长。从科技树的角度上看,光刻机依赖于高精度机床、高精度光学设备(镜片),这些东西国产的都不行,说到尼康,都知道是做单反的,其实尼康还做光刻机,而国内就没有这样的企业,所以国产光刻机的路还很漫长。

国产操作系统的“烂账”

说的到国产操作系统,这个话题就太大了,因为广义上说国产操作系统太多了。大致分这么几类:

1. 全自主设计的;

2. 拿开源的改的;

3. 合法的拿闭源的改的;

4. 不合法的。

以上所有大类又可以细分为民用市场和专用领域两大块,其中2、3条又分为改logo改皮肤的,以及深度定制的。

软件不像硬件那么好界定,毕竟指令集什么的,是一下就能看出来的,软件想要搞清楚究竟是借鉴还是抄袭还是原创,有一定难度。

下面挨个细说一下:

全自主设计的,这个怎么说呢,要说多,也非常多,一个计算机专业的本科生或者研究生,水平高的就能自己搞一个简单的内核,16位的、32位的、64位的,基于SMP/SMT的,甚至带虚拟化的,我自己都写过类似的东西。难度一点也不高,但操作系统重要的是生态,这方面全自主设计的国产系统基本上是零。

全自主设计的国产系统,一般都在专用领域,总之民用的不多见,比如嵌入式的DJYOS(我不是太了解,只是听说)等等。

拿开源的改的,是国产系统里最常见的方式,因为这样可以避免生态系统的困局,但也很容易招骂,比如过去的麒麟、红旗之类的。基本上都是改Linux,或者BSD系列。这里也有一些深度定制的,比如deepin之类的。

安卓家族从广义上说也是这类,几家手机厂商都在搞,另外像阿里云之类的也属于类Linux系统。

普通用户接触的“国产”操作系统,大部分属于拿开源的改的这一类。同时,在超算、嵌入式领域,这种思路也行得通。

合法拿闭源的改的,这类里也有不少,只不过很多人不了解。跟硬件一样,软件一样可以拿到完整的授权(源码级),然后就可以自己DIY了,只不过要掏很多钱,代表类型是VxWorks这类,在嵌入式里很常见。我在上家公司做交换机的时候,OS的核心也是买的。

还有一类是不合法的,但这种却没人管,因为管不了,主要集中在国防,航天军工这类行业里。前面我已经说了,国内喜欢抄老美的方案,不管硬件还是软件,硬件的CPU抄完,操作系统也跟着抄,但因为不敢明面上直接抄,只好打着兼容XXX系统这种旗号了,究竟这类系统是全自主的还是全抄袭的还是混合的,我也搞不清楚,民用领域很难接触到,不做评价。

就出路而言,2、3、4其实差不多,论自主可控程度,基本上都是一致的(都有源码)。别觉得抄的东西不一定就好,其实抄别人的,本身也不那么容易,抄好了反过来把对方吞并,也不是不可能。

有些领域因为要紧跟着老美的步伐,不得不采用抄袭的方式,这其实是一种省钱办事的好方法,自己去试水需要付出的时间和金钱的代价都太大,本来我们就落后,再挨个试水,差距只会越来越大。

有人会说源码不是中国人写的,不安全。我想说的是:源码都给你了你还觉得不安全,那什么是安全?中国人自己写的就安全无bug?简直是笑话。是从头写一个操作系统更容易更稳定,还是拿现有的源码研究更容易更稳定?

至于民用系统,走Linux的路子其实也没什么问题,将来国内企业有钱了,保留Linux上层API,把内核换了就完事了,况且Linux社区里华人的贡献也不少呢。Linux是属于全世界的。

同时,也别把国产系统想的多么重要,从科技树的角度上看,国产系统依赖国产硬件,国产硬件依赖国产工业设备(机床、光刻),先把依赖性搞清楚了再看看哪个才是最重要的。真有一天美国对中国搞技术封锁了,最大的问题是芯片,而不是什么操作系统之类的东西。

而且建立一个完善的生态系统需要很多很多钱,可能是几倍十几倍三峡工程、京沪高铁的钱,国内缺钱的地方很多,搞IT的千万别觉得自己是个程序员,国内的所有资源都应该投放到软件行业。代码不能当饭吃,代码不能当水喝,代码也不能给谁生孩子。

有没有谁有国产飞腾cpu linux移植后的源码啊

稍微修改一下/etc/sensors.conf就可以了,不过其实都不用我们自己去动手,一般我们都可以从主板生产商那里下载到配置文件。 通过lmsensors我们就可以得到主板温度,CPU电压,风扇转速这些信息。

CPU有没有源代码

源代码,是软件编程最核心的东西,好比字典和词典是一个民族文化的源代码。

CPU则是硬件,怎么会有源代码。

随着CPU的发展,CPU内部的逻辑电路也好配合操作系统来能发挥出优异的性能,操作系统需要对CPU做成特殊的优化,而且优化越来越深入。同样,CPU架构、指令集的进化也受到软件编程理念革命的影响。

因此,CPU内部电路在设计时,也是有成熟的套路的,比如寄存器怎样弄、乘法器怎么弄、AVX指令集怎样来实现等等。这些东西多少类似于软件编程的源代码。

但是,软件就是软件、硬件就是硬件。不能把软件的特有概念生硬的套用在硬件上。

国产CPU里有哪些可以真正叫高性能CPU?列下型号?

 飞腾的FT-20 00+/64肯定可以算 一个,中国第一款自 研的64 核CPU,17年发布的 ,SPEC整数有500多,大概是至强E 5 201 4年的 水平,可惜只支持单路,单芯 片还 是不太 够 用的。飞 腾后面又做了 升级,新产品叫腾云 S 2500, 直 接做 到8路直连,也就是可以做 512核的 服务 器,SPEC整数飞腾官方 说法最高能到3 000 。

发表评论

评论列表

  • 离鸢岛徒(2022-06-08 21:28:39)回复取消回复

    权,自己设计Soc之类的,这类包含很多,广义一点来说,兆芯(x86)、飞腾(ARM)、海思(ARM)、展讯(ARM)等等,好像PPC指令集在国内也有拿到授权的。龙芯拿到MIPS授权以后,其实也可以归到这类,但毕竟龙芯早期确实是全自主设计,只不过是“兼容”MIPS指令,而且龙芯发