본문 바로가기

전체 글

(109)
[제로베이스] JavaScript 과제를 수행하면서 제로베이스 프론트엔드 스쿨을 배우면서 이번에 JavaScript 과제를 수행했습니다. 진행상황은 아쉽게도 5개의 미션 전부 하지 못했습니다. 최근에 개인적으로 해야할 일들이 너무 많았던 것 같습니다.그때문에 진도가 밀리고, 그러다보니 과제 수행기간이 부족해지고..다음주 내로 남은 과제를 할 수 있도록 노력해보고,그 뒤에 밀린 진도 또한 따라잡을 수 있도록 노력해봐야겠습니다. 아마도 잘 시간을 아끼면 금방 따라잡을 수 있지 않을까요? JavaScript 를 수행하면서 기본적인 작업은 해봤지만, class를 활용하는 부분이 고민이었습니다.API 통신 또한 원하는 결과가 나오지 않아 고민중이기도 합니다. 그래도 전체적으로 JavaScript 강의, 그중에서도 class나 DOM 관련 강의가 제일 도움되던 것 ..
운영체제 - 가상메모리 가상 메모리란?   - 메모리가 실제 메모리보다 많아 보이게 하는 기술입니다.   - 프로세스가 실제로 사용하는 메모리는 작다는 점에 착안해서 고안된 기술입니다.   - 실제 프로세스에서 사용하는 메모리만 제공하고, 나머지 공간은 가상 주소만 제공합니다.      - 이때, 프로세스간 공간 분리로, 프로세스 이슈가 전체 시스템에 영향을 주지 않습니다.    - 배치 처리 시스템에서는 가상메모리가 필요하지 않습니다.      : 프로세스 로드 - 실행 - 종료 의 과정을 통해 메모리를 다시 반환받고, 반환받은 뒤 로드하기 때문입니다.   - 여러 프로세스를 동시 실행하는 시스템에서 사용하게 됩니다.      : 컴퓨터의 메모리에는 한계가 존재합니다. : 통상 RAM용량은 8GB에서 16GM      : 수..
폰트 로딩 최적화 텍스트렌더링 지연웹 사이트에 진입하게 되면, 글자가 늦게 나타나거나, 폰트가 나중에 적용되는 현상이 일어나는 경우가 있습니다.이는, 폰트 적용이 늦게 적용되서 발생하는 상황으로, 폰트 최적화를 수행하여 최소화 할 수 있습니다.    웹 폰트 최적화 방법1) Font PreLoading ( 폰트 미리 로드하기 )Font PreLoading이란?웹 페이지 폰트를 외부 폰트로 설정하는 경우, 텍스트 렌더링까지 시간이 걸리는 경우가 있습니다.Font Preloading 은 이를 우선적으로 수행하여 텍스트렌더링 지연시간을 최소화 할 수 있게 합니다.   Font Preload 적용방법1-1. HTML   - HTML 섹션에 코드를 추가하는 방법입니다.   - link 요소에서  rel 속성을 preload로 a..
운영체제 - 동기화 이슈 동기화란?   - 작업들 사이에 실행 시기를 맞추는 것을 의미합니다.    동기화가 필요한 이유?   - 다중 스레드를 사용할때, 스레드의 작업 도중에 다른 스레드의 작업 상황을 확인하지 않습니다.   - 이 때문에 여러 스레드가 동일한 데이터에 접근 하는 경우 다른 스레드의 작업이 개입되는 경우가 생깁니다.   - 이러한 경우 의도하는 대로 결과가 나오지 않기 때문에, 동기화를 사용하여 작업의 순서를 지정해주어야 합니다.    Ex)    - 위와같이 Thread A를 진행중에 Thread B가 개입하여 문제가 생길 수 있습니다.   - 이 때문에 동기화를 통해 Thread A가 끝난 뒤, Thread B가 동작하게 설정해야 합니다.    Mutual exclusion (상호 배제)   - 공유 변수 ..
운영체제 - 스레드 스레드란?   - Light Weight Process 라고도 합니다.   - 모든 영역을 독립적으로 갖는 프로세스와는 달리, 스택영역을제외한 부분을 공유합니다.   - 하나의 프로세스에 여러 스레드를 사용 가능하며, 프로세스의 데이터를 스레드가 공유합니다.    멀티 프로세싱과 멀티 스레딩   - 두 작업 모두 CPU의 성능 개선을 위해 사용합니다.    - 멀티 프로세싱       1) 여러 개의 CPU를 병렬 처리하여 여러 프로세스를 처리하는 방법입니다.      2) 멀티 프로세싱은 처음 구조를 잡을때 만들어야 합니다.    - 멀티 스레딩      1) 하나의 CPU 내에서 여러가지 작업을 동시에 처리하는 방법입니다.      2) 멀티 스레딩은 프로그램의 일부 코드만 수정 하여 구현 가능합니다..
운영체제 - 프로세스와 스케줄링 프로그램과 프로세스exe 파일을 실행하면, 프로그램은 메모리에 올라가게 되고, 이를 프로세스라고 합니다.   - 프로세스 : 메모리에 올라간 (= 실행중인) 프로그램   - 응용 프로그램 != 프로세스      : 응용 프로그램은 여러개의 프로세스로 구성되있기때문에 프로세스가 응용 프로그램은 아닙니다.      : 프로세스는 메모리에 올라가는 일종의 작업 단위로 볼 수 있습니다.    프로세스 스케줄링   - 응용 프로그램은 언제, 어떠한 프로그램을 메모리에 올릴지 결정할 수 있어야 합니다.   - 스케줄링 알고리즘은 여러 프로그램을 순차적으로 실행시킬 수 있도록 하는 알고리즘입니다.    프로세스 스케줄링 종류   1. 배치 처리 시스템      - 여러 프로그램을 선입선출형식으로 실행시키는 시스템입니..
운영체제 - 커널과 쉘, 시스템 콜 운영체제란?   - Operating System, OS라고 부릅니다.   - 사용자와 하드웨어간 인터페이스제공, 시스템 자원관리, 응용프로그램 관리 등을 수행합니다.   - 운영체제의 코어(핵심)부분을 커널(Kernel)이라고 부릅니다.    운영체제의 역할   1. 시스템 자원( 컴퓨터 하드웨어 ) 관리      - CPU, Memory, I/P Devices 등을 관리합니다.   2. 사용자와 컴퓨터간 커뮤니케이션 지원   3. 응용 프로그램 제어      - 다양한 소프트웨어의 실행, 접근권한, 사용자 관리 등을 수행합니다.    커널과 쉘   - 커널(Kernel)      : 운영체제의 핵심 부분입니다.      : 운영체제는 커널과 일부 응용프로그램및 보조 기능으로 구성되어 있습니다.   -..
컴퓨터구조론 - CPU 성능 개선 하나의 CPU에서 작업을 할 때, 중간에 대기하는 시간이 많아질수록 효율이 떨어집니다.이를 막기위해 다양한 방법으로 CPU의 개선을 수행합니다.    파이프라인   - 하나의 코어에 여러개의 스레드를 사용하는 방법입니다.   - 병렬 프로세스 구조라고 하며, 단일 CPU 내에서 병렬처리 시스템과 유사한 연산속도를 만듭니다.   - 각 작업을 중첩하여 동일한 작업을 보다 적은 시간 안에 처리할 수 있게 합니다.    파이프라인 위험   - 동시에 여러 작업을 수행하는 구조로 인해 몇가지 문제가 발생할 수 있습니다.   - 데이터 위험, 제어 위험, 구조적 위험 3가지가 존재합니다.   1. 데이터 위험      - 데이터 의존성 문제로 발생합니다.      - 작업 2에서 작업 1의 데이터가 필요한데, 작..