开始学linux了
了解下linux bus/device/driver/class,我觉得这部分如果弄懂了,做linux驱动开发就没啥问题啦bus:linux支持的各种总线,例如i2c,usb,pci等
device:为具体的设备,是用户最终可以调用的
driver:具体每个设备的对应的操作方法
class:可以看做很多具体设备的一个抽象
一个具体的设备,都会对应一个驱动,他们在内核中是一一对应的关系
一个驱动可以匹配很多同类型设备的驱动
想起了那个年经帖“今年下定决心学linuix”{:lol:} 从入门到放弃系列...哈哈 楼主加油 感觉每个月都能看到这样贴子 先学会怎么用linux,特别是熟悉Linux的目录结构,文件权限,然后是常用命令,能脱离鼠标完成日常操作,然后是linux下c编程,熟悉linux的api,再往后再考虑驱动的问题。学驱动的同时熟悉一下Linux内核有时候也是有必要的。
上来就弄驱动,太有挑战了 买个开发板,环境起来 ,直接开始写应用程序。 同意楼上,入门Linux应该是从应用层开始,而不是一开始就DTS、驱动那一套(包括国内很多课程都是这样) 入门到放弃!!!! 月经贴,“发誓一年学会linux”“立贴为证”........然后,论坛ID也放弃了 二楼不错不错{:lol:} 技术进步太快,要学的东西太多{:sweat:} 从入门到放弃{:lol:} 希望楼主能坚持学习下去,分享经验 看楼上都这么有经验{:titter:} 论坛上就好几个帖子了{:lol:}
还是希望楼主坚持下来。 慢慢来。 买个开发板,直接做应用,你会发现so easy
! 好多年前就想立贴了,终于还是立了,从入门到放弃,再从放弃到入门再到放弃,反反复复很多次了,准备立个贴来打脸{:shutup:}{:shutup:}{:shutup:} 谢谢大家的留言,我就没一一回复了,如果我没有从入门到放弃,请大家打我脸{:biggrin:}{:biggrin:}{:biggrin:} batou 发表于 2020-8-11 19:51
谢谢大家的留言,我就没一一回复了,如果我没有从入门到放弃,请大家打我脸{:biggri ...
这句挺走心,要认真一点才能看明白。 放弃到入门 年轻人可以学一学~~~~~~~~~~ 我是觉得最后的结果是从入门到放弃的多 最佳学习方法是在工作中学习,如果能忽悠进好公司的话,这样你不得不做,不得不学。 从入门到放弃+1
楼主用的什么开发板? {:lol:} 我自己也从入门到放弃过。 如果有项目支撑 确实可以搞一搞学一学,没有项目支撑真的有点难 ackyee 发表于 2020-8-12 08:33
我自己也从入门到放弃过。 如果有项目支撑 确实可以搞一搞学一学,没有项目支撑真的有点难 ...
哈哈。当年学校里面确实是上来就2440编译驱动,到现在我也不会写驱动。反而是应用程序之类的我makefile写得极度熟练了。 本帖最后由 ackyee 于 2020-8-12 09:11 编辑
wye11083 发表于 2020-8-12 08:53
哈哈。当年学校里面确实是上来就2440编译驱动,到现在我也不会写驱动。反而是应用程序之类的我makefile写 ...
{:lol:} 我也是2440入门到放弃的,中间稍微有点事情耽搁个一周回来就忘记的差不多了
反倒是 FPGA 这些因为项目需求 ,硬骨头一块一块坑,思路逐渐清晰起来 虽说不能说非常精通,但是写些小逻辑,简单的图像进出加些算法 还是没问题的
linux是一个漫长的过程, 可以先从ubuntu下开发单片机,熟悉日常使用, 买个树莓派写几个应用, 再写一些驱动,. 多学习学习总没坏处,哪怕放弃了,多了解点也是经验,从入门到放弃系列之后,将来再入门也会快些 过段时间我也把前段时间搞的NUC980弄个开发板出来 歪个楼,学linux不如改学python和js吧,数学功底扎实的话到互联网或者科研院还是比较受欢迎的 刚买的i. mx6ull开发板,看到楼上所说,我的心拔凉拔凉的,不,我要坚持住,直到点亮一颗灯,如果一颗不够,那就两颗! HXDZ-AAA 发表于 2020-8-12 11:11
刚买的i. mx6ull开发板,看到楼上所说,我的心拔凉拔凉的,不,我要坚持住,直到点亮一颗灯,如果一颗不够 ...
加油,可以的,LED绝对没问题{:handshake:} istars2005 发表于 2020-8-11 13:14
优秀啊,某宝上我搜了半天也没搜到{:curse:} 下一页 发表于 2020-8-11 14:19
先学会怎么用linux,特别是熟悉Linux的目录结构,文件权限,然后是常用命令,能脱离鼠标完成日常操作,然后 ...
膜拜前辈,指点迷津... batou 发表于 2020-8-12 12:27
加油,可以的,LED绝对没问题
三克油。 qjp1988113 发表于 2020-8-12 08:13
楼主用的什么开发板?
目前用的原子哥的 ackyee 发表于 2020-8-12 08:33
我自己也从入门到放弃过。 如果有项目支撑 确实可以搞一搞学一学,没有项目支撑真的有点难 ...
是的,学着学着就忘了,好像啥都学过,但又啥都不会... 祝愿所有想学linux的人都坚持下来,学有所成 各位立帖为证学习Linux的,请交一年的工资作为押金放在站长这边,保证很有学习的动力 这个东西就跟我学生时代学英语一样,每次都立志每次都“放弃”,到后来就彻底变成半吊子水平了,入门了N多次每次都是入个门。
我是觉得这种学习还是要定一个比较大的综合性比较强的目标,单纯的为了学习而学习是不行的。
就像工作以后各种乱七八糟的技能没有哪个是系统性的学习过的,都是被逼着硬上,上多了,会的东西也多了~ 留名5年后再来看楼主是不是变成了linux大神 楼主把每天的学习成果都做笔记一样的在这个帖子里记录下来,就像打卡一样,你会进步很快的,我也可以跟着你共同进步了。哈哈 在你们立志的时候,我已经学会用go语言在上面写helloworld了。。。哈哈。 runball 发表于 2020-8-12 14:20
各位立帖为证学习Linux的,请交一年的工资作为押金放在站长这边,保证很有学习的动力 ...
这个太狠了,除非老板愿意提前支付明年工资{:loveliness:} supercoo 发表于 2020-8-12 18:23
留名5年后再来看楼主是不是变成了linux大神
就因为你这句,我坚持了五年... bg3mo 发表于 2020-8-12 23:58
楼主把每天的学习成果都做笔记一样的在这个帖子里记录下来,就像打卡一样,你会进步很快的,我也可以跟着你 ...
每天记录怕是很难哦,毕竟还要上班,一周进步一点就不错了,一起加油{:handshake:} redworlf007 发表于 2020-8-13 00:35
在你们立志的时候,我已经学会用go语言在上面写helloworld了。。。哈哈。
go现在貌似很流行,我有个同学就专职用go了 我记得之前也有一个网友也开贴搞linux了,楼主还是早点放弃吧,没有项目支撑走不远的,公司有支持学起来不要太快,本人亲眼看着隔壁部门从单片机跨入linux驱动开发,有友商的技术培训和指导比闷头单干强多了 有个实际项目调试下来也就入门了,只学习难进步呀 打卡1,走向迷雾森林 https://www.amobbs.com/thread-5738043-1-1.html pengchhui 发表于 2020-8-13 09:35
有个实际项目调试下来也就入门了,只学习难进步呀
是啊,在实际项目中进步是最快的 zstu2012 发表于 2020-8-13 09:26
我记得之前也有一个网友也开贴搞linux了,楼主还是早点放弃吧,没有项目支撑走不远的,公司有支持学起来不 ...
别介{:shocked:} lz继续分享经验 转自csdn:
我就是在作手机驱动,非常无聊,非常没有技术含量。
东西都是封装好的,拿来新硬件只需要gpio口配好,i2c配好,pmic配好,按照设备模型加好驱动code,就能用了,感觉就是富士康流水线上熟练工。 1个多月过去了,楼上的把帖子顶了起来。看到了,就顺便问一下:楼主放弃了吗? 实在搞不清楚为什么一提linux看到的字眼就是放弃呢?现在的开发板提供的资料再加上网络,只要想学,足能够学到想学的知识。开发板提供的文档和视频仔细看完,命令练熟,建议不是天才或者大神级别的,先不要到uboot和linux里面看代码。然后在开发板环境下跟着教程把已有的项目移过去,其余的再慢慢深入,一个最大的收获就是让我接触到了QT,这玩意儿既可以在linux下跑又可以在windows下跑,下一步就搞它。 工作不写软件,但是相关,所以一直没放弃,imx283开发板17年用到现在,超值了。 HXDZ-AAA 发表于 2020-9-23 12:18
实在搞不清楚为什么一提linux看到的字眼就是放弃呢?现在的开发板提供的资料再加上网络,只要想学,足能够 ...
如果不对gui有需求,建议直接golang,直接无视环境交叉编译,当然一般人不会选择,c++必竟有天然的优势,人多岗位多 从入门到放弃 slzm40 发表于 2020-9-26 00:42
如果不对gui有需求,建议直接golang,直接无视环境交叉编译,当然一般人不会选择,c++必竟有天然的优势, ...
谢谢您的建议,但是我发现我已经爱上QT了,对于我来说,学习难度不小。引用先贤一句话“路漫漫其修远兮,吾将上下而求索”。 HXDZ-AAA 发表于 2020-9-26 12:06
谢谢您的建议,但是我发现我已经爱上QT了,对于我来说,学习难度不小。引用先贤一句话“路漫漫其修远兮, ...
你和我两个朋友很像,他们是主攻qt.看他们每天为运行环境发愁,真为他们的头发担忧{:lol:}
我比较特殊,gui不是我的需求,我是golang,c/c++主要,外加一些脚本语言辅助.
顺带说一句, 只有看过更大的世界,才会对原来的事情看起来那么不值一提. 最好直接上手应用吧,直接撸底层很容易疲惫的,由目标驱动学习更容易坚持下去吧。 pone1 发表于 2020-9-28 22:53
最好直接上手应用吧,直接撸底层很容易疲惫的,由目标驱动学习更容易坚持下去吧。 ...
大神给推荐一下如何直接上应用 fengyunyu 发表于 2020-9-29 07:24
大神给推荐一下如何直接上应用
先会搭环境,再清楚驱动框架,移植一个驱动,最后写个小应用。成功入门 pone1 发表于 2020-10-2 09:22
先会搭环境,再清楚驱动框架,移植一个驱动,最后写个小应用。成功入门 ...
大神预计入门需要多长时间?推荐个小应用开发例子 fengyunyu 发表于 2020-10-2 09:35
大神预计入门需要多长时间?推荐个小应用开发例子
环境搭起来,写个多线程的流水灯,就入门了,搭环境费事,后面的应用程序和用ucos或者裸奔差不多,驱动先别搞,只要你会C语言,入门快的很。 楼主还在拼学习吗? liang16888 发表于 2020-10-8 16:21
楼主还在拼学习吗?
必须的啊{:victory:} fengyunyu 发表于 2020-9-29 07:24
大神给推荐一下如何直接上应用
应用上手的话比较简单啊,有台电脑就行了,有点语言基础,多看别人的例子,然后自己修修改改看看结果,windows与linux下很多都是类似的,玩玩Qt也挺好 嵌入式系统专业 linux学了4年 工作没用上荒废了。 Samzzt 发表于 2020-10-13 14:27
嵌入式系统专业 linux学了4年 工作没用上荒废了。
学了这么久,真正用到的时候捡起来应该也很快 fengyunyu 发表于 2020-10-2 09:35
大神预计入门需要多长时间?推荐个小应用开发例子
入门应该很快吧,买个开发板,功能溜一遍,写个LED灯控制程序。大概快的话半把月能实现。
树莓派也可以推荐玩一玩。 根据19楼的楼主发言推论,楼主肯定不会被打脸。 向lz学习 加油,现在我正在担任Linux开发的工作。也是去年开始学Linux的 。
劝你一句不用太在乎底层是怎么干的,先从应用层跑起来 知道进程线程 程序怎么走的。。 一步步的往下走 别着急摸那些个底层框架的东西 刚进去学不明白的。 一开始开始学驱动框架 环境都搭不好 什么内核文件系统uboot 全自己编译和裁剪。搞了大半年 点灯都没有实现。
后来听别人劝上来先把基本的操作先熟练好,再接着先用各种外设去找自己要的功能,最后在去看设备驱动是怎么开发的。。其实这部分 我现在也就仅仅会改一部分设备树,驱动框架套一套。也没具体摸得明白。 先用在来说,上来别说搞这个搞那个,真的没有什么鸟用。先玩起来就像windows 一样 ,先TM学会怎么看小电影,再去找网站。。。。 kyq_linux 发表于 2020-10-27 11:57
加油,现在我正在担任Linux开发的工作。也是去年开始学Linux的 。
劝你一句不用太在乎底层是怎么干的,先 ...
现在是负责linux下的应用程序,不用搞内核裁剪,驱动开发?具体是哪个方向? fengyunyu 发表于 2020-10-27 13:05
现在是负责linux下的应用程序,不用搞内核裁剪,驱动开发?具体是哪个方向? ...
搞 但是学应该从应用层开始学。 从入门到放弃! 不从底层学起,还做什么嵌入式。 正把在LPC1788上做的项目移到I. mx6ull核心板上,中途卡住了,功力不足,继续修炼中…… kyq_linux 发表于 2020-10-27 13:39
搞 但是学应该从应用层开始学。
请问,你现在工作中是用cmake还是make?使用虚拟机构建交叉编译环境么?有涉及linux下qt开发么? fengyunyu 发表于 2020-10-28 10:19
请问,你现在工作中是用cmake还是make?使用虚拟机构建交叉编译环境么?有涉及linux下qt开发么? ...
涉及到啊。。。 应该是这样的步骤 我觉得比较合理
先搭建一下编辑和编译环境
编辑环境 虚拟机的安装和vi 的使用
编译环境 交叉编译工具的使用
在接着 调试环境 tftp ssh ftp 等等 这些东西
了解bash&shell
再来写点灯的代码open read write 等等的调用
在去涉及简单的socket 编程 去了解进程间通信等等 比如说会什么会出现同步和互斥的概念
接着去做移植uboot kernel 的移植移植自己的uboot kernel
uboot 中 串口的移植会涉及到 设备树的概念 先别管 反正也不懂想按照不走改了再说后面在看
lcd 也是一样
kernel 移植
fs 移植先做一遍 反正当时我做的时候一脸懵逼 后来才知道是个啥 为啥这个搞
这些东西搞完之后 再去看所谓的驱动层代码吧我当初先看了半年多的驱动(还算有点基础--培训过)都稀里糊涂的。。
然后 在去看底层驱动看open write 这些东西到底是怎么调到最后的,为什么要实现文件的分离与分层 应用层和底层分开的好处是什么?
在去写一个自己的LED驱动 了解下驱动的加载卸载操作热插拔功能实现。
在看设备树这些个乱七八糟的。。 实现一个自己的led 设备节点啊这么个玩意。。
接着在玩QT咯。菜鸡的学习路线比如我。。。。嗯小鸡一枚
kyq_linux 发表于 2020-10-28 12:06
应该是这样的步骤 我觉得比较合理
先搭建一下编辑和编译环境
编辑环境 虚拟机的安装和vi 的使用
你现在工作是虚拟机加交叉编译? fengyunyu 发表于 2020-10-28 12:15
你现在工作是虚拟机加交叉编译?
不是就不要看了么?
kyq_linux 发表于 2020-10-28 13:54
不是就不要看了么?
指点下了。了解下大神的工作的工具配置。如果是纯windows搞定,确实不用去搞虚拟机了。 本帖最后由 kyq_linux 于 2020-10-28 14:11 编辑
fengyunyu 发表于 2020-10-28 13:58
指点下了。了解下大神的工作的工具配置。如果是纯windows搞定,确实不用去搞虚拟机了。 ...
emmmm 我是个菜鸡。。不过我现在使用vscode remote-ssh 插件去登录公司的服务器 这样形式做开发的。。。
确实没安装虚拟机啊 但是不是类似的么。。
当然也可以用windows10 自带的一些去写一些调试代码之类的 也可以啊这想折腾这些东西 不是挺好的么 自己觉得怎么方便怎么来嘛 kyq_linux 发表于 2020-10-28 14:09
emmmm 我是个菜鸡。。不过我现在使用vscode remote-ssh 插件去登录公司的服务器 这样形式做开发的。。。
...
vscode remote-ssh,代码是不是不能拷贝到本地硬盘? fengyunyu 发表于 2020-10-28 14:14
vscode remote-ssh,代码是不是不能拷贝到本地硬盘?
为什么要把代码拷贝呢? kyq_linux 发表于 2020-10-28 14:41
为什么要把代码拷贝呢?
好的,大神,当我没问。拷到本地硬盘,可以带回家加班写代码啊 fengyunyu 发表于 2020-10-28 14:48
好的,大神,当我没问。拷到本地硬盘,可以带回家加班写代码啊
好的吧 你可以用samba 但是会丢失一些东西别加班了 头都秃了难受 Linux 可学的还很多加油喔 祝贺大家学习成功 我也开始了,从imx6ull开始 哈哈,不把windows格式化装个linux系统我是不信的.
页:
[1]