cs

    [CS] 스레드(Thread), 멀티 스레드(Multi-Thread)

    1. 스레드(Thread) 스레드는 사전적 의미로 한 가닥의 실이라는 뜻입니다. 한 가지 작업을 실행하기 위해 순차적으로 실행한 코드를 실처럼 이어 놓았다고 해서 유래된 이름입니다. 하나의 스레드는 코드가 실행되는 하나의 흐름이기 때문에, 한 프로세스 내에 스레드가 두 개라면 코드가 실행되는 흐름이 두 개 생긴다는 의미입니다. 스레드의 특징 프로세스 내에서 실행되는 흐름의 단위 각 스레드마다 call stack이 존재(call stack: 실행중인 서브루틴을 저장하는 자료 구조) 스레드는 다른 스레드와 독립적으로 동작 스레드(thread)는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상..

    [CS] 운영체제, 프로세스

    참 많이 들어본 용어이고 그냥 어렴풋이 알고 있는 단어들이지만 설명이나 정확하게 알고 있지는 않았는데 그 단어의 의미를 알게 되어 좋은 기회 였던것 같습니다. 자체(하드웨어)는 스스로 할 수 있는 일이 없습니다. 하드웨어의 설계를 바탕으로 하드웨어에게 일을 시켜야만 그 의미가 있습니다. 하드웨어에게 일을 시키는 주체가 바로 운영체제입니다. 그냥 운영체제 하면 윈도우, 맥 떠올리기 쉽지만 이렇게 정의해서 설명하기 쉽지 않습니다. 1. 운영체제 운영체제가 없다면, 응용 프로그램이 실행될 수 없습니다. 응용 프로그램은 컴퓨터를 이용해 다양한 작업을 하는 것이 목적인고, 운영체제는 응용 프로그램이 하드웨어에게 일을 시킬 수 있도록 도와줍니다. 하드웨어를 구성하는 일을 하는 CPU, 자료를 저장하는 RAM, 디스..

    [CS] 컴퓨터 공학 기초

    알아두면 좋은 내용이지만, 컴퓨터에 관심이 없거나 코딩짜는 것 밖에 알지 못한다면 결코 좋은자료가 못되어서 유튜브나 검색해서 더 좋은 자료를 보는게 맞는 것 같습니다. 관련 유튜브 영상 (말로만 설명해주시만 잘 설명해주어서 좋습니다) https://youtu.be/ABPOjjre0C8 문자열 유니코드라고 불리우는 인코딩 방식이 통일된 시대를 살아가고 있습니다. 문자열을 다루는 디테일한 방식에 대해 전부 알 필요는 없지만, 프로그래밍 언어마다 문자열을 다루는 자료형의 차이를 이해하기 위해 문자열을 다루는 기본적인 방식은 알고 있어야 합니다. 유니코드? 유니코드(Unicode)는 유니코드 협회(Unicode Consortium)가 제정하는 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 ..