
VsCode를 열고 cmd + shift + P Preferences: Open Keyboard Shortcuts (JSON) 선택 아래 copy & paste // Place your key bindings in this file to override the defaultsauto[] [ { "key": "ctrl+;", "command": "terminal.focus", "when": "editorFocus" }, { "key": "ctrl+;", "command": "workbench.action.focusActiveEditorGroup", "when": "terminalFocus" } ] *ctrl : control key *cmd : command key
1. ~ 에다가 .vimrc 생성 2. 아래 내용 입력 if has("syntax") syntax on endif set hlsearch set nu set autoindent set ts=4 set sts=4 set cindent set laststatus=2 set shiftwidth=4 set showmatch set smartcase set smarttab set smartindent set ruler set fileencodings=utf8,euc-kr 다른 버전 " [세부 정보 출력] set nu set title set showmatch set ruler " [색깔 설정] syntax on set t_Co=256 " colorscheme slate " [들여쓰기 설정] set autoinde..

1. 운영체제의 핵심 요소들 Process management Memory management Storage management Protection and Security #필기 *컴퓨터 관리를 위한 다양한 관리 기능 2. 프로세스 관리 - 프로세서의 정의 프로세스 : 실행 중인 프로그램(활성화된 vmfhrmfoa) Job, time-shared 프로그램 자원요구와 함께 활성화된 프로그램 ex) word 하나의 스레드 프로세스는 PC를 가지고 있다. 다중 프로그램 인스턴스의 경우, 프로세스를 세분화 작업의 단위(Unit)이기도 함 운영체제의 프로세스와, 유저의 프로세스로도 구분 #필기 프로그램은 원래 디스크에 위치한다, 실행을 함으로써 메모리 -> CPU에서 활성화가 이루어 진다. 동일한 프로그램을 여러..

1. Operating System Structure Motivation 단일 사용자가 계속해서 I/O 디바이스와 CPU를 동시에 사용하는 것을 유지할 수 없음 -> CPU utilization 을 높이기 위해서 CPU를 쓰지 않을 때 최대한 사용하게 하자 멀티프로그래밍 멀티프로그래밍은 jobs(코드와 데이터)로 구성되어 있는데, CPU는 항상 한 job 밖에 실행하지 못함. 모든 job중에 일부를 메모리에 저장/적재 한다. 하나의 job을 선택해서 실행을 시키는데, 이때 job scheduling에 의해 실행된다. OS는 job이 I/O 등으로 인해 대기해야하면 다른 Job으로 스위칭을 수행한다. #필기 멀티프로그래밍의 최초 동기는 CPU Utilization을 높이고자 하는데에서 시작을 했다. CPU..

1. Computer System Architecture 종류) Single processor sys Multi-processor sys Clustered sys #필기 보통 CPU = processor의 개념이 있음 Q.Multi core processor는 어디에 해당하는가? -> Multi processor에 해당. 2. Single-Processor system (교수님께서도 저렴하고, 단순하다 정도로 뭐가 좋은지 잘 모르겠다라고 말씀하시면서 건너 뛰심) 3. Multi-Processor Systems 2개 혹은 그 이상의 프로세서들이 close communication을 갖는 것 Tightly-coupled sys라고 부르기도 한다. 이들은 shared bus, clock, memory, per..

체인 반응, 책임 떠 넘기기 패턴 0. 대략적인 개념 어떤 요청이 발생한 경우, 처리하는 패턴들 중 Chain of Responsibility pattern을 사용하는 방법 책임 떠 넘기기(교재 내 번역) 패턴은 다음 담당자에게로 진짜 담당자를 찾을 때 까지 리퀘스트가 설정된 순서대로 넘겨지는 것을 의미한다. 어떤 요청이 발생한 경우에, 그 요청할 처리할 오브젝트를 직접 결정할 수 없는 경우에 사용된다. 복수의 오브젝트(객체)를 사슬처럼 연결해 그 사슬을 돌아다니며 문제를 해결할 Target Obj.를 결정한다. 해당 패턴을 사용함으로써 Clinet와 Handler를 고립시킬 수 있다. 물론 체인의 제일 앞에 위치한 Handler는 알아야 한다. 그 이후로는 Chain에서 자동으로 처리 된다. 1. 예시..

OODP -> JAVA로 수업 소켓의 개념적인 내용은 OS 수업에서 가져왔다 0. Socket 소켓은 통신의 가장 바닥/기본(endPoint)라고 한다. 소켓은 IP주소와 port번호로 이루어져 있는데 이를 표기하면 아래와 같다 a Socket = : 각 연결은 한 쌍의 소켓에 의해서 정의가 된다. 여기서 포트(Port)는 컴퓨터가 인식할 수 있는 logical contact point 이다. 컴퓨터는 0 ~ 65535 까지의 포트 번호를 가질 수 있다. 그런데 보통은, 1024 이하의 포트번호는 예약이 되어 있는데 http:80, ftp:21, telnet:23 등이 있다. 그래서 특별한 목적으로 포트번호를 지정하는 경우(보통 보안), 1024 이상의 포트 번호를 사용한다. ex) nipa 포트번호 5..

1. 컴퓨터 시스템의 동작 컴퓨터가 실행되기 시작하면 무슨 일이 일어나는가? Bootstrap program(firmware) 가 실행이 된다. 시스템을 진단하고 초기화를 수행한다. 그리고, OS Kernel을 적재하고 실행시킨다. (Bootstrap loader) OS Kernel 부팅된다. (초기) 어떠한 일(event)을 대기한다. 그리고 그 이벤트를 처리한다. 현대의 운영체제들은 Interrupt driven programs 이다. #필기 펌웨어(Firmware) 아주 작은 프로그램으로, 메인보드에 위치해있다. 해당 프로그램은 전원을 켜면 실행이 된다. 첫번째로, 하드웨어의 진단(e.g. 키보드 유/무에 따른 경고)과 초기화를 수행한다. 두번째로, 운영체제를 읽고 실행을 한다. 펌웨어가 어떻게 O..

1장에서 다룰 내용 -> 운영체제가 커버하는 내용에 대한 프리뷰를 할 예정 1. 운영 체제란? 운영체제의 적절하고, 완벽한 정의가 없다. 하지만 대략적으로 운영체제는 유저와 하드웨어의 중간(intermediary)에 있으며 Kernel과 추가적인 프로그램(커널이 아닌 것!)들로 구성이 되어 있다. 커널 : 항상 실행되고 잇는 운영체제의 핵심 시스템과 어플리케이션 프로그램은 포함하지 않는다. Middleware : 개발자가 응용하는 추가적인 서비스를 제공하는 소프트웨어 프레임워크의 집합 (ex, database, multimedia, graphics) #필기 커널은 매우 명확한 유닛이다. - 하드웨어에 직접 접근할 수 있다. - 부팅 후 계속해서 실행이 된다. 운영체제의 목표 유저의 프로그램을 실행하고, ..

사실 작년 봄부터 가을 끝까지 자바만 쓰다가 최근에 인공지능 배우면서 자바는 거의 손절(?) 수준으로 등한시했었는데 이번학기 시작하면서 OODP 에서 자바를 .. 쓰신다고 하셔서 JDK도 깔고 Eclipse를 다시 설치한다. 올 초에 포맷을 해서 남아있는게 없다.. 으어 1. 이클립스 홈페이지 접속 www.eclipse.org/downloads/packages/ 보통 다양한 Frame Work나 서버를 활용하는 것이라면 Eclipse IDE for JAVE EE developers를 설치한다. 그 밖에는 대부분이 Java Developers 를 다운 받는데, 맨 상단의 통합 installer를 이용하거나 아래의 직접 다운 받으면 된다. 물론 다운로드도 운영체제에 맞게 선택한 뒤 하면 된다. 상단 우측에 ..