| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 31 |
- 프로세스
- 물리 메모리
- AAC
- 데코레이터 패턴
- recyclerview
- appcompatacitivity
- 디자인 패턴
- viewModelScope
- 리사이클러뷰
- apk 빌드 과정
- flutter
- http 역사
- DiffUtil
- 안드로이드
- 상태관리
- GetX
- AsyncListDiffer
- Android
- 리사이클러뷰풀
- Dispatchers
- appcompatactivity
- 뷰홀더
- 플로이드워셜
- http발전과정
- NestedScrollView
- 운영체제
- 내부 단편화
- Kotlin
- 절대 주소
- 자이고트
- Today
- Total
목록Develop/Cs (5)
hong's android
개발자가 작성한 프로그램들은 어떻게 메모리에 적재되고, 실행될까? 운영체제 도서를 읽으며 관련 내용들을 정리해보았다. 실제 책 목차와 다른 부분들이 있을수 있다. 메모리의 용량을 늘리면 작업 속도가 빨라지지만 어느 수준 이상이 되면 그 차이가 적어진다. CPU의 작업 공간이 메모리이기 때문에 메모리 관리는 성능에 막대한 영향을 미친다. 1. 메모리 관리의 복잡성운영체제도 프로그램이므로 메모리에 올라와야 실행할 수 있다. 따라서 메모리에는 사용자 프로세스뿐 아니라 운영체제 프로세스도 공존한다. 컴퓨터 부팅이 이루어지는 과정에서, 하드디스크에 저장된 운영체제가 메모리에 올라간다. 부팅이 끝나면 여러 응용 프로그램이 메모리에서 작업을 할 수 있다. 2. 소스코드의 번역과 실행2.1 컴파일러와 인터프리터의 ..
프로세스 간 통신 (IPC)프로세스가 다른 프로세스와 데이터를 주고받는 프로세스 간 통신에는 같은 컴퓨터 내에 있는 프로세스뿐만 아니라 네트워크로 연결된 다른 컴퓨터에 있는 프로세스와의 통신도 포함된다. 프로세스는 각각의 가상 메모리를 독립적으로 할당받고, 다른 프로세스의 가상 메모리에 접근할 수 없다. 프로세스 외부에서 메모리를 마음대로 변경할 수 없게 해야 하기 때문이다. 그래서 다른 프로세스와 통신을 하기 위한 방법은 아래의 방법들이 있다. 1) 프로세스 내부 데이터 통신 하나의 프로세스 내에 2개 이상의 스레드가 존재하는 경우 2) 프로세스 간 데이터 통신같은 컴퓨터에 있는 여러 프로세스끼리 통신하는 경우 책에는 나와있지 않았지만, 프로세스 간 통신을 위해 메모리에 접근하는 방식은 Shared..
“쉽게 배우는 운영체제”책을 읽고 정리한 글입니다. 부족한 내용들은 유튜브 또는 다른 책들을 참고하였습니다. 프로세스운영체제에서 프로세스는 하나의 작업 단위이다. 사용자가 마우스를 더블클릭하여 프로그램을 실행하면 그 프로그램은 프로세스가 된다. 프로그램이 프로세스로 전환될 때 운영체제는 프로그램을 메모리의 적당한 위치로 가져온다. 그와 동시에 프로세스 제어 블록을 만든다. 프로제스 제어 블록(pcb)프로세스 제어 블록은 프로세스와 관련된 정보를 저장한다. 프로세스들은 차례대로 돌아가며 한정된 시간만큼만 cpu를 이용한다. 자신의 차례가 되면 정해진 시간만큼 cpu를 이용하고, 인터럽트 또는 시스템콜이 발생하면 다음 차례가 올 때까지 기다린다. 운영체제는 빠르게 번갈아 수행되는 프로세스의 실행 순서를 관리..
HTTP란?HTTP(하이퍼텍스트 전송 프로토콜)은 웹 페이지, 텍스트, 이미지, 미디어, 바이너리 파일과 같은 다양한 콘텐츠 전송을 가능하게 하는 애플리케이션 계층 프로토콜입니다. HTTP/1.0Http/1.0은 전송 제어 프로토콜 (TCP) 기반으로 연결되며, 각 요청이 별도의 TCP 연결을 통해 생성됩니다. 각 요청마다 TCP 연결을 해야 하므로 비효율적이고, 레이턴시를 증가시킵니다. 또한, TCP는 slow-start 기반으로 작동하기 때문에 많은 TCP 연결이 추가될수록 오버헤드가 발생합니다. HTTP/1.1 - 단일 TCP 연결에서 다수의 요청과 응답 전송 Http/1.0의 문제를 해결하기 위해 HTTP/1.1은 연결 유지(Keep-Alive) 메커니즘을 도입했습니다. 이 메커니즘은 “Con..
컨텍스트 스위칭이란? 다음 우선순위가 높은 프로세스를 실행할때 해당 프로세스 정보를 PCB에 저장하고 다음 프로세스의 정보를 PCB에서 load 하는 과정이다. 컨텍스트 스위칭이 일어날때 cpu의 동작은 멈춘다. 프로세스 보다 스레드의 컨텍스트 스위칭의 비용이 더 낮다. 그 이유는 스레드들은 데이터를 프로세스 안에서 데이터를 공유하는 부분이 많기 때문에 스택 영역의 데이터만 저장하고 load 해주는 작업만 하면되기 때문이다. 필요한 이유 동시에 여러 작업을 수행하는 멀티 프로세스, 멀티 스레딩을 통해 빠른속도로 응답할 수 있기 때문이다. (빠른 응답 시간을 가진 시분할 시스템에 유용) 프로세스 컨텍스트 스위칭이 일어나는 상황 1. I/O interrupt 2. CPU 사용시간 만료 3. 자식 프로세스 F..