| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 증권투자권유자문인력 #파생투자권유자문인력 #펀드투자권유자문인력 #금융3종
- fix #프로토콜 #유래 #
- 옵션 #선물 #증거금 #Margin
- 네트워크카드 #NIC # 인터페이스카드 #커널
- 병목확인
- #리뉴올PC #중고모니터 #중고컴퓨터 #후기
- 국내상장 해외etf #해외etf #세금 #나스닥 #코스피
- #연말정산 #꿀팁 # 소득공제 # 세액공제 #고향사랑기부제 # 돈많이벌자 #세테크 #세법
- 보안
- 옵션 #콜옵션 #풋옵션 #청산
- 정보보안
- cme #블룸버그 #로이터
- loadaverage #시스템부하
- Node #Zone #PageFrame
- 메모리사용류
- 비상용메모리
- 무상증자 #유상증자 #주가영향
- 주택임차차입금 원리금 상환액 #소득공제 #공부 #세테크
- 커널
- VIRT #RES #SHR #메모리커밋
- 포지션 #파생 #선물 #옵션
- 파생상품 #선물 #옵션 #증거금
- AWS #회원가입 #AWS Developer Associate #SAA
- #벽걸이 에어컨 # 에어컨 청소 # 에어콘 청소 # 치킨값 벌기
- 종합과세 #분리과세 #분류과세 #세금 #공부
- 시스템정보확인 #top명령어 #cpu
- TCP
- OWASP #웹취약점
- RMS #리스크관리시스템 #risk
- 디피헬만알고리즘
- Today
- Total
목록전체 글 (57)
일서방
▣ 버디 할당자1.정의 : 페이지 단위(2의 거듭제곱)로 물리 메모리를 빠르게 나눠주는 기본 할당자 2.1 왜 필요한가? ●커널은 물리 메모리(Page)를 직접 다뤄야함 ●가변 크기를 그대로 관리하면 외부 단편화 지옥 ●그래서 2^n 단위로만 관리 2.2) "order" 개념 (버디의 핵심 표기)페이지가 4KB라고 하면 : ● order 0 = 1 page = 4KB ● order 1 = 2 pages = 8KB ● order 2 = 4 pages = 16KB ● order 3 = 8 pages = 32KB ... 이런 식으로 2^n 페이지즉, 버디는 메모리를 "order 별 free list(빈 블록 목록)" 로 들고 있다. 2.3) 할당이 일어나는 과정예를 들어 커널이 16KB 필요..
물리 RAM 전체 └ NODE(NUMA 단위 : CPU 소켓/메모리 지역) └ ZONE(DMA/32bit/일반 등 용도,제약별 구역) └ Page Frame(최소 단위 : 4KB 같은 물리 페이지) NODE : "어느 지역(소켓)의 메모리냐"ZONE : " 그 지역 안에서 어떤 제약/용도 구역이냐"PageFrame : "실제 할당되는 최소 물리 단위(페이지)" 1) Page Frame(페이지 프레임)-정의 : Page Frame은 물리 메모리(RAM)를 페이지 크기(대게 4KB)로 쪼갠 한칸리눅스는 기본적으로 물리메모리를 페이지 단위로 관리하고 , 각 페이지에 대해 커널 내부에 struct page라는 메타데이터를 부텨서 관리한다. 보통 x86_64에서 page size =..
■리눅스의 task 관리 구조 프로세스는 자신이 사용하는 자원과 그자원에서 수행되는 수행흐름으로 구성된다.리눅스에서는 이를 관리하기 위해 각 프로세스마다 task_struct라는 자료 구조를 생성한다. 새로운 스레드가 생성되어도 스레드를 우히ㅐ task_struct 자료 구조를 하나 더 생성한다. 결국 리눅스에서는 프로세스가 생성되든 쓰레드가 생성되든 task_struct라는 동일한 자료구조를 생성하여 관리한다. 사용자의 프로세스 혹은 스레드생성 요청은 라이브러리를 거쳐 시스템 호출을 통해 리눅스 커널에 전달된다. fork() , clone() , pthread_create()는 커널에 구현되어 있는 sys_clone() 시스템 호출을 사용하며 , vfork()는 sys_vfork()를 사용한다...
리눅스 커널 버젼 2.6 이전까지는 /usr/src/ 하위 디렉토리에 리눅스 커널소스가 존재했었으나 최근에는 /usr/src/kernels 디렉토리에 존재한다. Kernel 디렉토리테스크의 생성과 소멸 , 프로그램의 실행 , 스케쥴링 , 시그널 처리 등의 기능이 이 디렉토리에 구현되어있다.Context switch과 같은 하드웨어 종속적인 테스크 관리 부분은 arch/$(ARCH)/kernel 디렉토리에 구현되어있다. arch 디렉토리리눅스 커널 기능중 하드웨어 종속적인 부분들이 구현된 디렉토리이다. 이 디렉토리는 CPU타입에 따라 하위디렉토리로 다시 구분된다. 대표적으로 인텔의 i386, ARM(Advanced RISC Machine)의 ARM계열 , 모토로라의 68시리즈 , SUN의 Sparc 등이 ..
■GNU Multiprecision Library(GMP) - GMP : 매우 큰 정수 , 유리수 , 실수를 다룰 수 있는 라이브러리(암호학 , 수론 , 정수론 계산 등에 많이 사용.)- mpz_t : GMP의 C API에서 큰 정수를 표현하는 기본타입- mpz_class : C++ 환경에서 mpz_t를 객체 지향적으로 다루기 쉽게 만든 클래스 . 내부적으로 mpz_t를 캡슐화 . 연산자 오버로딩 + , - , * , / , % 등 지원 . C++ 스타일 문법으로 큰 정수를 직관적으로 처리 가능 EX) #include #include using name space std; #include #include using namespace std; int main() { mpz_class..
■Congestion window(cwnd)1. 기본개념● TCP는 네트워크 혼잡을 막기 위해 한 번에 보낼 수 있는 데이터 양을 제한● 이 제한을 나타내는 변수가 바로 "혼잡 윈도우(cwnd)" 야● 단위 : 세그먼트(segment) 또는 바이트(byte) 2. 송신 윈도우와 차이● TCP 송신자는 실제 전송량을 두 가지 윈도우 값 중 더 작은걸 따라간다 ● 수신 윈도우(rwnd) : 수신 측 버퍼 여유 공간(흐름제어) ● 혼잡 윈도우(cwnd) : 네트워크 상황 고려(혼잡제어) => 실제 전송가능 윈도우 = min(rwnd,cwnd) 3. 혼잡 윈도우 동작 원리(AIMD)TCP혼잡 제어는 크게 두 단계로 진행됩니다.1. Slow Start(느린 시작)● 처음 연결되면 cwnd를 아주 작게 시작..
TCP는 그 특성상 자신이 보낸 데이터에 대해서 상대방이 받았다는 의미의 응답패킷을 다시 받아야 통신이 정상적으로 이루어졌다고 생각한다. 그래서 만약 자신이 보낸 데이터에 대한 응답패킷을 받지못하면 패킷이 유실되었다고 판단하고 보냈던 패킷을 다시 한번 보낸다. ■ TCP 재전송 과정 왼쪽 그림을 보면 요청 데이터를 보내고 ACK를 받지 못하면 패킷을 재전송하는 과정이다. (TCP재전송)여기서 ACK를 얼마나 기다려야하는지에 대한 값을 RTO(Retransmission Timeout)라고 부른다. RTO안에 ACK를 받지 못하면 보내는 쪽에서 재전송을 진행한다. RTO에는 일반적인 RTO와 InitRTO 두 가지가 있다.일반적인 RTO는 RTT(RoundTripTime, 두 종단간 패킷 전송에 필요한 시..
■디피-헬만(Diffie-Hellman) 키 교환 알고리즘 [개념]- 디피-헬만(DH)은 1976년에 Whitefield Diffie와 Martin Hellman이 고안- 대칭키 암호를 쓰려면 양쪽이 같은 비밀키를 가져야하는데, 이 키를 사전에 안전하게 전달하지 않아도 공유할 수 있게 해주는 알고리즘- 키교환만 가능 , 실제 데이터 암호화는 하지 않는다. [동작원리]핵심 아이디어 : 이산 로그문제의 어려움에 기반 1. 공개 파라미터 선택● 두 당사자 A와 B는 큰 소수 p와 그에 대한 원시근(기저) g를 공개값으로 공유한다. ● 이 값들은 누구나 알아도 안전한다. 2. 개인 키 선택 ● A는 비밀정수 a, B는 비밀정수 b를 각각선택 ● 이값들은 외부에 절대 공개되지 않는다.. 3. 공개 키 계산 및 ..