操作系统
文章平均质量分 91
心心知忆
这个作者很懒,什么都没留下…
展开
-
open()和fopen()以及popen
open #includ e <sys/types.h> #include <sys/stat.h> #include <fcntl.h> int open(const char *pathname, int flags); int open(const char *pathname, int flags, mode_t mode) int creat(const char *pathname, mode_t mode);open () 后可原创 2021-01-31 11:26:55 · 962 阅读 · 0 评论 -
semop-System V信号量操作
1.头文件#include <sys / types.h>#include <sys / ipc.h>#include <sys / sem.h>函数 int semop(int semid ,struct sembuf * sops ,size_t nsops ); 功能:用户改变信号量的值。也就是使用资源还是释放资源使用权。**semid ** :信号量的标识码。也就是semget()的返回值。sops: 是一个指向结构体数组的指针。原创 2020-09-26 20:20:23 · 355 阅读 · 0 评论 -
semtcl-信号量的操作
头文件#include <sys / types.h>#include <sys / ipc.h>#include <sys / sem.h>函数 int semctl(int semid ,int semnum ,int cmd ,...);系统调用semctl用来执行在信号量集上的控制操作。这和在消息队列中的系统调用msgctl是十分相似的。但这两个系统调用的参数略有不同。semid 信号量的标志码(ID),也就是semget()函数的返回值;原创 2020-09-26 20:04:50 · 460 阅读 · 0 评论 -
semget-获取System V信号量集标识符
头文件 #include <sys / types.h> #include <sys / ipc.h> #include <sys / sem.h>函数 int semget(key_t key ,int nsems ,int semflg ); 关键标识符key:所创建或打开信号量集的键值, key 值可用[fork()](https://blog.csdn.net/weixin_43117602/article/details/10原创 2020-09-26 19:27:02 · 245 阅读 · 0 评论 -
消息队列-msgop
msgrcv,msgsnd-系统V消息队列操作头文件 #include <sys / types.h> #include <sys / ipc.h> #include <sys / msg.h>函数 int msgsnd(int msqid ,const void * msgp ,size_t msgsz ,int msgflg );发送消息 ssize_t msgrcv(int msqid ,void * msgp ,size_t原创 2020-09-24 17:19:48 · 252 阅读 · 0 评论 -
time
time 时间-以秒为单位获取时间头文件 #include <time.h>函数 time_t time(time_t * tloc ); time()以秒为单位返回时间, 1970-01-01 00:00:00 +0000(UTC)。 如果tloc为非NULL,则返回值也存储在内存中tloc 指向。 法一:t1 = time(0);或t1= time(NULL);将空指针传递给time()函数,并将time()返回值赋给变量t1 法二:ti原创 2020-09-24 15:13:04 · 129 阅读 · 0 评论 -
获取当前日期和时间ctime()
ctime() -将日期和时间转换为细分时间头文件#include <time.h>函数 char * asctime(const struct tm * tm ); char * asctime_r(const struct tm * tm ,char * buf ); char * ctime(const time_t * timep ); char * ctime_r(const time_t * timep ,char * buf ); str原创 2020-09-24 15:12:44 · 1344 阅读 · 0 评论 -
消息队列-msgctl
msgctl-系统V消息控制操作头文件#include <sys / types.h>#include <sys / ipc.h>#include <sys / msg.h>函数 int msgctl(int msqid ,int cmd ,struct msqid_ds * buf );控制消息队列第一个参数msgqid 是消息队列对象的标识符。所述的msqid_ds数据结构定义在在<sys / msg.h>如下:struct msq原创 2020-09-24 11:19:27 · 970 阅读 · 0 评论 -
消息队列-msgget
msgget-获取系统V消息队列标识符头文件#include <sys / types.h>#include <sys / ipc.h>#include <sys / msg.h>函数 int msgget(key_t key ,int msgflg );创建或打开消息队列key:是个键值, 多个进程可通key值来访问同一个消息队列.key值通过ftok函数获取;...原创 2020-09-24 10:56:05 · 3168 阅读 · 0 评论 -
ftok-获取key值
ftok-将路径名和项目标识符转换为System V IPC键头文件#include <sys / types.h>#include <sys / ipc.h>函数 key_t ftok(const char * pathname ,int proj_id ); 该ftok()函数使用由给定命名的文件的标识 路径名(必须是指现有的,可访问的文件)和proj_id的 最低有效8位(必须为非零) 生成一个key_t类型的系统V IPC密钥,适用于原创 2020-09-24 10:40:32 · 292 阅读 · 0 评论 -
客户端和服务端端口的建立与连接
socket(建立通信的端口,并返回引用该端口的文件描述符).man sockst : https://man7.org/linux/man-pages/man2/socket.2.html头文件 #include <sys/types.h> #include <sys/socket.h>函数 int socket(int domain, int type, int protocol);说明 socket()创建用于通信的端点并返回文件引用该端点原创 2020-09-29 11:01:20 · 2376 阅读 · 0 评论 -
mmap-将文件或设备映射或取消映射到内存中
mmap-将文件或设备映射或取消映射到内存中头文件 #include <sys / mman.h>函数 void * mmap(void * addr ,size_t length ,int prot ,int 标志, int fd ,off_t offset ); int munmap(void * addr ,size_t length );说明 mmap()在虚拟地址空间中创建一个新的映射调用过程。新映射的起始地址是 在addr中指定。length参数原创 2020-09-24 09:37:50 · 1022 阅读 · 0 评论 -
getopt()
标题GETOPT()头文件:#include <unistd.h>函数:int getopt(int argc ,char * const argv [] ,const char * optstring );extern char * optarg ;extern int optind ,opterr ,optopt ;getopt()函数解析命令行参数。其参数argc和argv是main 函数的参数计数和参数队列。如果重复调用getopt(),它将依次从每个选项元素中返回每个选项原创 2020-09-28 16:40:02 · 180 阅读 · 0 评论 -
目录的操作:opendir(),readdir(),closedir(), scandir().
标题 目录的操作:opendir(),readdir(),closedir(), scandir().opendir()(打开目录)头文件 #include <sys/types.h> #include <dirent.h>函数 DIR *opendir(const char *name); DIR *fdopendir(int fd);说明 opendir()函数打开一个目录名对应的目录流,并返回指向该目录的DIR *形态的目录流,和open原创 2020-12-22 22:07:49 · 843 阅读 · 0 评论