파일을 사용하기 위해 열기(open)합니다. 파일 열기에는 표준 함수인 fopen()이 있습니다. (fopen() : 표준 C 라이브러리, open() : 리눅스 제공함수) 헤더: fcntl.h 형태: int open (const char *FILENAME, int FLAGS[, mode_t MODE]) 인수: char *FILENAME 대상 파일 이름int FLAGS 파일에 대한 열기 옵션[, mode_t MODE] O_CREAT 옵션 사용에 의해 파일이 생성될 때…
[카테고리:] IT
로이터와 커넥션을 맺은 상태에서 폴링을 통해 live한지 알아보는데, fd가 0보다 큰 값이 리턴되었다. 확인해보니 폴링시, select를 통해 fd를 확인 후 FD_ISSET()을 통해 리턴값이 들어오는데..–>FD_ISSET() macro는 이름 그대로 특정 file descriptor가 fd_set에 있는지를 확인한다.return : true(1) or false(0) 클라이언트와 연결이 끊어졌을…
공유 자원에 접근하고자 하는 두개의 쓰레드 a,b가 있다고 해보자. 이때, 공유 자원은 한번에 하나의 쓰레드만 접근해야 race condition이 발생하지 않기 때문에 하나의 쓰레드가 공유자원을 사용중이라면 다른 쓰레드는 그 쓰레드가 공유 자원을 모두 사용할때까지 기다려야 한다. 이때, 기다리는 쓰레드가 공유 자원을…
Thread-safe하기 위한 동기화 리마인드를 위한 소스. ThreadSyncronizedTest.java userTaskRunnable.java main 함수에서 쓰레드를 작동시키면, runnable을 통해 쓰레드별로 withdraw(money) 호출 synchronized 미사용의 경우, newBalance = userBalance – amount; 까지 처리 후.. userBalance가 처리되지 않은 상태에서 타쓰레드로 컨텍스트 스위칭이 발생한다고 가정하자. t1 에서 100달러…
//.profile 수정 alias vi=’TERM=xtermc vim’ .vimrc 도 수정하자. // syntax 처리 온 syntax on
– Deadlock 회피 – 자원이 어떤 방식으로 요청될지 추가정보를 요구하는 것. 1. 자원할당 알고리즘 기법 2. 은행권 알고리즘 – 미리 자원상황 및 사용량 파악 -> 요청오면 -> 안정이면 -> 할당 – Deadlock 회복 1….
– CPU 인터럽트 – CPU는 하던 일을 중단 한후, 서비스루틴의 실행지점으로 시작주소를 옮긴다. 실행을 완료한 후, 인터럽트된 일을 재개한다. – ex : 나는 6시간에 한번씩 안약을 넣는다 (하던일 도중 안약을 넣음) – 프로세스 관리 – 스케쥴링 기법…
연결되어 있는 객체 간의 관계를 표현할 수 있는 자료구조 – 설정 – 위치는 Vertex (정점) or Node – 관계는 Edge (간선) or Link – 종류 – 무방향 그래프 – 방향 그래프 …
깊이 우선 탐색. 깊이를 우선적으로 탐색하고 다음 노드로 넘어간다. 깊이 제한과 백트래킹 탐색 과정이 시작 노드에서 한없이 깊이 진행되는 것을 막기 위해 깊이 제한(depth bound)을 사용한다. 깊이 제한에 도달할 때까지 목표노드가 발견되지 않으면 최근에 첨가된 노드의 부모노드로 되돌아와서, 부모노드에 이전과는…