大家好,今天小编关注到一个比较有意思的话题,就是关于linux底层技术学习教程的问题,于是小编就整理了3个相关介绍Linux底层技术学习教程的解答,让我们一起看看吧。
linux小白,有什么书籍推荐,怎么学习入门?
学习路径:
1、Linux基础你得挑一个适合你的系统,然后在虚拟机安装它,开始使用它。 如果你想快速学会Linux,我有一个建议就是忘记图形界面,不要想图形界面能不能提供你问题的答案, 而是满世界的去找,去问,如何用命令行解决你的问题。在这个过程中,你最好能将Linux的命令掌握的不错,起码常用的命令得知道,同时建立了自己的知识库, 里面是你积累的各项知识。
2、Linux平台的C/C++开发,同时还有Bash脚本编程我推荐的书如下:C语言程序设计。 C语言,***当然更好。 C++推荐 C++ Primer Plus, 工具方面推荐VIM的官方手册,GCC中文文档,GDB中文文档,GNU开源软件开发指导3、UNIX环境高级编程(APUE)
3、UNIX环境高级编程堪称神作,经典中的经典,一遍一遍的看,看10遍都嫌少,绝对是圣经一般的读物,即使是程序员也从其中汲取养分,Google创始人的案头书籍,扎尔伯克的床头读物。)
网络方向:
UNIX环境高级编程再深读:尤其是进程,线程,IPC,套接字;
多核程序设计:Pthread一定得吃透了;
UNIX网络编程:卷一,卷二
TCP/IP网络详解:卷一,卷二
强烈推荐,鸟哥的linux私房菜 这本书,这个一个linux大神写的,深入浅出,零基础入门到精通,作者还有个人网站,所有的文章技术都在他的个人网站上有,你跟着学就行了,也可以不要买书的。
我以前也是通过这本书学习了解linux的,不吹不黑,真心推荐。
一定要看看哦,真的很不错,很用心的资料,绝对不会让你失望的。
我只推荐我看过的,并且还不错的书籍,如果感兴趣可以看下。
有时候我们老同学坐一起聊天,经常会说做运维,道比术更重要。这里的道是生存之道,处事之道,如果与开发,测试处理不好关系,往往就容易做背锅侠。但是很多新人还没进来这一行,又怎么懂道呢?所以术也是至关重要的。
Linux入门篇:
如果是想快速入门Linux,或者熟悉shell的编写,那么可以参考下面的书籍;
《Linux命令行大全》
《Linux命令行大全》分为四部分:
《Linux命令行与shell脚本编程大全》
第一:常用命令
1,文件处理命令
3,文件搜索命令
4,帮助命令
5,压缩解压命令
6,网络[_a***_]命令
7,系统关机命令
如何学习嵌入式linux?
stm32确实是一个瓶颈。而且现在毕业的相关专业的学生越来越多,stm32的技术门槛和知识点确实相对容易掌握。那么在主流的电子行业对嵌入式的需求是比较大的。主要是在于Linux的广泛运行。哪怕是安卓系统也是可以运行在Linux相同的电路开发板上的。
开发板的话就不好推荐了,有点像广告了。
学习Linux分为两个大方向,底层驱动和上层运用,这也是操作系统的特点。底层涉及驱动系列,对于硬件有比较直接的相关性。而应用几乎和硬件没他大的关系,主要掌握的是如何使用Linux操作系统,涉及各种指令,可以看 很多Linux运用的书籍。进而写一些基于Linux GCC的程序来熟悉这个。可以玩一玩树莓派板子,这个资料比较多,可玩性,掌握知识是很有帮助的。最近出了新版的,可以备一个用来学习Linux。
而底层是比较枯燥的,需要投入比较多。主要是驱动层比较难,所以需求很多,不愁找不到工作。仅仅会单片机已经确实不太有很大的竞争力了。底层需要掌握很多知识,随便去买一个比较流行的开发板就行了,主要是资料多,不懂的好找到人来问。否则自己一个人遇到卡壳的就很慢了。可以看看原子的,stm32你应该知道他很出名,打算出Linux开发板了。
我目前只会各类单片机及电路板的设计,当然也自学了服务器后端的简单使用,以及网站开发,Android app开发,IOS还没怎么学,时间不那么丰富。你趁着毕业前三年的业余时间,学习一下是很不错的,时间相对多一点,但是也需要靠自觉性,毕竟你的同事可能都在打游戏,你能坚持走下去吗?
技术工作是非常枯燥的,希望你能有找到自己的方向,多积累,多思考。
嵌入式Linux其实范围很广,只以我个人经验简单说说。
我们简单的把嵌入式Linux开发工作分成几类:
Bootloader层开发
驱动层开发
根文件系统搭建
应用程序开发
其中:
Bootloader层开发和Linux关系不太大,一般用汇编语言+C语言,更类似单片机开发
怎样在Linux下编程?需要什么技术?
在Linux下进行编程需要什么技术?看来你是没有接触过Linux操作系统啊。
很多人想到Linux就想到什么呢?想到黑乎乎的命令行?一堆自己完全没有接触过的命令,然后想到自己一脸懵逼的样子?
哈哈哈哈,你实在是想得太多了。
首先你需要选择一个正确的发行版,或者说选择一个比较好用的Linux发行版。我个人推荐初次接触Linux操作系统的人,使用深度开发的深度Linux操作系统。
当你进入到深度Linux操作系统的桌面之后,你就会发现原来是这样的一个系统啊,和Windows有什么区别呀?
然后你该用什么编辑器就用什么编辑器,该用什么就用什么,没有任何的关系的。
至于编程本身需要的技术和操作系统没有关系。
当然如果你对Linux操作系统有了更进一步的研究,你还需要去尝试一下不同的发行版本,比如说由红帽公司推出的cent OS操作系统。这是一个非常常见的运行在服务器上的操作系统,当然你接触这样的操作系统的话是必须使用命令行了。
还有ubuntu的Linux操作系统,也是需要去尝试一下的。因为现在有很多的服务器上开始使用ubuntu的操作系统了。
如果你的Linux水平达到了一定的境界,你一定要尝试一下arch Linux操作系统。当你能够顺利的在虚拟机上把它给安装上,说明你的Linux操作系统已经达到一定的境界了。
Linux下编程其实非常方便,Linux下了有完整的编辑、调试,编译,打包一栈式工具。
当然需要有前提熟悉linux常用命令、熟悉shell环境、能适应纯命令行终端的使用(Xwindows环境不咋成熟,不建议)。然后虫虫给大家说说Linux编程的一些技术:
Vim:vim是最常用的Linux编辑工具和linux IDE环境的母体,使用vim配合一些插件完全可以实现现代IDE环境下的绝大多数功能。
推荐组合:
主题:molokai(github:/tomasr/molokai),vim-colors-solarized
插件:YouCompleteM自动补全(github:/Valloric/YouCompleteMe)
浏览目录结构的插件nerdtree(github:/crooloose/nerdtree)
其他有益插的vim工具推荐:
vim-surround:删除、修改和添加 括号、引号、XML操作。
matchit:用%在字符间跳转。
到此,以上就是小编对于linux底层技术学习教程的问题就介绍到这了,希望介绍关于linux底层技术学习教程的3点解答对大家有用。