- Today
- Total
목록Linux (70)
프로그래밍 농장
- 멀티프로세싱과 멀티테스킹의 차이 멀티프로세싱 : CPU가 여러개있어서 동시에 여러개의 명령어를 수행가능한것 멀티테스킹 : 여러개의 프로세스(테스크)를 수행하는데 CPU가 여러개일 필요하없다 ( time-sharing ) - Process State - New : 프로세스가 만들어질떄 - Running : 프로세스가 수행될떄 - Waiting : 수행하라는 명령이 올떄까지 기다리고있는 과정 ( Ready로 가기전 대기 ) - Ready : 언제든지 Running에 들어갈수있을떄 - Terminated : 프로세스가 종료될떄 - Process Scheduling CPU상에서 프로세스를 어떤순서로 수행할지 정하는 과정 -> 그떄그떄마다 상태를 파악해서 PICK : I/O bound process : 사용자..
- POSIX Portable Operationg System Interface -> 함수의 형식을 통일하여 사용자들이 사용할 인터페이스를 맞춰놓은것 -> OS 상호간의 소통을 보장 - Linux -> "Home" 디렉토리 : (=내 폴더) : "~" -> 현재 디렉토리 : "." -> 상위 디렉토리 ".." - Absolute Pathname : 절대경로 ex) /home/smu/test1 - Relative Pathname : 상대경로 현재위치를 기준 ex) ./test1 ~ - File System -> Mount / Unmount : 파일시스템을 적용 / 해제 -> Process : 실제로 수행되고 있는 프로그램 ( 메모리에 올라와 있는 ) : 각각 개별적으로 id가 있다 (=PID) ex) 웹브..
#include : Thread에 관한 모든 라이브러리를 사용가능 스레드의 장점 : 공간을 공유하고 pc 값만 다르게 주어서, 훨씬 경제적이다. Responsiveness / Resource Sharing / Economy / Scalavility - Amdahl's Law (암달의 법칙) 75프로 병렬(Parallel) / 25프로 직렬(Serial) -> - 암달의 법칙을 이용할떄, speedup gain of an application ( 60퍼센트의 parallel(병렬)) 을 가진 컴포넌트의 two processing 코어 : 1/(0.4+0.6/2) four processing 코어 : 1/(0.4+0.6/4) Thread pools : 스레드를 조금더 유용하게 사용하기위해 등장 -> 스레드를..
- vim 명령모드(Command mode) / 입력모드(Edit mode) u : 돌아가기 ( 삭제 ) (= ctrl +z ) - 입력모드 (insert) 시작할떄도 여러방법이있다 shift + a : 맨앞줄에서 커서시작 / a : 한칸 뒤에서 커서시작 / i : 현재커서에서 커서시작 / o : 한 줄 띄우고 커서시작 -저장 : 명령모드 + w = : w [파일명] -> [파일명]으로 현재 파일 현재위치에 저장 -나가기 : 명령모드 + q = : q : wq -> 저장후 나가기 : q! -> 수정한것 저장안하고 그냥 나가기 파일 들어가기 : vim [파일명] vim은 기본적으로 마우스를 쓰지않고 , copy/paste/ 등의 작업이 매우 쉽다. 복사 : yy (yanked) / 3yy ( 현재 커서부터..
- VIM : Vim is an advanced text editor taht seeks to provide the power of the de-facto Unix editor 'Vi' Vim modes : 1. Command mode ( 명령어 모드 ) : 커서를 이동하거나 삭제, 복사, 붙혀넣기를 수행 / 글자가 입력되지 않음 2. Edit mode ( 입력 모드 ) : 실제 문서를 편집하는 모드 3. Last line mode ( 마지막 행 모드 ) : 파일을 저장 / 읽기 . 문자열 패턴을 이용, 종료, 설정 변경 Vim 을 사용시 마우스를 사용하지않고 대부분의 작업을 수행할수있다 / 작업효율 증가 - Regular expression ( 정규표현식 ) 프로그래밍, 자동화 등의 작업을 실행할떄 사..
- Storage structure - 컴퓨터시스템 요소의 정의 CPU : 명령어를 수행하는 추상적인 의미 Processor : 실질적인 명령어를 수행하는 의미 Core : CPU의 가장 basic computation unit Multicore : 같은 CPU안에 위와같은 CPU가 여러개 있는것 / 시스템자체를 만들때 엔진을 2개넣고 만드는것 Multiprocessor : 프로세서를 여러개 포함하는것 AMP : 프로세서가 여러갠데 종류가 다른것들을 묶어놓은것 - Symmetric Multiprocessor (SMP) = multiprocessor -> 내부 캐시를 공유 - Computer Architecture 명령어가 0,1 이라는 BIT 정보로 들어오면, 이를 받아서 내부적으로 정의하는 방법이 필요..