看来必须要学习Linux系统了,有高手指点一下
几年前,网上看台湾同胞写的帖子,学了一段时间。。放弃。。最近不行了,客户开始用国产电脑了,龙芯CPU,麒麟系统
好多问题。。。。 多读书,加强理论
多动手,加强实践
多思考,才能提高
最后说我认为的真经:
去学C语言,看不懂源代码,永远只敷衍于表面现象,无法得其精髓。
而要真正理解C语言,需要懂一些汇编,要真懂汇编,需要先学一点计算机组成远离。C要精通,汇编和计算机架构需要一般水平即可。
对了还有算法,不理解这个,看不懂代码。基础的算法和数据结构即可。linux里面没有太高深的算法。
先把家里电脑的WINDOWS全格式化了,装成Linux。这是第一步。 学Linux最好是树莓派
可以熟悉命令,Python开发,Qt开发,内核开发
然后嵌入式开发 只有盖茨等,从小伴随最原始硬件、最原始软件、最原始编程语言一起成长的,才能成为绝顶高手。
DOS都学会了,LINUX也没问题。操作系统嘛,无非就是文件管理、用户管理、权限管理、内存管理、进程管理、接口管理等资源管理,命令行不一样,目标是一样的,习惯就好。 ssffzz1 发表于 2023-4-19 16:58
多读书,加强理论
多动手,加强实践
多思考,才能提高
请问:Linux的系统核心源代码是什么语言,是 C 吗?记得多年前曾经装过小红帽,有点像Windows,但从实用主义者的立场评价,认为功能有限,不如Windows顺手,就放弃了。现在给Linux的定位是什么?它只是一个开发平台吗?:) 本帖最后由 ssffzz1 于 2023-4-19 19:39 编辑
chason4752 发表于 2023-4-19 18:30
请问:Linux的系统核心源代码是什么语言,是 C 吗?记得多年前曾经装过小红帽,有点像Windows,但从实用 ...
1、LINUX内核以及各种库的开发语言是C,引导部分有一些汇编代码。
至于在LINUX下的应用软件,这个另说,也不在我们说的范围,基本各种开发语言都有。
2、目前LINUX应用很广泛,特别是服务器领域,譬如各种云(腾讯云,阿里云,亚马逊云等等),各种数据库,移动穿戴设备(有些不叫linux,但是基本思想和Linux一致),最近很火的AI,他们的后台基本也是Linux。
有不少人问过我网络怎么学(我做计算机网路的),Linux怎么学(这个也略懂一点)。我的诀窍可能就是:
1、首先你要去学,否则你根本不知道你在干什么。随便找本Linux的书先看起来。(鸟哥的不推荐,我在CU玩的时候鸟还在问我们入门问题呢)。
2、学的时候肯定遇到很多问题,再根据问题去找相关资料。
也就是说无论你从哪个角度入门,最后动能到达高手境界。关键是你的入,并坚持。
多看书加强理论,没理论的话,高度达不到。
必须的基础:C、汇编、算法、数据结构,计算机体系结构
多动手,否则你看了也记不住,不用的东西很快就忘记了。
多思考,里面很多东西实现非常巧妙。
不过我对Linux内核研究不多,属于外行,因为我平时基本用不到那么深。我在CU的时候也是做网络,向入行计算机通信我倒是能帮忙。 girlexplorer 发表于 2023-4-19 17:10
只有盖茨等,从小伴随最原始硬件、最原始软件、最原始编程语言一起成长的,才能成为绝顶高手。
你这个说法也有问题。
难道我们学算盘,还要退回到几千年前吗?
当然没经历过那个过程,后续有很多问题可能不理解。但有些问题忽略过去并不影响对这个东西的使用。 ssffzz1 发表于 2023-4-19 19:36
1、LINUX内核以及各种库的开发语言是C,引导部分有一些汇编代码。
至于在LINUX下的应用软件,这个另说 ...
非常感谢!您指出了学习的正确路线。另外,我对Linux的许可证(GPL 通用公共许可证)适用范围很感兴趣,正在看。 感觉要有兴趣,然后坚持
曾经买了汇编和c语言的书 教程也下载了不少 都没坚持 以前装过Ubuntu,你可以玩玩. 有一种调侃的说法,WSL是最好的Linux发行版。
尽管有各种局限性,但是用来学一些入门的东西还是很方便的。
如果你的Windows不支持WSL的话,那就在虚拟机上跑个你客户用的麒麟系统先玩起来 ...... 玩内核,学习移植驱动,然后写应用调用驱动控制外设,多做几个实际项目就明白了,只学不练效果一般。 WSL不好用,如果仅是需要在windows上编译运行于linux的交叉应用代码,安装个xxxx-linux-gcc,git,蹭git的shell环境,可以编译大部分交叉项目,比WSL小巧方便。
如果编译内核,只能使用linux系统。
WSL使用的很多系统和应用都是专门为WSL编译的,编译的应用也只能在WSL中运行。奇葩。更像是一套新系统,既不是linux也不是windows.