
Instruction execution프로세스가 시작된 이후 CPU가 프로그램을 실행할 때의 순서프로세스를 위한 메모리 초기화file -> memory code segment loadrip를 메모리 code의 entry point로 이동instruction 실행PCB (Process Control Block)운영체제는 여러 프로세스를 동시에 실행해야 하므로, 실행 중인 프로세스를 전환할 때마다 현재 프로세스의 상태를 저장해야 한다. 이를 PCB(Process Control Block) 에 저장하며, PCB는 커널 영역의 메모리에 위치한다.PCB에는 다음과 같은 정보가 포함된다.프로세스 ID (PID): 프로세스 고유 식별자프로세스 상태 (Process State): 실행(Running), 대기(Waiti..

백준이나 프로그래머스에서 코딩테스트를 준비해본 경험이 있을까요?PS 사이트에서는 알고리즘의 효율성을 기준으로 점수를 매기게 되는데요,시간 복잡도 : 얼마나 적은 연산을 했나 (실행시간)공간 복잡도 : 얼마나 적은 메모리를 사용했나가끔 이런 상황이 생길 때가 있어요.문제 상황def solution(n, stations, w): answer = 0 start = 1 for station in stations: count = station - w - start if count > 0: answer += math.ceil(count / (2 * w + 1)) start = station + w + 1 if start 디버깅을 위해 ..

Overview유저에서 프로세스 관리, device 제어 등 기능을 수행할 때, System call을 사용하여 커널로 요청을 보낸다.이때 Trap이라는 software Interrupt을 걸어 진행중인 flow를 커널 mode로 변경한다.kernel에서 작업이 끝나면 레지스터를 통해 return을 반환하고 user mode로 변경된다. Pintos를 기준으로 system call을 알아본다.User Invokeprint와 같이 stdout으로 출력 또는 stdin 입력은 standard library 내부에서 write system call wrapper로 구현되어 있다.해당 system call은 실제로 다음과 같은 어셈블리 코드로 구현된 매크로로 구현되어있다.#define syscall0(NUMBE..

vscode 우분투 환경에서 진행하는 핀토스는 vscode에서 remote-ssh로 접속해 ide 환경에서 작업 가능하다. 여러 파일을 이동해가며 구현해야 하기에 IDE 환경에서 하는걸 추천함 추천 extension remote-ssh vscode에서 local환경 외에 ubuntu 서버에 접속해 local 환경처럼 작업할 수 있게 하는 extension C/C++ extension C언어 snippet, debug 등 다양한 기능을 하는 extension으로 깔아두면 함수 ref 이동, 문법오류 등 도움 많이 됨 다만 pintos환경에선 실행에 따라 #ifdef 와 같이 전처리 지시어등이 있는데 이를 에디터에서 적용해서 볼려면 추가적으로 properties 설정을 해주어야 한다. control + sh..
- Total
- Today
- Yesterday
- 싸지방
- 사이버정보지식방
- 프로젝트
- 리눅스
- pvm
- vector search
- os
- 뿌요뿌요
- pintos
- Web
- 분할 정복
- react
- Python
- FastAPI
- 구름ide
- 해커톤
- OpenSearch
- 백준
- letsencrypt
- 웹IDE
- 코딩
- HNSW
- 토이프로젝트
- C
- ttyd
- 뿌요뿌요 테트리스
- 시간 초과
- io blocking
- codeanywhere
- 정보보호병
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |