linux学习内核怎么解决,linux内核方面的知识

kodinid 12 0

大家好,今天小编关注到一个比较意思的话题,就是关于linux学习内核怎么解决的问题,于是小编就整理了4个相关介绍Linux学习内核怎么解决的解答,让我们一起看看吧。

  1. 为什么要学习Linux内核?
  2. linux内核升级有必要吗,升级后会不会有很多之前的软件不能用?
  3. linux内核操作系统有哪些?
  4. 未来想从事Linux后台开发,需要学习linux内核吗?

什么要学习Linux内核?

1 学习一些操作系统的理论知识,一些概念。比如:进程内存管理文件系统等等。

关于这一方面的书籍太多了,自己一本就行了2 学习x86汇编,虽然linux用的是AT&T汇编,但二者只是格式不同而已。

而且学习x86汇编有助于了解x86系统结构书籍推荐王爽的《汇编语言》 ,我学的时候用的不是这个,后面看到这本书,才觉得自己做了“苦功了”。

学完大部分汇编指令时,找些汇编程序读读,熟悉这些指令的用法。

需要有写汇编程序能力,能读就行了,当然会写更好3 赵炯的《Linux内核0.11完全注释》。

这个linux内核版本低,作者也讲得很详细。不过关于x86体系的那一部分,作者讲得很繁琐,这一部分一定要大体看懂,那后面章节的内容没有多大的问题了。

我先把书通看了一遍,用了1个月的时间

后来,再返回来一个一个研究,用了2个月。

之所以看这本书,是让自己对内核有个实质的感受,不仅仅只是理论上的东西。

4 毛德操的《linux内核情景分析》。linux内核版本2.4.0,这本书很厚,上下两册。

linux内核升级有必要吗,升级后会不会有很多之前的软件不能用?

没问题就别升。应用层软件一般能向下兼容,除非是调用了特定版本的库,比如ssl库。内核模块是肯定加载不上了,而且每次大版本更迭都会修改内核一些API,直接编译还不行,还得花时间移植。redhat7,还是3.x的内核,在版本维护周期内,大版本是不会变的。

linux内核操作系统有哪些?

1、veket系统

veket系统目前包括veket-x86平台系统和随身系统,还有上网本系统,分别对应veket-8系统、veket-7系统和veket-5系统。经过测试,veket-7和veket-5在使用上比较完善。veket-8目前还处于测试期,在功能可能还不稳定。

2、Ubunto系统

这个系统又名乌班图系统,也是一个以桌面应用为主的Linux操作系统,系统分为云平台,服务器版和桌面版。可以根据需要选择相应的版本。桌面版目前最新版本好像是Ubuntu13.10版本,在虚拟机上安装过,还算可以。

3、Fedora系统

此系统,也是基于linux的一款不错的操作系统,在界面上比较美观,安装文件可能会相对较大一些,大家可以尝试一下。

4、麒麟操作系统

这个算是国产的一个自主可控的基于linux的操作系统,在功能上也算比较完善,有32位和64位的系统,想尝试的朋友可以下载安装试一下。

未来想从事Linux后台开发,需要学习linux内核吗?

先说结论,Linux后台开发了解Linux内核原理对于工作是有帮助的,比如了解文件系统的以及硬盘存储机制,那就更容易理解为什硬盘的写入速度相对内存慢,明白为什么会出现明明已经调用API写入数据还是出现了宕机数据丢失的问题。

结论说完了,我们在讨论下怎么去学习Linux后台开发技术

(1)Linux系统命令:Linux系统的命令非常多,是不是所有都要学呢?大家可以先掌握常用的命令,比如ls、pwd、cd、grep、find等常用的命令是必须掌握的;

(2)Linux系统编程:多线程、多进程、锁、消息队列、管道等等知识;

(3)Linux网络编程:udp编程、tcp编程,select、poll、epoll等的使用;

(1)Linux后台开发必备命令:比如怎么用lsof查看端口号,top怎么分析进程和内存、tail怎么读取日志,mpstat怎么分析CPU占有率等等;

(2)Linux系统编程:[_a***_]程和多进程的区别在哪里,他们有什么适用场景;redis为什么用单线程模式,为什么又从redis 6.0开始支持多线程;nginx为什么又选用了多进程模式等等;

(3)Linux网络编程:udp和tcp的适用场景是怎么样的;select、poll、epoll三者有什么区别,阻塞和非阻塞IO哪种更适合并发场景;

(1)客户端和服务器端协议定制、服务器与服务器端的协议定制;

到此,以上就是小编对于linux学习内核怎么解决的问题就介绍到这了,希望介绍关于linux学习内核怎么解决的4点解答对大家有用。

标签: 内核 linux 系统