728x90

CS 92

Lock free queue / Atomic 메모리 모델 / ABA

https://velog.io/@cedongne/Server-Lock-free 1.lock free 여러개의 쓰레드에서 동시에 호출했을 때에도 정해진 단위마다 적어도 한개의 호출이 완료되는 알고리즘 멀티쓰레드 환경에서 다른 쓰레드가 플래그를 세팅해주고, lock을 풀어주는 등 다른 쓰레드가 끝나고 자기 순서가 오기를 기다리지 않는 non-blocking이 보장되어야 lock-free가 될 수 있음 특정 작업을 동시에 여러 쓰레드가 호출했을 때 적어도 하나는 완료해서 반환하는 것. 그 알고리즘을 queue로 구현한 것이 lock free queue. https://velog.io/@codingskynet/C11-Memory-Model-Atomic%EB%B6%80%ED%84%B0-Lock-Free-%EC%9..

CS/운영체제 2024.01.09

도커와 컨테이너의 이해

도커와 컨테이너의 이해 (1/3) - 컨테이너 사용법 · 클라우드메이트 기술 블로그🦒 (cloudmt.co.kr) 도커와 컨테이너의 이해 (1/3) - 컨테이너 사용법 목차 1. 도커 이미지? 도커 컨테이너? a. 도커 이미지 b. 도커 컨테이너 2. 기본적인 도커 명령어 a. 도커 컨테이너 안녕하세요. 첫 번째 글을 작성하게 된 클라우드메이트 T tech.cloudmt.co.kr Docker 컨테이너는 라이브러리, 시스템 도구, 코드, 런타임 등 애플리케이션 실행에 필요한 모든 것을 담고 있는 인기 있는 경량의 독립형 실행 컨테이너입니다. Docker는 개발자가 컨테이너화된 애플리케이션을 빠르게 빌드, 테스트 및 배포할 수 있게 해주는 소프트웨어 플랫폼이기도 합니다. Docker: 컨테이너 기술을 활용..

CS/운영체제 2023.12.20

대칭키 vs 비대칭키

[암호학] 대칭키 vs 공개키(비대칭키) 암호화 차이 (tistory.com) [암호학] 대칭키 vs 공개키(비대칭키) 암호화 차이 공개키는 이해하고 있다고 생각하면서도, 막상 이자리에서 설명해보라고 하면 갑자기 헷갈리는 경우가 있다. 대칭키의 장단점은 무엇인지, 어떤 단점을 해결하기 위해 공개키가 등장하게 됐는 liveyourit.tistory.com * 대칭키 암호화 방식: 암복호화에 사용하는 키가 동일한 암호화 방식 해당 키를 아는 사람만이 문서를 복호화해볼 수 있게 됨 (대표적 알고리즘 Ex) DES, 3DES, AES, SEED, ARIA) * 장점: 속도 빠름 * 단점: 키를 교환해야 한다는 문제(키 배송 문제)가 발생 ->키를 교환하는 중 키가 탈취될 수 있는 문제 ㅇ 사람이 증가할 수록 전..

CS/운영체제 2023.12.20

동기 vs 비동기

동기, 비동기란? (+Promise, async/await 개념) (velog.io) 동기, 비동기란? (+Promise, async/await 개념) 1. 동기 vs. 비동기 우선 차이점 부터 설명하자면, 동기는 '직렬적'으로 작동하는 방식이고 비동기는 '병렬적'으로 작동하는 방식이다. 즉, 비동기란 특정 코드가 끝날때 까지 코드의 실행을 멈추 velog.io 1. 동기 vs. 비동기 우선 차이점부터 설명하자면, 동기는 '직렬적'으로 작동하는 방식이고 비동기는 '병렬적'으로 작동하는 방식이다. 즉, 비동기란 특정 코드가 끝날때 까지 코드의 실행을 멈추지 않고 다음 코드를 먼저 실행하는 것을 의미한다. 비동기 처리를 예로 Web API, Ajax, setTimeout 등이 있다. 아래 사진을 통해 차이점..

TCP / UDP

[TCP/UDP] TCP와 UDP의 특징과 차이 - MangKyu's Diary (tistory.com) [TCP/UDP] TCP와 UDP의 특징과 차이 오늘은 네트워크의 계층들 중 전송 계층에서 사용하는 프로토콜에 대해서 알아보려고 합니다. 전송계층은 송신자와 수신자를 연결하는 통신서비스를 제공하는 계층으로, 쉽게 말해 데이터의 mangkyu.tistory.com 전송계층: 송신자, 수신자를 연결하는 통신서비스를 제공하는 계층으로, 쉽게 말해 데이터의 전달을 담당한다. TCP, UDP : 전송계층에서 데이터를 보내기 위해 사용하는 프로토콜 1.TCP(Transmission Control Protocol) : 전송을 제어하는 프로토콜(규약) 인터넷 상에서 데이터를 메시지의 형태로 보내기 위해 IP와 함께..

순수 가상함수, 일반 가상함수

[C++] 가상함수와 순수가상함수의 차이(virtual, pure virtual)에 대해서 (tistory.com) [C++] 가상함수와 순수가상함수의 차이(virtual, pure virtual)에 대해서 안녕하세요. BlockDMask 입니다. 오늘은 C++의 아주 중요한 가상함수, 순수가상함수에 대해서 알아보겠습니다. 우선, 기본적으로 가상함수(virtual)와 순수가상함수(pure virtual)에 대한 기본적인 지식이 blockdmask.tistory.com 순수가상함수는 자식에게 '아들아 너는 A기능이 꼭 있어야해! 근데 그것은 너가 알아서 선언해!, 이거 선언안하면 아들아 너의 클래스는 돌아가지 않는단다.' (순수하다 진짜.) 일반(단순)가상함수는 '아들아 B기능을 물려줄건데, 니가 선언안해..

CS/ETC 2023.12.19

FSM(Finite-state machine)

[Unity] FSM - 유한 상태 기계 :: 게임 개발 공부 (tistory.com) [Unity] FSM - 유한 상태 기계 FSM(finite-state machine)은 상태(state)를 기반으로 동작을 제어하는 방식을 구현하기 위한 디자인 패턴이다. FSM의 핵심은 단 하나의 상태만을 가진다는 점이다. 상태를 기준으로 어떤 동작을 수행할지 dodobug.tistory.com 상태(state)를 기반으로 동작을 제어하는 방식을 구현하기 위한 디자인패턴 핵심: 단 하나의 상태만을 가진다. 상태를 기준으로 어떤 동작을 수행할지 결정하기 때문에 현재 상태만 알 수 있으면 어떤 동작을 수행하려 하는지 명확히 파악할 수 있고 구현이 쉬움.

CS/ETC 2023.12.19

OOP(Object-oriented programming)

[OOP] 객체지향 프로그래밍(Object Oriented Programming)이란? - 𝝅번째 알파카의 개발 낙서장 (itcode.dev) [OOP] 객체지향 프로그래밍(Object Oriented Programming)이란? - 𝝅번째 알파카의 개발 낙서장 IT 업계에 종사하게 된다면 십중팔구 JAVA, C++, C# 중 하나는 다루게 된다. 국내 IT의 최다 공급이자 수요인 JAVA를 위시한 위 세 가지 언어의 공통점은 전부 객체지향언어라는 점이다. 물론 지금에 blog.itcode.dev 초딩이 알아듣도록 이해 * 객체: 프로그램 동작의 주체가 되는 요소. (유/무형을 가리지 않음. 실체가 명확한 것일 수도 있고, 무형의 개념일 수도 있음) 모든 객체는 상태와 동작을 가진다. ex) TV의 색,..

CS/ETC 2023.12.19

프로세스가 메모리에 올라가는 방법 (+가상메모리 + 프로그램/프로세스 차이)

[운영체제(OS)] 8. 메모리 관리(Memory Management) (rebro.kr) [운영체제(OS)] 8. 메모리 관리(Memory Management) [목차] 1. Address Binding 2. Swapping 3. Contiguous Allocation 4. Fragmentation 5. Paging 6. Translation Look-aside Buffer 7. Structure of the Page Table 8. Segmentation 참고) - https://parksb.github.io/article/12.html - KOCW 공개강의 (2014-1. 이 rebro.kr 12) 프로세스와 메모리 할당 (tistory.com) 12) 프로세스와 메모리 할당 프로그램과 프로세스 C..

CS/운영체제 2023.12.18
728x90