Linux 10

[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] 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] pthread.h include 시 컴파일 에러 (소켓)

IPC 소켓 모델 프로그래밍에서 Thread 방식을 쓸 경우 . thread 서버 컴파일이 안되는 경우가 있다. Thread 방식으로 소통을 하려고 할 경우 서버관련 c 파일과 클라이언트관련 c 파일을 생성해야한다. 본인은 서버관련 c 파일의 이름을 Thread.c 라고 명명하였다. (이름은 아무렇게 해도 상관 없음 / 확장자만 잘 지켜주면됨) Thread.c 파일을 [gcc -o [컴파일이름][c파일이름]] 으로 컴파일을 시도 하였을때 아래와 같은 에러가 뜨게 된다. 내용을 살펴보면 'pthread_create'가 명확하지 않다고 나와있다. 1. Thread.c 파일 (서버c파일에) 인클루드 옵션을 살펴볼 것 - 아래와 같은 는 스레드 방식으로 소켓 소통을 할때 꼭 인클루드 시켜야 하는 헤더파일이다. ..

Rocky Linux 에 Oracle 19c 설치하기 ①

* 목적 - LINUX 를 서버로 활용하여 ORACLE의 본체를 설치함 (클라이언트에서 요청한 서비스를 제공하기 위한 목적) - WINDOW를 클라이언트로 활용하여 DB와 관련된 서비스를 요청 - 즉 서버와 클라이언트를 분리하여 연동시켜 데이터를 사용하고자 하는 목적 * 가장 먼저 LINUX 서버에 oracle 을 설치하여 서버 환경을 구축 해보자 ** 프로그램 설치는 root 계정에서 가능하므로 시작전에 su root 명령어를 통해 root계정에 접속하는 건 기본 ** 1. 리눅스에 오라클을 설치하기 위해선 아래 작업을 먼저 진행해주어야 한다. yum -y install compat-libstdc++-33.x86_64 binutils elfutils-libelf elfutils-libelf-devel ..

LINUX/ABOUT INSTALL 2022.10.12

Rocky Linux 에 Oracle(오라클)-19c 설치 : compat 오류

Rocky Linux 에서 오라클 DB 설치시 compat 파일로 인해 발생하는 문제점들을 해결하기 위한 단원 일반적으로 centOs나 Oracle Rinux에서 오라클 19c를 깔때 [root@localhost ~] # yum install http://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm 을 실행하면 됨. 하지만 rocky linux에서는 compat 패키지를 지원받지 못하기 때문에 이런 오류가 발생하게됨 . 이럴땐 centOs 에 있는 compat 패키지를 다운로드 받은 후 rocky linux에 옮겨놔야함 1. 리눅스 인터넷 창에 ce..

[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
반응형