E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
linux高级编程
linux高级编程
系统调用01、什么是系统调用?02、Linux系统调用之I/O操作(文件操作)03、文件描述符的复制:dup(),dup2()多进程实现多任务04、进程的介绍05、Linux可执行文件结构与进程结构06、多进程实现多任务(一):fork()07、多进程实现多任务(二):vfork()08、进程的控制:结束进程、等待进程结束09、Linux特殊进程之僵尸进程10、Linux特殊进程之孤儿进程11、L
Richards
·
2018-04-09 14:00
实现一个HTTP服务器的Demo
在学完
linux高级编程
后,开启一个HTTP服务器的demo,因为一个完整的http服务器涉及的范围很广,远不是一个人可以全部完成的。
明立
·
2017-08-25 10:37
linux
linux下文件操作函数极其介绍
linux高级编程
之文件操作:1、perror(constchar*msg);用于产生一条基于其参数字符串的错误信息,错误格式是:msg指向的字符串,冒号,错误消息,换行符;2、linux文件种类:普通文件
韩A
·
2017-04-18 15:07
linux
文件操作
Linux高级编程
--11.信号
基本概念信号在Linux中是一个比较常见的概念,例如我们按Ctrl+C中断前台进程,通过Kill命令结束进程都是通过信号实现的。下面就以Ctrl+C为例简单的说明信号的处理流程:用户按下Ctrl-C,这个键盘输入产生一个硬件中断。该进程的用户空间代码暂停执行,CPU从用户态切换到内核态处理硬件中断。终端驱动程序将Ctrl-C解释成一个SIGINT信号,记在该进程的PCB中(也可以说发送了一个SIG
linzj
·
2016-05-12 14:00
Linux高级编程
--08.线程概述
线程有的时候,我们需要在一个基础中同时运行多个控制流程。例如:一个图形界面的下载软件,在处理下载任务的同时,还必须响应界面的对任务的停止,删除等控制操作。这个时候就需要用到线程来实现并发操作。和信号处理函数的控制在处理完信号之后就结束不同的是,多线程的控制流程可以长期并存,操作系统会在各线程之间调度和切换,就像在多个进程之间调度和切换一样,但创建线程开销要比进程小得多。因此,线程往往也被称作轻量级
linzj
·
2016-05-12 14:00
Linux高级编程
--07.进程间通信
每个进程各自有不同的用户地址空间,进程之间要交换数据必须通过在内核中开辟缓冲区,从而实现数据共享。管道管道是一种最基本的IPC机制,由pipe函数创建:intpipe(intfiledes[2]); 调用pipe函数时在内核中开辟一块缓冲区(称为管道)用于通信,它有一个读端一个写端,然后通过filedes参数传出给用户程序两个文件描述符,filedes[0]指向管道的读端,filedes[1]指
linzj
·
2016-05-12 14:00
Linux高级编程
--06.进程概述
进程控制块在Linux中,每个进程在内核中都有一个进程控制块(PCB)来维护进程相关的信息,它通常包含如下信息:进程id。系统中每个进程有唯一的id,在C语言中用pid_t类型表示,其实就是一个非负整数。进程的状态,有运行、挂起、停止、僵尸等状态。进程切换时需要保存和恢复的一些CPU寄存器。描述虚拟地址空间的信息。描述控制终端的信息。当前工作目录(CurrentWorkingDirectory)。
linzj
·
2016-05-12 14:00
Linux高级编程
--05.文件读写
缓冲I/O和非缓冲I/O文件读写主要牵涉到了如下五个操作:打开、关闭、读、写、定位。在Linux系统中,提供了两套API,一套是C标准API:fopen、fclose、fread、fwrite、fseek,另一套则是POSIX定义的系统API:open、close、read、write、seek。其中POSIX定义的API是系统API,而C标准API是基于系统API的封装,并且提供了额外的缓冲的功
linzj
·
2016-05-12 14:00
Linux高级编程
--04.GDB调试程序(查看数据)
查看栈信息当程序被停住了,你需要做的第一件事就是查看程序是在哪里停住的。当你的程序调用了一个函数,函数的地址,函数参数,函数内的局部变量都会被压入“栈”(Stack)中。你可以用GDB命令来查看当前的栈中的信息。下面是一些查看函数调用栈信息的GDB命令:backtrace/bt:打印当前的函数调用栈的所有信息。如:(gdb)bt #0func(n=250)attst.c:6 #10x08048
linzj
·
2016-05-12 14:00
Linux高级编程
--04.GDB调试程序(设置断点)
调试已运行的程序在UNIX下用ps查看正在运行的程序的PID(进程ID),然后用gdbPID格式挂接正在运行的程序。先用gdb关联上源代码,并进行gdb,在gdb中用attach命令来挂接进程的PID。并用detach来取消挂接的进程。暂停/恢复程序运行调试程序中,暂停程序运行是必须的,GDB可以方便地暂停程序的运行。你可以设置程序的在哪行停住,在什么条件下停住,在收到什么信号时停往等等。以便于你
linzj
·
2016-05-12 14:00
Linux C高级编程——网络编程基础(1)
Linux高级编程
——BSDsocket的网络编程宗旨:技术的学习是有限的,分享的精神的无限的。
a1314521531
·
2016-04-04 12:00
编程
linux
网络
socket
网络编程
Linux C——时间编程
Linux高级编程
——时间编程宗旨:技术的学习是有限的,分享的精神的无限的。
a1314521531
·
2016-04-01 14:00
编程
linux
日历
时间编程
C时间编程
linux基本知识1
1.linux基础2.linuxc语言(数据结构)3.
linux高级编程
4.ARM体系结构5.sqlite/mysql数据库6.linuxc++7.QT界面开发8.nos 裸机接口驱动(s5pv210)
yj775132158
·
2016-03-30 14:00
linux
10本Linux免费电子书
Advanced Linux programming |
Linux高级编程
1.
·
2015-10-31 11:50
linux
嵌入式系统开发学习步骤(
Linux高级编程
学习顺序)
1、Linux 基础 安装Linux操作系统 Linux文件系统 Linux常用命令 Linux启动过程详解 熟悉Linux服务能够独立安装Linux操作系统 能够熟练使用Linux系统的基本命令 认识Linux系统的常用服务安装Linux操作系统 Linux基本命令实践 设置Linux环境变量 定制Linux的服务 Shell 编程基础使用vi编辑文件 使用Emacs编辑文
·
2015-10-27 16:05
linux
〖Linux〗
Linux高级编程
- 进程间通信(Interprocess Communication)
[转自: http://blog.csdn.net/Paradise_for_why/article/details/5550619] 这一章就是著名的IPC,这个东西实际的作用和它的名字一样普及。例如我们浏览网页,打印文章,等等。 IPC总共有五种类型: 共享内存(Shared Memory):最容易理解的一种,就像一个特工把情报放在
·
2015-10-27 13:36
process
linux嵌入式视频教程分享下载
深入浅出linux嵌入式视频教程下载【视频+代码+课件】,共计8个多G,课程从c语言——c++基础——数据结构和算法——arm体系结构——STL模板——Linux系统移植——
Linux高级编程
UC——嵌入式
gife008
·
2014-09-05 11:18
linux嵌入式视频教程分享下载
深入浅出linux嵌入式视频教程下载【视频+代码+课件】,共计8个多G,课程从c语言——c++基础——数据结构和算法——arm体系结构——STL模板——Linux系统移植——
Linux高级编程
UC
栏目记者
·
2014-09-05 11:00
linux
嵌入式
linux嵌入式开发教程下载
深入浅出linux嵌入式视频教程下载【视频+代码+课件】,共计8个多G,课程从c语言――c++基础――数据结构和算法――arm体系结构――STL模板――Linux系统移植――
Linux高级编程
UC――嵌入式
方小茶
·
2014-09-05 10:24
linux
嵌入式
c++ 学习笔记(高级linux编程) day13
linux高级编程
day13笔记回顾:线程与进程1.进程由于资源独立,进程的主要关注是解决资源共享2.线程先天是数据共享,线程主要关注共享数据脏1.互斥量(线程内)读写锁2.信号/条件量调度(线程之间)
redpoppet
·
2014-08-19 18:47
c++
linux
c++ 学习笔记(高级linux编程) day4
linux高级编程
day04笔记一.IO与文件映射1.IO的共享与效率read与write其中数据缓冲的大小读取数据的缓冲大小:getpagesize。
redpoppet
·
2014-08-19 18:31
c++
linux
寒假学习 第25天 (linux 高级编程)
寒假学习第25天(
linux高级编程
)笔记总结一、信号量(进程同步)模型(1)创建或者得到信号量 semget intsemget(key_tkey, intnsems
billvsme
·
2014-02-15 23:00
C++
linux
unix
socket
进程通信
寒假学习 第24天 (linux 高级编程)
寒假学习第24天(
linux高级编程
)笔记总结一、基于socket文件的IPC两种模型: 对等模型 C/S模型1.对等模型 绑定 (1)建立socker内核对象 socket函数
billvsme
·
2014-02-14 00:00
c
linux
unix
寒假学习 第22、23天 (linux 高级编程)
寒假学习第22、23天(
linux高级编程
)笔记总结一、基于内存的通信一组内核共享工具ipcs可以看到三段东西SharedMemorySegments共享内存SemaphoreArrays信号量数组,共享内存数组
billvsme
·
2014-02-13 01:46
寒假学习-linux编程
寒假学习 第22、23天 (linux 高级编程)
寒假学习第22、23天(
linux高级编程
)笔记总结一、基于内存的通信一组内核共享工具ipcs可以看到三段东西SharedMemorySegments 共享内存SemaphoreArrays 信号量数组
billvsme
·
2014-02-13 01:00
c
linux
unix
寒假学习 第21天 (linux 高级编程)
寒假学习第21天(
linux高级编程
)笔记总结一、基于普通文件IPCIPC(Inter-ProcessCommunication,进程间通信)例子:main1.c 向tmp写入数据#include #include
billvsme
·
2014-02-11 01:00
c
linux
unix
寒假学习 第20天 (linux 高级编程)
寒假学习第20天(
linux高级编程
)笔记总结一、sigqueue/sigaction1.信号中断函数是否被其他信号中断?
billvsme
·
2014-02-09 01:00
c
linux
unix
寒假学习 第18、19天 (linux 高级编程)
寒假学习第18、19天(
linux高级编程
)笔记总结接着上上次一、信号3.信号的应用(实现多任务)使用定时器实现多任务例子:同时显示随机数与时间#include #include #include #
billvsme
·
2014-02-08 00:00
c
linux
unix
寒假学习 第16.17天 (linux 高级编程)
寒假学习第16.17天(
linux高级编程
)笔记总结一、进程的基本控制(进程的同步)1.进程的常见控制函数 pause sleep/usleep atexit on_exitintatexit
billvsme
·
2014-02-06 02:00
c
linux
unix
寒假学习 第15天 (linux 高级编程) 笔记 总结
寒假学习第15天(
linux高级编程
) 笔记总结接着昨天一、进程2.创建进程 (1)intsystem(constchar*command); (2) FILE*popen(constchar*command
billvsme
·
2014-02-04 00:00
c
linux
unix
寒假学习 第13,14天 (linux 高级编程)
寒假学习第13,14天(
linux高级编程
) 笔记总结一、IO与文件目录管理1.pread与lseek+read的区别 pread读取后不会改变读写位置2.mmap映射 /proc/${pid}/mem
billvsme
·
2014-02-03 00:00
c
linux
unix
寒假学习 第12天 (linux 高级编程)
寒假学习第12天(
linux高级编程
) 笔记总结curses接着前天6.字符属性与颜色判定终端是否支持颜色boolhas_colors();//都支持颜色,建议不判定初始化颜色:intstart_color
billvsme
·
2014-01-27 22:00
c
linux
unix
寒假学习 第11天 (linux 高级编程)
寒假学习第11天(
linux高级编程
) 笔记总结一、curses1.简介:CUI字符界面,GUI:图形界面curses就是cui的库老版本libcurses.so,新版本libncurses.so printf
billvsme
·
2014-01-25 22:00
C++
c
linux
unix
寒假学习 第九、十天 (linux 高级编程)
寒假学习第九、十天(
linux高级编程
)一、IO与文件映射1.IO的共享与效率read与write其中数据缓冲的大小读取数据的缓冲:getpagesize。
billvsme
·
2014-01-25 00:00
C++
c
linux
unix
寒假学习 第七、八天 (linux 高级编程)
寒假学习第七、八天(
linux高级编程
)笔记小结一、IO基础1.认识内核对象 系统不允许程序直接访问设备和内存,但可以通过内核系统函数去访问,系统对每个内核对象对象分配ID号。
billvsme
·
2014-01-22 22:00
C++
c
linux
unix
寒假学习 第六天 (linux 高级编程)
寒假学习第六天(
linux高级编程
)笔记小结一、make与makefilemakefile列子OBJ=add.osub.o add.o:add.c gccadd.c-c-fpic sub.o:sub.c
billvsme
·
2014-01-20 23:00
寒假学习 第四、五天 (linux 高级编程)
寒假学习第四、五天 (
linux高级编程
)笔记小结一、映射虚拟内存mmap/unmap void*mmap(void*start,//指定映射的虚拟地址0由系统指定开始位置)size_tlength
billvsme
·
2014-01-18 22:00
C++
c
linux
unix
寒假学习 第三天 (linux 高级编程)
寒假学习第三天 (
linux高级编程
)笔记小结晚上刷了笔记本的BIOS,尽然刷坏了,折腾了一个晚上还没好,我勒个去。只能在自己的台式机上搞了。
billvsme
·
2014-01-17 01:00
C++
c
linux
unix
寒假学习 第二天 (linux 高级编程)
寒假学习第二天(
linux高级编程
)笔记小结一、linux内存管理接着昨天5.函数调用栈空间的分配与释放函数执行时有自己的临时栈空间,c++成员函数有两个临时栈空间一个是成员函数的还有一个是对象的stdcallcdeclfastcall
billvsme
·
2014-01-15 23:45
寒假学习-linux编程
寒假学习 第二天 (linux 高级编程)
寒假学习第二天 (
linux高级编程
)笔记小结一、linux内存管理 接着昨天5.函数调用栈空间的分配与释放 函数执行时有自己的临时栈空间,c++成员函数有两个临时栈空间一个是成员函数的还有一个是对象的
billvsme
·
2014-01-15 23:00
C++
c
linux
寒假学习计划
寒假学习计划暑假33天 每个星期天休息不学习上午:
linux高级编程
视频 每天 看一集当天写小结 看书《UNIX环境高级编程》 视频地址: http://pan.baidu.com
billvsme
·
2014-01-15 08:00
寒假学习 第一天 (linux 高级编程)
寒假学习day01笔记
linux高级编程
一、linux内存管理1.变量空间linux每运行一个程序都会在/proc内生成一个跟自己pid一样的文件夹,你面放着程序有关的信息ldd./1可以看到linux-vdso.so
billvsme
·
2014-01-15 00:17
寒假学习-linux编程
寒假学习 第一天 (linux 高级编程)
寒假学习day01笔记
linux高级编程
一、linux内存管理 1.
billvsme
·
2014-01-15 00:00
C++
linux
unix
qt
自己的工作计划-备忘
linux高级编程
,视频http://watchmen.cn/video/linux/linuxC++http://www.yolinux.com/TUTORIALS/LinuxTutorialC++.
xingxiliang
·
2013-12-30 17:00
学习
Linux高级编程
09_B
19semA.c#include#include#include#include#include//exit()main(){ key_t key; int semid; //1 创建信号量 key =ftok(".",99); if(key ==-1) { printf("fto
coperator
·
2013-06-15 11:00
学习
Linux高级编程
09_A
一、信号量(同步) 1.回顾: 一个进程控制另外一个进程 逻辑变量+pause/sleep+信号 2.信号量(semaphore)信号灯 三个数据:红灯/绿灯/黄灯 60 90 5
coperator
·
2013-06-15 11:00
学习
Linux高级编程
08_B
Ipcs shmA.c#include#include#include#include#include#include#include//ftok() main(){ key_t key; int shmid; //1 创建共享内存shmget key =ftok(".",255); if(key ==-1) {
coperator
·
2013-06-15 11:00
学习
Linux高级编程
08_A
一、基于文件的通信 1.普通文件(io/mmap) 2.有名管道文件 3.匿名管道文件 4.Socket二、基于内存的通信 0.一组内核内存的工具 ipcs ipcs-m ipcs-q
coperator
·
2013-06-15 11:00
学习
Linux高级编程
07_B
Sighandle.c#include#includevoidhandle(ints){ printf("hello start\n"); sleep(10); printf("hello end\n");}main(){ signal(SIGINT, handle); while(1);} Sigaction.c#inclu
coperator
·
2013-06-15 11:00
学习
Linux高级编程
07_A
回顾: 1.信号的作用 2.理解信号: 软中断 可靠与不可靠kill-l 3.信号发送与注册kill/raisealarmsetitimersignal 4.信号的屏蔽sigprocmasksigemptysetsigfillset 5.信号屏蔽切换
coperator
·
2013-06-15 11:00
上一页
1
2
3
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他