My Project
|
#include "kernel_engine.h"
#include "kernel_print.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <unistd.h>
#include <sys/wait.h>
#include "ename.c.inc"
Go to the source code of this file.
Macros | |
#define | BUF_SIZE 500 |
Functions | |
void | safe_kernel_printf (const char *format,...) |
스레드 안전한 출력 함수 | |
void | create_threads (int num_threads,...) |
스레드 생성 함수 | |
void | create_single_process (void(*func)()) |
단일 프로세스 생성 함수 | |
void | create_multi_processes (int num_processes,...) |
다중 프로세스 생성 함수 | |
sem_t * | init_semaphore (int value) |
세마포어 초기화 함수 | |
pthread_mutex_t * | init_mutex () |
뮤텍스 초기화 함수 | |
LinkedList * | create_linkedlist () |
연결 리스트 생성 함수 | |
void | push (LinkedList *list, void *data) |
연결 리스트에 요소 추가 함수 | |
void * | pop (LinkedList *list) |
연결 리스트에서 요소 제거 함수 | |
bool | is_empty (LinkedList *list) |
연결 리스트가 비었는지 확인하는 함수 | |
void | destroy_linkedlist (LinkedList *list) |
연결 리스트 삭제 함수 | |
void | kernel_errMsg (const char *format,...) |
커널 오류 메시지 출력 함수 | |
void | kernel_errExit (const char *format,...) |
커널 오류 종료 함수 | |
void | kernel_errExitEN (int errnum, const char *format,...) |
커널 오류 종료 함수 (오류 번호 사용) | |
void | kernel_fatal (const char *format,...) |
커널 치명적 오류 함수 | |
void | kernel_usageErr (const char *format,...) |
커널 사용법 오류 함수 | |
void | kernel_cmdLineErr (const char *format,...) |
커맨드 라인 오류 처리 함수 | |
void * | semaphore_thread (void *arg) |
세마포어를 사용하는 스레드 작업 함수 | |
void * | mutex_thread (void *arg) |
뮤텍스를 사용하는 스레드 작업 함수 | |
void | run_multithreading (int num_threads, int use_semaphore,...) |
멀티스레드 실행 함수 (쓰레드 수 및 동기화 방법을 입력받음) | |
#define BUF_SIZE 500 |
Definition at line 24 of file kernel_engine.c.
LinkedList * create_linkedlist | ( | ) |
void create_multi_processes | ( | int | num_processes, |
... ) |
다중 프로세스 생성 함수
다중 프로세스 생성 함수 선언
num_processes | 생성할 프로세스 수 |
... | 프로세스 함수 포인터 |
Definition at line 94 of file kernel_engine.c.
void create_single_process | ( | void(* | func )() | ) |
단일 프로세스 생성 함수
단일 프로세스 생성 함수 선언
func | 실행할 함수 포인터 |
Definition at line 76 of file kernel_engine.c.
void create_threads | ( | int | num_threads, |
... ) |
스레드 생성 함수
스레드 생성 함수 선언
num_threads | 생성할 스레드 수 |
... | 스레드 함수 포인터 |
Definition at line 50 of file kernel_engine.c.
void destroy_linkedlist | ( | LinkedList * | list | ) |
연결 리스트 삭제 함수
연결 리스트 삭제 함수 선언
list | LinkedList 포인터 |
Definition at line 238 of file kernel_engine.c.
pthread_mutex_t * init_mutex | ( | ) |
sem_t * init_semaphore | ( | int | value | ) |
세마포어 초기화 함수
세마포어 초기화 함수 선언
value | 초기화할 값 |
Definition at line 122 of file kernel_engine.c.
bool is_empty | ( | LinkedList * | list | ) |
연결 리스트가 비었는지 확인하는 함수
연결 리스트가 비었는지 확인하는 함수 선언
list | LinkedList 포인터 |
Definition at line 229 of file kernel_engine.c.
void kernel_cmdLineErr | ( | const char * | format, |
... ) |
커맨드 라인 오류 처리 함수
커맨드 라인 오류 처리 함수 선언
format | 포맷 문자열 |
... | 가변 인자 리스트 |
Definition at line 382 of file kernel_engine.c.
void kernel_errExit | ( | const char * | format, |
... ) |
커널 오류 종료 함수
커널 오류 종료 함수 선언
format | 포맷 문자열 |
... | 가변 인자 리스트 |
Definition at line 313 of file kernel_engine.c.
void kernel_errExitEN | ( | int | errnum, |
const char * | format, | ||
... ) |
커널 오류 종료 함수 (오류 번호 사용)
커널 오류 종료 함수 선언 (오류 번호 사용)
errnum | 오류 번호 |
format | 포맷 문자열 |
... | 가변 인자 리스트 |
Definition at line 330 of file kernel_engine.c.
void kernel_errMsg | ( | const char * | format, |
... ) |
커널 오류 메시지 출력 함수
커널 오류 메시지 출력 함수 선언
format | 포맷 문자열 |
... | 가변 인자 리스트 |
Definition at line 296 of file kernel_engine.c.
void kernel_fatal | ( | const char * | format, |
... ) |
커널 치명적 오류 함수
커널 치명적 오류 함수 선언
format | 포맷 문자열 |
... | 가변 인자 리스트 |
Definition at line 346 of file kernel_engine.c.
void kernel_usageErr | ( | const char * | format, |
... ) |
커널 사용법 오류 함수
커널 사용법 오류 함수 선언
format | 포맷 문자열 |
... | 가변 인자 리스트 |
Definition at line 362 of file kernel_engine.c.
void * mutex_thread | ( | void * | arg | ) |
뮤텍스를 사용하는 스레드 작업 함수
뮤텍스를 사용하는 스레드 작업 함수 선언
arg | 뮤텍스 포인터 |
Definition at line 427 of file kernel_engine.c.
void * pop | ( | LinkedList * | list | ) |
연결 리스트에서 요소 제거 함수
연결 리스트에서 요소 제거 함수 선언
list | LinkedList 포인터 |
Definition at line 203 of file kernel_engine.c.
void push | ( | LinkedList * | list, |
void * | data ) |
연결 리스트에 요소 추가 함수
연결 리스트에 요소 추가 함수 선언
list | LinkedList 포인터 |
data | 추가할 데이터 |
Definition at line 183 of file kernel_engine.c.
void run_multithreading | ( | int | num_threads, |
int | use_semaphore, | ||
... ) |
멀티스레드 실행 함수 (쓰레드 수 및 동기화 방법을 입력받음)
멀티스레드 실행 함수 선언 (쓰레드 수 및 동기화 방법을 입력받음)
num_threads | 생성할 스레드 수 |
use_semaphore | 세마포어 사용 여부 |
... | 동기화 방법 (세마포어 또는 뮤텍스) |
Definition at line 453 of file kernel_engine.c.
void safe_kernel_printf | ( | const char * | format, |
... ) |
스레드 안전한 출력 함수
스레드 안전한 출력 함수 선언
format | 포맷 문자열 |
... | 가변 인자 리스트 |
Definition at line 32 of file kernel_engine.c.
void * semaphore_thread | ( | void * | arg | ) |
세마포어를 사용하는 스레드 작업 함수
세마포어를 사용하는 스레드 작업 함수 선언
arg | 세마포어 포인터 |
Definition at line 402 of file kernel_engine.c.