Basic
-
JavaScript Engine Part 2카테고리 없음 2023. 3. 6. 23:03
Optimizing property access Object가 많아질 수록 property에 빠르게 접근하는 것이 중요해졌다. 같은 형태의 Object를 연결하는 Shape과 property를 추가할 때마다 변경되는 Shape을 관리하기 위한 chain, tree 개념, 또 Shape을 사용하는 주된 이유인 Inline Caches(ICs)에 대해 알아본다. 1. Shapes property에 빠르게 접근하기 위한 개념으로 객체간 동일한 key가 존재할 경우 Shape이 같다고 말한다.(V8에서는 Map이라 불린다.) const a = { x: 5, y: 6 }; const b = { x: 7, y: 8 }; // 객체 a와 b는 Shape이 같음 const c = { y: 9, x: 10 }; // 객..
-
What is Operating System?Linux Kernel/Basic 2019. 1. 16. 12:55
OS(Operating System)이란? 매우 복잡한 소프트웨어이다. 운영체제는 일반적으로 자원 관리자(Resource manager)라고 정의된다. CPU, 메모리, 디스크 등이 이 자원에 해당한다. 사용자가 C 프로그램을 작성하고, 컴파일하여, 생성된 바이너리를 실행할 때 OS가 어떻게 동작하는지 살펴보자. [원시 OS의 형태] 그림은 OS의 기본적인 형태이다. 앞서 설명했듯이 OS는 자원에 해당하는 CPU, Disk, Memory등을 관리한다. # 1. 사용자가 C코드를 작성했을 때 점선을 기준으로 위는 사용자 수준의 동작이고, 아래는 커널 수준의 동작으로 봐도 무관하다. # 2. 해당 C 파일을 저장했을 때 test.c를 저장하는 사용자의 요청은 운영체제에 전달이 되고, 운영체제는 비휘발성 저장..
-
What is heap - part1System hacking training/Knowledge 2018. 12. 12. 09:57
What is heap part 1 CTF문제를 풀이함에 있어 전혀 손도 못대는 영역이 heap영역에 대한 취약점을 다룬 문제들이였는데 Koreangang에서 아주 좋은 강의가 올라와서 heap을 처음으로 공부를 해봤습니다. 영상에서도 설명이 되었지만 how2heap을 통해 공부를 시작하려고 하지만 어디서부터 어떻게 시작해야되는지 모르시는 분들에게 정말 필요한 영상인것 같습니다 :) Heap Concept Tutorial#1(for heap exploit) https://www.youtube.com/watch?v=l0GVitgBPf0 이번 글에서는 해당 영상을 토대로 공부를 하면서 정리를 한 것을 포스팅하겠습니다. 제 정리가 보기 불편하고 어렵다면 위의 링크에서 영상을 보고 오시는 것을 추천드립니다. h..