Linux
大法师Archmage
这个作者很懒,什么都没留下…
展开
-
Linux服务器开发一(基础)
Linux1、Linux介绍Linux是类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核的系统。Linux是由芬兰大学Linus Torvalds于1991年编写的。2、Linux发行版组成Linux内核应用软件一些GNU程转载 2017-07-13 20:11:21 · 6050 阅读 · 1 评论 -
shell中的cd
子进程修改工作目录不会影响父进程。shell程序调用fork()函数和exec()执行一个命令。cd命令并没有像ls等命令一样,实现为一个程序并放在/bin目录下,而是直接实现在shell程序中。如果希望更改当前目录,正确方法是调用chdir()函数,而不应该使用system()函数执行cd命令。...原创 2018-03-29 09:08:04 · 3009 阅读 · 0 评论 -
如何用一个makefile编译多个目标
使用 .PHONY, 使用方法见下面描述或参考链接. 经过测试可行.---------phony 目标可以有依赖关系。当一个目录中有多个程序,将其放在一个makefile 中会更方便。因为缺省目标是makefile 中的第一个目标,通常将这个phony 目标叫做"all",其依赖文件为各个程序: all : prog1 prog2 prog3 .PHONY : all prog1 ...转载 2018-03-05 10:17:14 · 7514 阅读 · 0 评论 -
IO多路复用(select, epoll)
在Linux系统编程中,会遇到一个进程处理多个IO问题,例如://本例想实现循环读取鼠标和键盘的输入int fd_mice = open("/dev/input/mice", O_RDONLY); //获取鼠标的文件描述符int fd_key = opeb("/dev/input/event1",O_RDONLY); //获取键盘的文件描述符char buf[1024];while(转载 2017-11-28 09:51:28 · 211 阅读 · 0 评论 -
IO多路复用之epoll总结
1、基本知识 epoll是在2.6内核中提出的,是之前的select和poll的增强版本。相对于select和poll来说,epoll更加灵活,没有描述符限制。epoll使用一个文件描述符管理多个描述符,将用户关系的文件描述符的事件存放到内核的一个事件表中,这样在用户空间和内核空间的copy只需一次。2、epoll接口 epoll操作过程需要三个接口,分别如下:转载 2017-11-28 09:41:45 · 143 阅读 · 0 评论 -
关于ARM立即数的理解
标签: arm立即数分类: ARM学习笔记一、立即数指令码的组成ARM公司将32bit指令码分为如下两部分:指令编码部分(20bit)立即数部分(12bit)D31——D12D11——D0 D11——D8D7——D0转载 2017-07-17 11:13:18 · 2014 阅读 · 0 评论 -
CPSR_C ,CPSR_cxsf 详解
1: ARM每种工作模式除R0~R15共16个寄存器外,还有第17个寄存器CPSR,叫做 当前程序状态寄存器,CPSR中一些位被用于标识各种状态,一些位被用于标识当前出于什么工作模式。2:这个状态寄存器的32位可以分为四个8位的域 所以,如果CPSR后面加上,c,x,s,f都是容易理解的3:各个位的详细说明转载 2017-07-17 10:42:05 · 326 阅读 · 0 评论 -
我的嵌入式学习之路
前言这个标题很大,嵌入式系统给人一种觉得我仿佛很成功,其实不然。实践上本人程度不高,甚至很低,但是做过了一些迂回的学习路途,同时把本人真实的学习历程表达出来,希看对后来者有自创的意义,甚幸!任务三年、几成废人!我2000年毕业于华中地域的一个理工科大学,专业是机械电子,我事先曾经签了一家内陆某个省级机关任务,家里八辈是农民,并且很偏僻,可以进入这样的中央是祖坟有风水。但在毕业前夕有个进转载 2017-07-17 10:26:07 · 380 阅读 · 0 评论 -
linux服务器开发三(网络编程)
网络基础协议的概念什么是协议从应用的角度出发,协议可理解为“规则”,是数据传输和数据的解释的规则。假设,A、B双方欲传输文件。规定:第一次,传输文件名,接收方接收到文件名,应答OK给传输方;第二次,发送文件的尺寸,接收方接收到该数据再次应答一个OK;第三次,传输文件内容。同样,接收方接收数据完成后应答OK表示文件内容接收成功。由此,无论A、B之间传递何种文件,都是通过三次数据传转载 2017-07-13 20:20:00 · 3136 阅读 · 0 评论 -
linux服务器开发二(系统编程)--线程相关
线程概念什么是线程LWP:Light Weight Process,轻量级的进程,本质仍是进程(在Linux环境下)。进程:独立地址空间,拥有PCB。线程:也有PCB,但没有独立的地址空间(共享)。进程与线程的区别:在于是否共享地址空间。独居(进程)。合租(线程)。Linux下:线程:最小的执行单位。进程:最小分配资源单位,可看成是一个线程的进程。转载 2017-07-13 20:18:26 · 839 阅读 · 0 评论 -
linux服务器开发二(系统编程)--进程相关
进程相关的概念程序与进程程序,是指编译好的二进制文件,在磁盘上,不占用系统资源(CPU、内存、打开的文件、设备、锁等等)。进程,是一个抽象的概念,与操作系统原理联系紧密。进程是活跃的程序,占用系统资源。在内存中执行(程序运行起来,产生一个进程)。程序 --> 剧本(纸),进程 -->戏(舞台、演员、灯光、道具等等)。同一个剧本可以在多个舞台同时上演。同样,同个程转载 2017-07-13 20:16:20 · 1324 阅读 · 0 评论 -
Linux 的多线程编程的高效开发经验
本文中我们针对 Linux 上多线程编程的主要特性总结出 5 条经验,用以改善 Linux 多线程编程的习惯和避免其中的开发陷阱。在本文中,我们穿插一些 Windows 的编程用例用以对比 Linux 特性,以加深读者印象。背景Linux 平台上的多线程程序开发相对应其他平台(比如 Windows)的多线程 API 有一些细微和隐晦的差别。不注意这些 Lin转载 2017-07-13 19:44:20 · 313 阅读 · 0 评论 -
符号链接
使用stat()函数取一个符号链接的状态信息时,实际得到的是目的文件的状态信息。如果希望取得符号链接本身的状态信息,则需要使用lstat()函数。#include<sys/stat.h>intlstat(const char* restrict pathname, struct stat* restrict buf); 读取符号链接中保存的文件路径,使用readlink()函数。#in...原创 2018-03-29 09:47:52 · 673 阅读 · 0 评论