如何正确的学习linux?

在此,提醒大家尽量不要买mini开发板,虽然mini开发板的价格要便宜些,但是与正常开发板相比,mini板功能是不完善的。

Linux系统有很多发行版,RedHat、Ubuntu、Fedora等。

不知道在什么时候用什么命令去检查系统,这是很多linux新手最无奈的事情了。

ARM体系结构的学习我们是不能完全照抄别人代码的,因为我们自己手中的开发板及处理器与别人是不同的,除非所用的代码是根据你手中的开发板来编写的。

首先我们要知道采用哪种处理器。

第三阶段:高级提升1、http服务代理缓存加速(其中主要学习varnish、nginx缓存系统,要对CDN的知识有所了解。

内核和驱动的知识是让我们根据不同的硬件,编写对应的驱动、合理剪裁内核、制作文件系统,并移植到硬件开发板上。

同时centos还提供免费的长期升级和更新服务。

目前通用嵌入式处理器有ARM、MIPS、PowerPC、X86等。

个人建议学习的路线如下:初级入门:1、Linux基础知识、基本命令(起源、组成、常用命令如cp、ls、file、mkdir等常见操作命令)2、Linux用户及权限基础3、Linux系统进程管理进阶4、linux高效文本、文件处理命令(vim、grep、sed、awk、find等命令)5、shell脚本入门(可边练习边学习)第二阶段:中级进阶中级进阶需要在充分了解linux原理和基础知识之后,对上层的应用和服务进行深入学习,其中说到服务肯定涉及到网络的相关知识,是需要花时间学习的。

**另外还有一些关于c++Linux后台服务器开发的一些知识点分享:Linux,Nginx,MySQL,Redis,P2P,K8S,Docker,TCP/IP,协程,DPDK,webrtc,音视频等等视频。

同时redhatlinux的安装和使用也是最简单的,因此,基本上不会在装系统上浪费过多时间。

除了汇编我们还要学习ARM指令集。

有问题建议用Google搜索及登陆chinaunix论坛。

看起来很厚,读起来也还好。

C++、QT在嵌入式开发领域,是用来开发图形界面的,希望从事上层应用开发及图形界面,那么在C++、QT方面需要比较深入的学习。

涉及到指针,那么就会讲到内存分配。

而且要掌握多级指针、函数指针等等。

市面上大部分书为了追求全面(如鸟哥的私房菜),往往很厚,很全,里面很多命令平常用不到。

内核和驱动的知识是让我们根据不同的硬件,编写对应的驱动、合理剪裁内核、制作文件系统,并移植到硬件开发板上。

是新生各种语言的大哥。

有了开发板,我们要下载相对应处理器的DataSheet及开发板电路原理图。

尽情体验Ubuntulinux带来的乐趣。

因为RedHat是linux界的老大,美国RedHat公司发布的RedHatlinux是商业上运作最成功的一个Linux发行套件,因此RedHat公司发行的linux值得信任,RedHatlinux的功能和性能也毋庸置疑。

LFS公认为最好的从零DIYLINUX系统的手册。

而且函数是系统提供给我们的,难免要对计算机系统深入理解一番。

同步就是,按照代码顺序,A操作过去是B操作,如果A与B同步,那么必须A完成后,B才可以继续,否则B只能一直等着A操作,直到A完成异步就是,按照代码顺序,A操作过去是B操作,如果A与B异步,那么执行A操作的过程中,B可以直接开始执行,不用等待A的结果。

第一阶段:初级入门初级阶段需要把linux学习路线搞清楚,任何学习都是循序渐进的,所以学linux也是需要有一定的路线。

其实在linux底层,是调用了内核的socket函数,**产生一个文件描述符**,并且**绑定到8090端口**,然后**监听该文件描述符**,然后在接收连接的时候,调用linux的**accept(fd**,然后阻塞住了。

使用NIO之后,我们就可以在一个线程里面不断接收客户端连接,不断地接收不同客户端收到的数据,因为**accept()**不阻塞了,**recv()**也不阻塞了。

APUE更像一本经典的比较权威的教科书,也是很多名人推荐的,可被收藏的那种。

P13Linking专门讲编译链接过程,可以单独听。

经典书籍推荐:《Unix环境高级编程》《Unix网络编程》《TCP/IP详解卷I》《深入理解计算机系统》arm体系结构从这部分开始,我们将真正进入嵌入式开发学习阶段。

注意,程序设计范式并不是数据结构,而是定义什么是编程,有哪些模式。

学习专业英语如果你想深入学习Linux,一定要尝试去看英文文档。

**非阻塞的socket,在accept的时候,不会阻塞,如果有数据,则建立连接,如果没有数据,则返回-1,在java中则是返回null**。

最后:redhat应用范围广,具有典型性和代表性,很多系统(例如红旗redflag,中标linux,Oracle发布的EnterpriseLinux)都是以RedHatlinux为基准的,因而,可以说学会了RedHatlinux,就能触类旁通,其它类似的linux系统也能很快掌握;现在周围学习linux的一般也都是以redhatlinux为主,这样交流方便,学习中出现问题,更容易得到解决。