본문 바로가기

반응형

전체 글

(124)
참고할 블로그, 유튜브 등 1. https://yceffort.kr/ 자바스크립트, 노드, 리액트 등 Home yceffort yceffort.kr 2. https://www.youtube.com/user/damazzang 자료구조 알고리즘 엔지니어대한민국 www.youtube.com 3. https://www.youtube.com/c/ChanSuShin 한국외대 컴공 Chan-Su Shin 한국외국어대학교 컴퓨터공학부 신찬수 교수의 강의용 채널로 전체 공개 콘텐츠입니다. (죽어가던 채널을 코로나가 강제로 부활시키는군요.) 주로 자료구조와 알고리즘에 대한 내용을 다루며, www.youtube.com 4. https://www.youtube.com/channel/UCS0F25vig_sPIQXMiK8IdSg 노드js 등등 우리밋_wo..
면접 정리 면접 정리 기술적인 질문보다 경험, 이력이 사실인지를 검증하는 질문이 훨씬 많았다. 기술 외 질문 이력서, 경험 질문 프로젝트에서 담당했던 파트 구현하면서 겪은 어려움과 가장 성취감 느낀 파트 디버깅이나 에러 해결한 경험 왜 백엔드 개발자가 되고 싶은지? 개발자가 되기로한 계기 이전 직장 팀장님께 묻는다면 본인은 몇 점짜리 직원인가? 큰 조직 vs 작은 조직, 어떤일을 할 것 같으며 본인은 어떤 쪽을 더 선호하는가? 앞으로 어떤 개발자가 되고싶은가? 개발자에게 중요한 역량 3가지 지금 관심있는 기술, 분야 3가지, 현재무엇을 공부하고 있는가? 항해99 관려 커리큘럼, 팀 구성, 펀더멘털한 지식 가르쳐 주는지? 기술적 질문 db가 없다는 가정하에 단어사전을 구현할 방법은 랜덤 알파벳 3개가 주어졌을때 해당..
운영체제 2차시 System Structure & Program Execution 오늘 강의는 cpu 구성과 용어 정리 위주. 이번 강의는 소화가 어렵다 느끼던 찰나 교수님 왈 "첫 시간에 한 학기 분량을 모두 설명드리고있으니 이번 학기의 첫 번째 난관이다" 네가 선택한 운영체제다 악으로깡으로 버텨라🤯 컴퓨터 시스템은 크게 CPU, memory, I/O device로 구성한다. 메모리 => cpu의 작업 공간 cpu는 매 클럭마다 메모리에서 기계어를 읽어서 실행시킨다 I/O device는 로컬 버퍼라는 개별 작업공간을 갖는다. mode bit 실행중인 프로그램이 운영체제인지, 사용자 프로그램인지 구분해주는 역할(boolean) 운영체제가 CPU를 갖는 경우 0 => 메모리접근, I/O디바이스 접근 등 모든 작업이 가능함..
실행컨텍스트 자바스크립트 중요 개념을 품은 실행컨텍스트. 먼저 두 줄 요약 하자면 순서 - 전역 코드 평가 => 실행 => 함수 코드 평가 => 실행 구성1. global lexical environment 1. Env.Record 가. object Env.Record => binding object 나. declarative Env.Record => 선언된 변수를 잡는다 (const, let, function) 2. Outer Lex.Env.Reference 3. Block Lex.Env 가. Env.Rec => declarative Env.Record 나. Outer Ref 구성2. function lexical envrinment 1. Env.Record 가. 내부의 변수 다. 매개변수 (arguments) A..
운영체제 1차시 비전공자의 아킬레스건.. CS지식의 부재. 이를 해소하기 위해 반효경 교수님의 운영체제 수업을 KOCW에서 찍먹 해본다. - 운영체제 강의는 14년도, 17년도 버전이 있으며 14년 버전이 비전공자에게 조금 더 수월하다고 한다 운영체제 개요 - 운영체제란 컴퓨터 하드웨어 바로 위에 설치, 하드웨어의 작동 원리를 몰라도 pc를 사용할 수 있는 것은 운영체제 덕분이다. - CPU, memory, HDD 등을 관리하는 가장 복잡하고 까다로운 소프트웨어인 동시에 사용자에게는 편리한 인터페이스를 제공해야 한다. - 동시에 사용하고 있는 사용자/프로그램에게 독자적인 환경에서 수행되는 것 같은 환상(illusion)을 제공한다. => 서버에 여러 사용자가 동시 접속해도 혼자 사용하는 듯한 경험을 제공 - 운영체제 중..
깊은 복사와 얕은 복사 primitive type은 깊은 복사가 일어난다. - 변수 A에 B를 할당하면, B의 값(문자열, 숫자, 불리언 등)을 그대로 복사한다. - 변수 A를 변경하여도 B에 영향을 미치지 않는다. reference type은 기본적으로 얕은 복사가 일어난다. - 변수 B에 객체 A를 할당하면, B에는 A를 참조하는 메모리 주소를 복사한다. - 따라서 B의 속성을 변경하면 A도 변경된다. - 깊은 복사가 필요한 경우 스프레드 오퍼레이터 `...`을 붙여서 메모리 주소가 아닌 힙에 있는 데이터 자체를 복사해 올 수 있다.
node.js와 스레드, non-blocking I/O Node.js는 기본적으로 싱글스레드다. Node.js를 구성하는 libuv라이브러리가 스레드 풀을 제공하는 것처럼 보이지만, 실제로 사용하는 애플리케이션은 한 개다. worker_threads 등장 (https://nodejs.org/api/worker_threads.html) Node.js는 CPU intensive한 작업에 취약하다 i/o intensive한 서비스에 적절한 한편, cpu intensive한 작업에 취약하다. 예를 들면, - 피보나치수열과 같은 복잡한 연산 - for(let i = 0; i
프로세스와 스레드 프로세스 : 프로그램이 돌아가고 있는 상태, 메모리에 올라와 실행되고 있는 프로그램의 인스턴스 스레드 : 프로세스 내에서 실행되는 여러 흐름의 단위 현재 실행 중인 프로세스로 브라우저가 있다고 가정한다. 유튜브에 접속해서 영상을 시청한다. 이때 유튜브 영상을 받는 동시에 영상도 함께 재생해야 하는데, 이렇게 여러가지 작업을 동시에 진행할 수 있는 것은 다수의 스레드가 흐르기 때문이다. 프로세스는 컴퓨터의 자원을 분할해서 사용, 스레드는 프로세스에 주어진 자원을 공유하며 작업한다. 단, 같은 변수에 다수의 프로세스가 동시에 접근하는 경우 에러가 발생할 수 있다. 참조 : ttps://gmlwjd9405.github.io/2018/09/14/process-vs-thread.html [OS] 프로세스와 스레드..

반응형