linux编程-基本概念

转载 2016年08月29日 14:14:30

学习linux,是为了用而学习,不是学了为用。

首先,要学Linux编程,你得会用Linux,也就是得在命令行环境下生存下来。

其次,Linux下开发,两种基本语言,C和C++;利用Linux的API进行开发;Linux的API是遵循POSIX标准的;POSIXIEEE为要在各种UNIX操作系统上运行的软件,而定义API的一系列互相关联的标准的总称,其正式称呼为IEEE 1003,而国际标准名称为ISOIEC 9945;它基本上是Portable Operating System Interface(可移植操作系统接口)的缩写,而X则表明其对Unix API的传承。

再次,Linux下程序开发几大块。文件操作:这个很重要,Linux下的一个思想叫一切皆文件,可见文件读写的重要。I/O模型,五大I/O模型,阻塞,非阻塞,复用,信号驱动和异步I/O,最重要的当属复用,就是select,poll和epoll,要知道他们的适用范围和优缺点。进程和线程,包括进程和线程的概念和区别,进程和线程的建立,同步,通信,互斥等等。网络编程,就是socket编程,Linux编程,还得了解一下TCP/IP协议,编程方面主要是那几步,申请socket,bind,listen,accept几步,要熟悉常见的服务器模型,进程池线程池方式,多进程方式,复用方式,最重要的是复用方式。

最后,Linux这么多人用,好处在哪里;内核源码,内核的进线程调,内核链表。在学习的过程中,要不断积累和了解最新的东西,最起码要知道个概念,比如分布式,大数据,云计算,机器学习,计算机视觉,JIT等等,形成知识链,这样不会导致你最后不知道学啥。

相关书籍:

《鸟哥的Linux私房菜 基础篇》
《C程序设计语言》 丹尼斯写的
《Linux C编程一站式学习》 宋劲杉写的
《Eensstial C++》
《C++ Primer》
《Effective C++》

《Linux网络编程》 宋劲彬写的
《Unix环境高级编程》
《Unix网络编程》 两部
《Linux高级程序设计》 华清远见的

《MySQL必知必会》
《数据库系统概念》

《大话数据结构》
《算法导论》

《Linux内核情景分析》
《深入理解Linux内核》

《深入理解计算机系统》
《现代操作系统》
《深入理解计算机网络》
《TCP/IP》的三卷经典书

廖雪峰的Python学习网站




Linux C编程一站式学习0 7 宋劲彬 pdf

  • 2015年04月17日 22:48
  • 15.52MB
  • 下载

Linux基本概念及操作

Linux终端 1.Terminal(终端) 通常在我们使用 Linux 时,我们并不是直接与系统打交道,而是通过一个叫做 Shell 的中间程序来完成的,在图形界面下为了实现让我们在一个窗口中完成接...
  • suneqing
  • suneqing
  • 2015年12月31日 20:38
  • 1391

Linux进程编程基本概念

1.1 登录1.   用户登录名登录Linux系统时,需先键入用户登录名,然后键入用户密码,系统通过/etc/passwd(口令文件)文件校验用户登录名和用户密码。口令文件中的登录项由7个以冒号分隔的...
  • guoping16
  • guoping16
  • 2011年07月04日 15:45
  • 973

Netty——1、网络编程基本概念

1.Socket Socket又称“套接字”,应用程序通常通过“套接字”向网络发出请求或应答网络请求。 Socket和ServerSocket类库位于java.net包中。ServerSocket用于...
  • haoyuyang
  • haoyuyang
  • 2016年11月19日 16:25
  • 3906

Python基础概念_12_编程风格

编程风格 13 编程风格 13.1 简介 为了编程的规范,我们一般约定一些编程规则、约定,这些都称为编程风格。   13.2 分号 不要在行尾加分号, 也不要用分号将两条命令放在同一行。 13.3 ...
  • shenliang1985
  • shenliang1985
  • 2017年06月16日 09:36
  • 172

【Unity编程】Unity中的基本概念

介绍Unity中的基本概念:游戏对象、场景、资源、相机、预制件等等
  • AndrewFan
  • AndrewFan
  • 2017年02月16日 09:35
  • 1448

Linux系统基本概念

本文记录一些linux系统中涉及的一些基本概念: - 一.应用程序管理器:apt-get,yum,pip,conda,homebrew(mac OS X系统) - 二.版本控制工具:git,cvs...
  • Ddreaming
  • Ddreaming
  • 2017年12月26日 16:46
  • 296

小何讲进程: Linux进程的基本概念

进程是一个独立的可调度的活动; 进程是一个抽象实体,当它执行某个任务时,要分配和释放各种资源; 进程是可以并行执行的计算单位; 进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动;...
  • rl529014
  • rl529014
  • 2016年04月29日 11:15
  • 2847

Linux编程的几个基本概念

系统调用 是指操作系统提供给用户程序调用的一组“特殊”接口,用户程序可以通过这组接口来获得系统内核提供的服务。在linux中,为了更好的保护内核空间,将程序的运行分为内核空间和用户空间(即常说的...
  • luteresa
  • luteresa
  • 2017年03月29日 10:57
  • 134

线程的基本概念及线程与进程的关系

关于线程与进程之间的关系,我觉得有一篇文章讲的很生动形象,这里贴出来供大家参考。进程与线程的一个简单解释 关于线程的理解,同样很生动形象的一个例子。我是一个线程 一. 线程、进程与线程的关...
  • zjwson
  • zjwson
  • 2017年01月15日 22:24
  • 572
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:linux编程-基本概念
举报原因:
原因补充:

(最多只允许输入30个字)