LINUX/ABOUT LINUX 11

[Linux] IPC 예제 ③ Soket Model (fork 방식)

[ CLIENT ] 1. socket() 함수를 사용하여 서버 소켓 오픈 2. 서버에 connect request 전송 3. 메시지를 보내거나 받음 4. 소켓 클로즈 [ SERVER ] 1. socket() 함수를 사용하여 서버 소켓 오픈 2. 열어놓은 소켓에 서버의 ip, port 바인딩 3. listen() 함수 사용하여 메시지 받을 수 있는 상태 전환 4. 클라이언트가 보낸 request 받고, 파일 디스크립터 생성 5. send()를 통해 메시지 주거나 recv() 통해 받음 6. 열어놓은 소켓 클로즈 소켓은 fork의 방식과 thread의 방식이 존재. 실무에서는 thread를 더 많이 쓰고 선호함 Socket fork 란? 부모 프로세스에서 자식 프로세스를 하나 복제 생성 해주는 역할을 한다 ..

LINUX/ABOUT LINUX 2022.11.24

[Linux] IPC 예제 ② Semaphore

본 포스팅에서는 Semaphore 와 관련된 기본 예제를 프로그래밍 한다. IPC 통신과 각각의 방법의 개념에 대해 공부하고 싶다면 아래 포스팅을 참조하자 [Linux] IPC (Inter-Process Communication) 기본 개념 (tistory.com) [Linux] IPC (Inter-Process Communication) 기본 개념 IPC란? 모듈 간 통신 방식을 구현하기 위해 사용되는 대표적인 프로그래밍 인터페이스 집합이다. 복수의 프로세스를 수행 및 프로세스 간 통신 구현 가능 1. Pipe (익명 PIpe) - 두개의 프로세스를 tjqud531531.tistory.com Semaphore 1. semaphore 의 내용을 정의해줄 c 파일 생성 * 본인은 sema.c 이름으로 파일..

LINUX/ABOUT LINUX 2022.10.28

[Linux] IPC 예제 ① Shared Memory & Message Queue

본 포스팅에서는 Shared Memory와 Message Queue 와 관련된 기본 예제를 프로그래밍 한다. IPC 통신과 각각의 방법의 개념에 대해 공부하고 싶다면 아래 포스팅을 참조하자 [Linux] IPC (Inter-Process Communication) 기본 개념 (tistory.com) [Linux] IPC (Inter-Process Communication) 기본 개념 IPC란? 모듈 간 통신 방식을 구현하기 위해 사용되는 대표적인 프로그래밍 인터페이스 집합이다. 복수의 프로세스를 수행 및 프로세스 간 통신 구현 가능 1. Pipe (익명 PIpe) - 두개의 프로세스를 tjqud531531.tistory.com Shared Memory 공유메모리 id를 얻어와서 공유 메모리의 값을 하나씩..

LINUX/ABOUT LINUX 2022.10.28

[Linux] IPC (Inter-Process Communication) 기본 개념

IPC란? 모듈 간 통신 방식을 구현하기 위해 사용되는 대표적인 프로그래밍 인터페이스 집합이다. 복수의 프로세스를 수행 및 프로세스 간 통신 구현 가능 1. Pipe (익명 PIpe) - 두개의 프로세스를 연결하며 하나는 데이터를 쓰기만 할 수 있고 하나는 데이터를 읽기만 할 수 있다(반이중 통신) - 한쪽 방향으로만 통신이 가능하다. 따라서 송수신을 서로 하기 위해선 파이프를 2개 생성해야 한다 하지만 이렇게 파이 프를 두개로 구성할 경우엔 구현이 복잡해진다는 단점이 있다. - 익명 pipe는 통신할 프로세스가 누구인지 명확하게 알때 사용 하는 것 2. Pipe(Named Pipe) - 부모 프로세스와 무관하게 전혀 다른 모든 프로세스들 사이에서 통신 가능하다는 점이 익명 Pipe와의 차이다 - fif..

LINUX/ABOUT LINUX 2022.10.28

[Linux] OCI (Oracle Call Interface)

OCI란? Oracle call Interface 맞춤형 패키지 애플리케이션을 위한 오라클 데이터베이스에 대한 포괄적인 고성능 네이티브 C언어 인터페이스 이다. 구글링을 통해 oci 를 치면 2가지가 나오는데, 하나는 oracle call interface 이고 하나는 Oracle Cloud Infrastructure 이다 이 두개는 다른 것이니 구분 할 것 . Oracle Cloud Infrastructure은 클라우드 서비스를 구현하기 위해 필요한 기본적인 인프라 환경, 즉 컴퓨터 서버, 네트워크 , 스토리지, 보안, 자원 관리 등을 포함하는 오라클 클라우드 기반 환경을 의미하는것. 사실 Oracle Call Interface 는 구글링을 해도 잘 나오지 않는다. 영문 pdf를 번역하면서 내용을 이해..

LINUX/ABOUT LINUX 2022.10.28

[Linux] 내가 이해하기 위한 Pro*c 개념

Pro*c란? oracle RDBMS에 준비된 PRO*C 툴은 sql 문을 포함한 C프로그램을 ORACLE 데이터베이스 내에 있는 데이터 접근과 조작을 할 수 있는 C프로그램으로 변환하기 위한 것. PRO*C는 프리컴파일러기 때문에 입력 파일 내에 있는 EXEC SQL 문을 적당한 ORACLE 콜로 변환해서 출력 파일 작성. 이 출력 파일을 C프로그램에 대한 통상의 방법으로 컴파일 하고 링크해서 실행 모듈 작성 하는 것 RDBMS 관계형 데이트 베이스 ( 관계형 모델에 기반하는 데이터 베이스를 말 하는 것 ) · 데이터가 하나 이상의 열과 행의 테이블에 저장 · 테이블을 조인하여 정보 간 관계 또는 링크를 설정할 수 있는 기능이 있음. 관계형 모델 데이터를 로우와 컬럼을 이루는 하나 이상의 테이블로 정리..

LINUX/ABOUT LINUX 2022.10.27

[Linux] Pro*c 환경설정

PRO*C란? - C언어를 사용하여 데이터 베이스를 쉽게 관리할 목적으로 미국 오라클 사가 만든 프로그래밍 언어 - PL/SQL 과 같이 절차적 프로그래밍이 가능한 프로그램 도구로서 PL/SQL 처럼 오라클 내부에서 수행되는 프로그램이 아니라 실행 가능한 외부 프로그램으로 작성이 되어 관련 작업을 수행할 수 있게 해주는 도구 즉 PROC는 C언어 속 SQL문이라고 생각하면 쉬움 1. 사용자 계정 환경 설정 # su - oracle [ 오라클 계정으로 이동 후 ] * 나는 오라클 계정의 가장 상단에 makefile을 생성했지만 , 디렉토리 하나를 $ORACLE_HOME 루트나 다른 곳에 만들어 준 뒤 사용해주는 게 깔끔함 $ vi .bash_profile [ bash_profile에 아래와 같이PATH와 ..

LINUX/ABOUT LINUX 2022.10.27

[LINUX] 기본 명령어 정리 ③

top ,ifconfig, ping , lsattr, chattr ,nm, vmstat, locale , hostname, su, find, grep 에 해당하는 리눅스 명령어 입니다 [top] top 실시간으로 CPU 사용률 체크해주는 도구 * 디바이스의 성능이나 리눅스 서버의 성능을 체크할 때 매우 유용 top top 실행 후 명령어 설명 shift +p CPU 사용률이 높은 프로세스 순서대로 표시 shift +m 메모리 사용률이 높은 프로세스 순서대로 표시 shift +t 프로세스가 돌아가고 있는 시간 순서대로 표시 -a 메모리 사용량에 따라 정렬 -c 명령행/프로그램 이름 토글 -h 도움말 [ifconfig] ifconfig 네트워크 인터페이스 설정하거나 확인하는 명령어 * ip주소, 서브넷마스크..

LINUX/ABOUT LINUX 2022.10.06

[LINUX] 기본 명령어 정리 ②

[ls] ls 디렉토리에 있는 내용(디렉토리, 파일) 리스트를 출력하는 명령어 ls [옵션] [디렉토리이름] 옵션 설명 -l 파일들을 나열할때 자세히 출력한다 -a 경로안의 모든 파일을 나열한다 -R 위치한 디렉토리 하부 디렉토리의 파일까지 모두 출력한다 -h 파일크기를 해석하기 편하게 출력 -r 출력 결과를 내림차순으로 정렬 -t 출력 결과를 파일이 수정된 시간 기준으로 정렬 [history] history 전에 사용한 명령어를 순서대로 확인할 수 있음 history (썼던 명령어가 전부다 나옴) 옵션 설명 ![숫자] 히스토리 번호로 명령을 수행 (단독 사용) ![단어] 단어가 포함된 명령어 히스토리가 나옴 (단독 사용) !! 바로 직전에 수행한 명령어 히스토리가 나옴 (단독 사용) -c 히스토리 삭제..

LINUX/ABOUT LINUX 2022.10.06

[LINUX] 기본 명령어 정리 ①

file , touch, mkdir, rm, rmdir, mv, cd 에 관련한 명령어 정리본 입니다. [file] file 파일의 종류 확인 및 파일 속성 값을 확인할 때 사용하는 명령어 file [옵션] [파일이름] 옵션 long옵션 설명 -b --brief 지정한 파일명은 출력하지 않고 파일을 유형만 출력 -f --file-from 파일목록에서 지정한 파일들에 대해서만 명령 실행 -i --mime MIME 타입 문자로 출력 -L --dereference 심볼릭 링크된 파일을 추적하여 원본 파일 정보를 출력 -m --magic 임의로 매직파일을 지정 -z --uncompress 압축된 파일의 내용을 출력 -v --version 버전 정보를 출력 --help 사용법 출력 [touch] touch 파일의..

LINUX/ABOUT LINUX 2022.10.05
반응형