[OS] 운영체제란?

운영체제 정의 하드웨어 자원을 제어하고 프로그램에 대한 일반적인 서비스를 지원하는 시스템 소프트웨어를 말합니다. 구조 드라이버 > 커널 > 시스템 콜 > 사용자 인터페이스 목적 사용자에게 컴퓨터 프로그램을 쉽고 효율적으로 실행할 수 있는 환경을 제공합니다. 컴퓨터 시스템 하드웨어 및 소프트웨어 자원을 여러 사용자 간에 효율적으로 할당, 관리, 보호합니다. 제어 프로그램으로서 사용자 프로그램의 오류나 잘못된 자원 사용을 감시하고, 입출력 장치 등의 자원에 대한 연산과 제어를 관리합니다. 역할 CPU 스케줄링과 프로세스 관리 CPU 자원의 할당, 프로세스의 생성/삭제/자원 할당/반환을 관리합니다. 저장장치 관리 메모리: 메모리의 할당, 사용 방법 등을 관리합니다. 디스크: 파일을 어떻게 저장할 것인지 관리합니다. I/O 디바이스 관리 외부 입/출력 장치와 어떻게 소통할지 관리합니다. 사용자 관리 사용자간 접근 권한, 자원의 활용등을 관리합니다. 시스템 콜 정의 시스템 콜 ...

July 3, 2022 · 2 min · 291 words · Crispy

[경험] 오픈소스에 PR 해본 썰

TL;DR 업무상 필요에 의해 컨트리 뷰션했습니다. 외부 js라이브러리를 typescript에서 쓰기 위해 래핑하였습니다. chakra ui를 사용하며, 필요를 느낀 컴포넌트를 만들었습니다. 재미있었고, 공부가 많이 되었습니다. 계기 다음 두가지 상황에서 각각 definitly typed 프로젝트와 chakra ui 프로젝트에 PR을 올리게 되었습니다. 도입한 라이브러리에서 typescript 지원을 하지 않는다. 내가 필요한 기능이 닫힌 이슈로만 올라와 있다. 도입한 라이브러리에서 typescript 지원을 안한다. scroll restoration과 관련하여, 모바일에서 계속 오류가 나는 상황이 있었습니다. 이 버그는 사용환경인 모바일에서 신경이 안쓰이진 않을 정도로 ‘가끔’ 일어났기 때문에 수정이 어려웠습니다. ...

August 10, 2021 · 4 min · 682 words · Crispy

[CSS] CSS 기본 컨셉과 규칙 충돌

이번 문서의 목적 CSS Inheritance, Cascading의 정의를 설명할 수 있다. CSS Inheritance, Cascading의 적용 과정을 설명할 수 있다. CSS의 규칙 충돌을 설명할 수 있다. CSS 규칙 충돌? CSS의 역할은 한 Markup Element, HTML에서는 HTML Element에 대해 꾸며주는 역할을 합니다. CSS 규칙 충돌은 한 HTML Element에 대해 여러가지 규칙이 적용될 수 있는 상황을 이야기 합니다. 우리는 논의 중 충돌이 발생하면 합의된 기준을 두고 점수를 매겨 우선순위를 산출합니다. 기준을 합의할 때, 각 기준은 명확하고 측정이 가능해야 합니다. CSS에서는 어떻게 이런 기준을 정하고, 어떻게 적용하고 있을까요? 이 것을 알아서 어떤게 좋을까요? ...

January 4, 2021 · 3 min · 468 words · Crispy

[CSS] CSS? 그게 뭔데?

이번 문서의 목적 CSS의 정의를 설명할 수 있다. CSS? CSS의 정의 CSS는 Cascading Style Sheet의 약자입니다. CSS의 기본 문법 구조 CSS는 Rule Set(혹은 Rule)이라고 부르는 기본 단위가 있습니다. 가장 단순한 구조는 아래와 같습니다. 1 2 3 4 /* RULE SET */ selector { property: value; } selector는 우리가 작성했던 HTML Element의 요소들을 가리킵니다. 말 그대로 selector 입니다. selector의 설정은 다음을 참조해 주세요. HTML에 style을 입히는 방법 1. <style>태그를 이용한다. HTML의 HEAD 태그에서 style 태그를 열고 그 안에 CSS문법으로 rule을 작성하면 적용할 수 있습니다. ...

January 3, 2021 · 2 min · 347 words · Crispy

[경험] 사이트 로딩속도가 이 번들때문에 느려요!

발단 바야흐로 때는 얼마전입니다. 제가 속한 회사의 내부 조직을 위한 JS번들(간단한 JS 파일)로 인해 저희 플랫폼의 초기 로딩속도가 매우 느리다는 소식을 접했습니다. 분명 거의 6개월 동안 정상적으로 서빙되던 사이트가 왜 갑자기 느려진 것일까. 두려웠습니다. 문제의 확이은 Google Analytics(이하 GA)의 사이트 분석에서 부터 시작되었습니다. 네, 마케팅 팀에서 사이트 로딩 속도가 느려 유저 이탈률이 높다라는 피드백을 주신 거였죠. PO님께서는 해당 피드백을 들으신 후에 바로 현황을 분석해 주셨습니다. 비정상적으로 큰 사이즈의 Javascript Bundle이 Fast 3G라는 특수한 환경과 만나 데스크탑 기준 환상의 8초, mobile 기준 환상의 20초가 로딩 및 실행에 소요되는 것임을 밝혀 주셨습니다. ...

January 3, 2021 · 6 min · 1155 words · Crispy