pwnkidhn.github.io

고정 헤더 영역

글 제목

메뉴 레이어

pwnkidhn.github.io

메뉴 리스트

    • 분류 전체보기 (194)
      • memo (0)
      • Pwnable Exploitation (19)
        • 01.Shellcode (4)
        • 02.Return to Shellcode (1)
        • 03.RTL(Return to libc) (2)
        • 04.Frame faking(Fake ebp) (1)
        • 05.Frame Pointer Overwrite (2)
        • 06.ROP(Return Oriented Prog.. (3)
        • 07.SROP(Sigreturn-oriented .. (2)
        • 08.JOP(Jump-Oriented Progra.. (1)
        • 09.Return-to-csu(__libc_csu.. (0)
        • Malloc - glibc(ptmalloc2) (3)
      • Pwnable Write-Up (54)
        • 00.CTF (0)
        • 01.hackerschool F.T.Z (20)
        • 02.hackerschool L.O.B (21)
        • 03.dreamHack (13)
        • 04.HackCTF (0)
      • Reversing Write-Up (38)
        • 01.Abex's crackme (5)
        • 02.CodeEngn Basic (20)
        • 03.CodeEngn Advance (13)
      • Fuzzing (1)
        • Theory (1)
      • Programming (22)
        • Data Structure (0)
        • Windows System (22)
      • Computer Science (60)
        • Computer Architecture (18)
        • OS Concepts (29)
        • Linux System (5)
        • Reverse Core (8)

    검색 레이어

    pwnkidhn.github.io

    검색 영역

    컨텐츠 검색

    Computer Science

    • 05. 기억장치 (5) [캐시 메모리 - 사상방식]

      2020.05.08 by RACC8N

    • 05. 기억장치 (5) [캐시 메모리]

      2020.05.08 by RACC8N

    • 4.5 묵시적 쓰레딩

      2020.04.30 by RACC8N

    • 4.4 Thread 라이브러리

      2020.04.30 by RACC8N

    • 4.3 다중 쓰레드 모델

      2020.04.30 by RACC8N

    • 4.2 멀티코어 프로그래밍

      2020.04.30 by RACC8N

    • 05. 기억장치 (4) [기억장치 모듈의 설계]

      2020.04.30 by RACC8N

    • 05. 기억장치 (3) [반도체 기억장치]

      2020.04.30 by RACC8N

    05. 기억장치 (5) [캐시 메모리 - 사상방식]

    5.5.3 사상 방식 - 각 주기억장치 블록이 어느 캐시 라인에 적재될 것인 지를 결정해주는 방식으로서, 캐시 내부 조직을 결정 1. 직접 사상(direct mapping) 2. 완전-연관 사상(fully-associative mapping) 3. 세트-연관 사상(set-associative mapping) 1. 직접 사상 - 각 주기억장치의 블록이 지정된 하나의 캐시 라인으로만 적재됨 - 주기억장치 주소 형식 > 태그 필드(t 비트) : 태그 번호(라인에 적재되어 있는 블록의 번호) > 라인 번호(l 비트) : 캐시의 m = 2^t 개의 라인들 중의 하나를 지정 > 단어 필드(w 비트) : 각 블록 내 2^w 개 단어들 중의 하나를 구분 - 주기억장치의 블록 j가 적재될 수 있는 캐시라인의 번호 i :..

    Computer Science/Computer Architecture 2020. 5. 8. 10:18

    05. 기억장치 (5) [캐시 메모리]

    캐시 메모리 (Cache memory) - CPU와 주기억장치의 속도 차이로 인한 CPU 대기 시간을 최소화 시키기 위하여, CPU와 주기억장치 사이에 설치하는 고속 반도체 기억장치 특징 - 주기억장치(DRAM)보다 엑세스 속도가 더 높은 칩(SRAM)사용 - 가격 및 제한된 공간 때문에 용량이 적다 - 캐시 적중(cache hit) : CPU가 원하는 데이터가 캐시에 있는 상태 - 캐시 미스(cache miss) : CPU가 원하는 데이터가 캐시에 없는 상태 (주기억장치로부터 데이터를 읽음) - 적중률(hit ratio) : 캐시에 적중되는 정도(H) - 캐시의 미스율(miss ratio) = (1-H) - 평균 기억장치 엑세스 시간(Ta) (Tc는 캐시 엑세스 시간, Tm은 주기억장치 엑세스 시간) ..

    Computer Science/Computer Architecture 2020. 5. 8. 10:02

    4.5 묵시적 쓰레딩

    묵시적 쓰레딩 (Implicit Threading) - Thread 생성과 관리를 응용 프로그램 개발자가 아닌 compiler와 runtime library에게 넘겨주는 것 - 멀티코어 병렬 처리를 사용하는 프로그램 설계에 사용 컴파일러에서 멀티쓰레딩 지원 - Open MP - GCD (Grand Central Dispatch) 멀티쓰레딩 관리 방법 - Thread Pool Thread Pools Multithreaded server에서의 잠재적 문제점 - thread 생성 오버헤드 : 요청마다 thread를 생성하는 데 시간이 소요됨 - thread 수가 증가에 따른 자원 고갈 가능성 -> thread 수에 제한이 필요 해결책 -> Thread pool - 프로세스를 시작할 때에 일정한 수의 threa..

    Computer Science/OS Concepts 2020. 4. 30. 21:55

    4.4 Thread 라이브러리

    Thread 라이브러리 - thread를 생성하고 관리하기 위한 API 제공 Thread 라이브러리 구현 - user-level library : 완전히 user space에서 구현 > library 함수 호출은 user space에서의 함수 호출로 이어짐 - kernel-level library : library의 코드와 데이터가 kernel space에 존재 > library 함수 호출은 커널에 대한 system call 호출로 이어짐 주로 사용되는 3가지 Thread Libraries 1. POSIX Pthread : user or kernel -level library 2. Windows Thread : kernel-level library 3. Java Thread : Java thread AP..

    Computer Science/OS Concepts 2020. 4. 30. 21:27

    4.3 다중 쓰레드 모델

    User threads : 커널 지원 없이 사용자 수준 (커널 위)에서 thread library에 의해서 지원됨 Kernel threads : OS 커널에서 직접 지원되고 관리됨 Many-to-One 모델 - 다수의 User-level thread가 한 개의 Kernel thread에 연관 - thread 스케줄링과 동기화가 사용자 공간의 thread library에서 수행 - 장점 : > context 스위칭과 동기화 overhead가 작아서 효율적 - 단점 : > 한 thread가 blocking system call을 호출하여 block되면 전체 process가 block됨 (커널이 user-level thread의 존재를 알지 못함) > Multiprocessor 시스템에서 thread들의 병렬..

    Computer Science/OS Concepts 2020. 4. 30. 21:17

    4.2 멀티코어 프로그래밍

    단일 코어 시스템에서의 병행 (concurrent) 실행 멀티 코어 시스템에서의 병렬 (parallel) 실행 병렬(Parallel)과 병행(Concurrency) 병렬 실행과 병행 실행의 구분 - 병렬 시스템 (parallel system)은 동시에 1개 이상의 작업 수행 - 병행 시스템 (concurrent system)은 1개 이상의 task를 지원하여 모든 작업이 진행되게 함 (순서대로) Amdahl's Law - N개의 프로세서를 사용하여 얻을 수 있는 가능한 성능 이득 병렬 실행 (parallelism)의 유형 - data parallel : 데이터의 부분 집합에 대해서 동일 연산 수행 - task parallel : 각 프로세서마다 고유 연산 수행 > 대부분 두 병렬 실행 방법이 혼용된다.

    Computer Science/OS Concepts 2020. 4. 30. 20:57

    05. 기억장치 (4) [기억장치 모듈의 설계]

    1. 기억장치 칩의 데이터 I/O 비트 수가 단어 길이보다 적은 경우 > 여러 개의 칩들을 병렬로 접속하여 기억장치 모듈을 구성 (단어의 길이 = N비트, 기억장치 칩의 데이터 I/O 비트 수 = B라면, -> N/B 개의 칩들을 병렬 접속) [EXAMPLE] N = 8 일때, 16x4비트 RAM 칩들을 이용한 기억장치 모듈의 설계 - 방법 : 2개의 RAM 칩들을 병렬로 접속 - 모듈의 용량 : (16x4) x 2개 = 16x8비트 = 16바이트 - 주소 비트 (4개 : A3~A0) : 두 칩들에 공통으로 접속 - 칩 선택 (Chip Select : CS)신호도 두 칩들에 공통으로 접속 - 주소 영역 : 0000 ~ 1111 16x4 비트 RAM 칩들을 이용한 16x8비트 기억장치 모듈 [EXAMPLE..

    Computer Science/Computer Architecture 2020. 4. 30. 15:28

    05. 기억장치 (3) [반도체 기억장치]

    5.3.1 RAM (Random Access Memory) 특성 - 임의 엑세스 방식 사용 - 반도체 집적회로 기억장치 (semiconductor IC memory) - 데이터 읽기와 쓰기가 모두 가능 - 휘발성 (volatile) : 전원 공급이 중단되면 내용이 지워짐 1K x 8 RAM 칩과 제어 신호들 1K = RAM 안에 있는 기억장소의 개수, 8 = 기억장소안에 있는 비트 수 - 주소비트 : 기억장소의 개수가 1K = 2^10이므로 주소 비트는 10비트 - 데이터 버스 폭 : 데이터 입출력은 한 번에 8비트씩 이루어지기 때문에, 데이터 버스의 폭은 8비트 제조 기술에 따른 분류 DRAM (Dynamic RAM) - 캐패시터(capacitor)에 전하(charge)를 충전하는 방식으로 데이터를 저..

    Computer Science/Computer Architecture 2020. 4. 30. 15:02

    추가 정보

    페이징

    이전
    1 2 3 4 ··· 8
    다음
    TISTORY
    pwnkidhn.github.io © rvkhun
    페이스북 트위터 인스타그램 유투브 메일

    티스토리툴바