![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LINUX系统
文章平均质量分 65
鲤鱼
人得自个儿成全自个儿!想在人前权贵,就得人后受罪!
展开
-
LINUX学习笔记3——TFTP服务器
a) 作用:主要提供对目标机的主要映像文件的下载工作,文件传输协议b) 宿主机:是执行编译、链接嵌入式软件的计算机c) 目标机:是运行嵌入式软件的硬件平台。d) 安装:1. 检查是否安装:a) Setup 中的系统服务中是否有tftpb) netstat -a |原创 2011-12-06 20:43:50 · 290 阅读 · 0 评论 -
LINUX学习笔记13——进程间通信2信号
a) 产生:按键,硬件异常,kill函数发送信号b) 常见信号:1. SIGHUP:结束信号2. SIGINT:中断信号ctrl+c3. SIGKILL:结束接收信号的进程4. SIGTERM:KILL命令发出的信号5. SIGCHLD:标志子进程停止或结束的信号原创 2011-12-06 21:01:44 · 403 阅读 · 0 评论 -
LINUX学习笔记15——进程间通信4消息队列
a) 本质:消息链表b) 分类:1. POSIX消息队列:可移植操作系统接口2. 系统V:随内核持续的,只有在内核重启和人工删除,才会被删除。每个消息队列对应唯一的键值c) 获取键值:Key_t ftok(char *pathname, char proj)1. 作用:返回文件名对应原创 2011-12-06 21:03:37 · 341 阅读 · 0 评论 -
LINUX学习笔记16——进程间通信5信号量
a) 作用:保护临界资源,控制进程。访问临界资源时,先查看信号量,若信号量为1表示资源有空,那么才可以访问临界资源。同时把信号量-1;1. 实质:是一个整数,初始值为1;2. 二值信号灯:值只能取0或1;最多允许一个进程访问。3. 计数信号灯:值可以取任意的非负值,即可以允许多个进程访问b) 打开信号量原创 2011-12-06 21:05:22 · 394 阅读 · 0 评论 -
LINUX学习笔记17——多线程
1. 线程理论基础:a) 比进程更节俭:线程所有代码数据都是共享的b) 方便:因为数据共享,所以通信方便c) 遵循POSIX线程接口,称为pthread,需要#include 2. 创建线程:int pthread_create(pthread_t *tidp, const pthread_attr *原创 2011-12-06 21:06:47 · 318 阅读 · 0 评论 -
LINUX学习笔记18——网络编程
a) Socket:文件描述符1. 作用:实现LINUX的网络编程2. 分类:a) 留式套接字:使用TCP协议(SOCK_STREAM)安全性b) 数据报套接字:使用UDP协议(SOCK_DGRAM)快速c) 原始套接字:使用IP协议:(SOCK_RAW)3. 网原创 2011-12-06 21:08:54 · 561 阅读 · 0 评论 -
LINUX学习专题——alias,unalias使用,命令DIY
刚学LINUX的时候,发现切换目录特别麻烦,尤其是文件夹的位置还特别深的时候,敲个指令很麻烦,搞不好还出错了得重输。这个时候alias指令的作用就很突出了。例如:输入指令:alias class="cd /home/1/...class的实际目录.../6/class" 那么这个时候不管你在哪个文件夹,敲入class,就可以进入class的文件夹了,省去了敲入完整路径的功夫 然而,原创 2011-12-07 18:00:25 · 969 阅读 · 0 评论 -
LINUX学习笔记19——内核简介
LINUX内核简介:a) LINUX体系结构: i. 用户空间:应用程序,C库 ii. 内核空间:系统调用接口,内核,体系结构相关的代码原创 2011-12-11 22:41:17 · 491 阅读 · 0 评论 -
LINUX学习笔记20—内核配置与编译
1. 清除临时文件,中间文件和配置文件:在顶层目录下执行a) Make clean:删除产生文件,保存配置文件b) Make mrproper:删除产生文件和配置文件c) Make distclean:删除mrproper+编辑文件和补丁文件2. 确定目标系统的软硬件配置情况:比如CPU的类型、网卡的型原创 2011-12-13 14:22:44 · 613 阅读 · 0 评论 -
LINUX学习笔记21——内核模块
(一) LINUX“内核模块”的开发:1. 如何使用需要的组件a) 把所有的组件都编译进内核文件: i. 缺陷1:内核文件过大原创 2011-12-14 11:41:48 · 1305 阅读 · 0 评论 -
LINUX学习笔记9——文件访问
a) 创建文件:Int creat(const char *filename, mode_t mode)1. filename:要创建的文件名2. #include#include#include3. mode:创建模式:只能控制创建用户的写属性,其余用户都是不可写,所以一般是755a) S_I原创 2011-12-06 20:54:04 · 296 阅读 · 0 评论 -
LINUX学习笔记4——SMB服务器
a) 作用:实现LINUX与WINDOWS之间的共享,b) 连通网络:1. 选择:setup,network,:2. 查看本地电脑的网络:运行,cmd,ipconfig3. 关闭电脑防火墙4. 把linux的网络配置好5. 启动网络服务:/etc/init.d/n原创 2011-12-06 20:47:39 · 429 阅读 · 0 评论 -
LINUX学习笔记2——文件编程
a) vi 是linux系统的第一个全屏幕交互式编辑器b) 。vi 有3种工作模式,分别是命令行模式、插入模式、底行模式c) 基本功能:1. 进入编辑:vi hello.c2. 键入i进入插入模式3. 键入[ESC]退入到命令行模式4. 键入:进入底行模式5.原创 2011-12-06 20:37:34 · 239 阅读 · 0 评论 -
LINUX学习笔记7——使用GDB程序调试工具
一、GDB程序调试:程序调试工具1. 功能:a) 启动被调试程序b) 让被调试的程序在指定的位置停止c) 当程序被停住时,可以检查程序的状态2. 使用:a) 对程序gcc编译,具有可调试工具 –gb) 启动gdb:gdb 程序名1. 方法2原创 2011-12-06 20:51:03 · 374 阅读 · 0 评论 -
LINUX学习笔记8——Makefile工程管理
1. 作用:能够使整个软件工程的编译,链接只需要一个命令就可以完成。而gcc只能编译一个文件。2. Makefile文件:描述了整个工程的编译,链接等规则。才能执行make命令3. 文件名:make命令默认寻找makefile或者Makefile的工程文件,a) 指定文件名:make –f 文件名4.原创 2011-12-06 20:52:27 · 334 阅读 · 0 评论 -
LINUX学习笔记10——时间编程
a) 需要包涵头文件:#includeb) 时间类型:1. 格林威治标准时间:2. 日历时间:从一个标准的时间点到此时经过的秒数来表示的时间,本质是秒数c) 获取日历时间:time_t time(time_t *tloc):返回的是秒数1. T=time(NULL);d)原创 2011-12-06 20:55:36 · 320 阅读 · 0 评论 -
LINUX学习笔记12——进程间通信1管道
1. 概述:a) 为什么进程间通信:数据传输;资源共享;通知事件;进程控制;b) 基础来源:1. UNIX进程间通信:2. 基于system v 进程间通信:a) system v:UNIX操作系统接口的一个分支3. Posix 进程间通信:a)原创 2011-12-06 21:00:44 · 447 阅读 · 0 评论 -
LINUX学习笔记5——SHELL解析器
a) 作用:将用户输入的指令转换为相应的机器能够运行的程序。方便的重复输入相同的指令。b) 脚本文件:就是程序的意思c) 建立shell脚本文件1. 直接用vi打开的文件就可以,文件名的后缀为.sh2. #!/bin/sh:#!用来指定该脚本文件的解析程序3. chmod +x fi原创 2011-12-06 20:48:44 · 444 阅读 · 0 评论 -
LINUX学习笔记6——使用GCC编译器
a) 建立.c文件1. 注释:用//b) 编译:gcc 文件名 选项 生产的目标程序文件名c) 运行生成的文件 :./文件名 还是需要./d) 编译选项1. –o :指定产生的可执行程序的文件名a) 若不指定,默认生成a.out2. –c :只原创 2011-12-06 20:50:04 · 348 阅读 · 0 评论 -
LINUX学习笔记11——进程控制编程
1. 获取本进程ID: pid_t getpid(void),在程序中加入这个函数,就能在程序运行时获取本进程的ID号:printf(“pid=%d”,getpid()); 以整数形式输出a) #include2. 获取父进程ID: pid_t getppid(void)a) #include3. 创建原创 2011-12-06 20:57:29 · 395 阅读 · 0 评论 -
LINUX学习笔记14——进程间通信3共享内存
a) 意义:多个进程共享一部分物理内存。访问快,方便b) 先创建共享内存:int shmget(key_t key, int size, int shmflg)1. Key:标志共享内存的键值;0/IPC_PRIVATEa) Key=0:本不创建,但若shmflg仍为IPC_PRIVATE则仍创建2.原创 2011-12-06 21:02:46 · 322 阅读 · 0 评论 -
LINUX学习笔记1——LINUX系统命令
1. 界面切换:a) 进入字符界面:按住ctrl+alt+F1: 1. 首先需要进入用户登入,输入用户名和密码,标志:login 2. 注意:F1-F6都是字符界面,从而实现多任务多用户b) 进入图形化界面:按住ctrl+alt+F7c) 程序的暂停和跳出命令原创 2011-12-06 20:35:14 · 361 阅读 · 0 评论 -
LINUX学习笔记22——交叉工具链
交叉工具链1. 交叉编译:嵌入式系统开发采用交叉开发模式,是A机器上编译生成,运行在B机器上。两个机子有不同的机器指令。2. 工具链:可能指编译、汇编、链接等一整套工具。3. 作用:编译的程序才能在目标机上运行,用gcc编译的程序无法在目标机上运行。4. 安装a) 解压工具链到跟目录下tar xvz原创 2011-12-14 16:08:15 · 624 阅读 · 0 评论