![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux应用程序开发
HoJunjie
这个作者很懒,什么都没留下…
展开
-
笔记9 linux网络编程
一、socket(套接字)有三种类型:流式套接字(SCOK_STREAM)-------------->TCP协议数据报套接字(SOCK_DGRAM)------------->UDP协议原始套接字(SOCK_RAM)--------------------->IP协议网络地址: struct sockaddr { u_short sa_family; //协...原创 2018-05-03 13:32:24 · 263 阅读 · 0 评论 -
ubuntu12.04/14.04/16.04 安装搜狗输入法 解决shift按键不能切换英文输入
安装指南Ubuntu / Ubuntu Kylin 14.04 LTS 版本只需双击下载的 deb 软件包,即可直接安装搜狗输入法。Ubuntu 12.04 LTS 版本由于 Ubuntu 12.04 LTS 自带的 Fcitx 版本较旧,需要先通过 PPA 升级,才能安装下载的 deb 软件包。1. 点击左上角的图标打开Dash,输入update-manager,点击更新管理器。2. 在更新管理...原创 2018-06-09 14:59:44 · 7420 阅读 · 2 评论 -
笔记8 linux多线程编程
线程(thread ) < 进程 线程(thread ) -----> 依赖 <pthread.h> 和库 libpthread.a①创建线程int pthread_create(pthread_t * tidp,const pthread_attr_t *attr,void *(* start_rtn)(void),void *arg)tidp:线程...原创 2018-05-03 13:30:43 · 191 阅读 · 0 评论 -
笔记7 linux进程通讯
进程间需要通讯(IPC)? 数据传输 资源共享 事件通知 进程控制1.管道,(无名管道(父子),有名管道)2.信号3.消息队列4.共享内存5.信号量6.套接字(socket)一、管道①无名管道pipe()函数创建:(用于父子进程间通讯,必须在fork前调用pipe)int pipe(int filedis[2])filedis[0]用于读管道,filedis[1]用于写管道。close函数关...原创 2018-05-03 13:28:53 · 126 阅读 · 0 评论 -
笔记6 linux进程控制
进程的特点:动态性并发性独立性异步性进程三态:就绪 执行 阻塞进程ID: PID号父进程ID:PPID启动进程的用户ID:UID进程互斥:若干个进程使用某一个共享资源时,任何时刻最多运行一个进程使用进程同步:一组并发进程按一定的顺序执行的过程称为进程同步。A - B -C (使用消息和事件同步)进程调度:抢占式与非抢占式死锁:多个进程因竞争资源而形成一种僵局,若无外力,这些进程将永远...原创 2018-05-03 13:26:49 · 162 阅读 · 0 评论 -
笔记5 linux时间编程
UTC -------世界标准时间 --格林威治标准时间Calendar Time :日历时间:1970/1/1/0点#include <time.h>struct tm{int tm_sec;int tm_min;int tm_hour;int tm_mday;int tm_mon;int tm_year; // +1990 = 哪一年int tm_wday; //周几...原创 2018-05-03 13:25:25 · 118 阅读 · 0 评论 -
笔记4 linux文件编程
一、文件编程可使用两种:1、linux系统调用2、c语言库函数1、系统调用 ① int creat(const char* filename,mode_t mode) filename ----------包含路径 :/home/joy/hello.c mode ---------------S_IRUSR(1) S_IWUS...原创 2018-05-03 13:23:30 · 341 阅读 · 0 评论 -
笔记3 makefile GUN make
make在执行时,需要一个命名为Makefile的文件。Makefile文件描述了整个工程的编译,链接等规则。 make默认为找makefile或者Makefile 命名的文件 ,如果没有可以用make -f 文件名 进行指定 一、术语规则:用于说明如何生成一个或多个目标文件 规则格式: targets:目标 依赖 命令二、伪目标 只有动作,...原创 2018-05-03 13:21:53 · 248 阅读 · 0 评论 -
笔记2 gdb
c项目的错误语法错误:gcc 能查出算法错误:gdb 、 printf gdb的使用步骤:1.编译生成可执行文件gcc -g gdbtest.c -o gdbtest (-g 选项)2.启动gdbgdb gdbtest3.在main函数打个断点break main (简写 b main){ 打断点命令: list (简写l ) ----查看程序 brea...原创 2018-05-03 13:20:03 · 108 阅读 · 0 评论 -
笔记1 gcc
一、gcc编译程序时,有四个阶段①预处理②编译③汇编④链接二、文件类型.a 静态库文件.C / .cc /.cxx c++源码文件.i 预处理过的c源码文件.ii 预处理过的c++源码文件.o 编译后的目标文件.s 汇编源码.S 经过预处理的汇编源码文件三、基本用法用法:gcc [选项] 文件...-o 指定输出可执行文件的文件名 (不指定 默认 a.out)-c 只编译,不连接生...原创 2018-05-03 13:17:13 · 110 阅读 · 0 评论 -
unbuntu下一键配置git脚本
unbuntu下一键配置git #!/bin/bash username="xxxxx" useremail="xxxxx@163.com" git config --global alias.st status echo "git status --> st " git config --global alias.co checkout echo "git checkout -->...原创 2018-07-13 10:15:19 · 375 阅读 · 0 评论