Computer Science 24

Linux: 리눅스란, 쉘, 프롬포트, 로그인쉘, 터미널, 리눅스 디렉토리 구조

리눅스 넓은 의미의 리눅스: 리눅스 커널 + 명령어 + 애플리케이션 (사용자가 바로 사용 가능) 좁은 의미의 리눅스: 리눅스 커널 커널: OS에서 하드웨어 제어하는 소프트웨어 리눅스 종류 Red Hat: Red Hat Enterprise Linux, CentOs, Fedora Debian: Debian GNU/Linux, Ubuntu 쉘 커널의 인터페이스 사용자가 커널을 직접 조작할 수 없기 때문에 사용자와 하드웨어 사이에서 명령어를 전달하여 커널의 실행 결과를 출력하는 소프트웨어 커널과 쉘이 분리된 이유 리눅스 외 OS를 사용할 때 쉘만 이식하면 동일하게 사용 가능 쉘을 사용하며 에러 또는 높은 부하가 발생해도 본체인 리눅스 커널에 미치는 영향 최소화 쉘 종류 sh 표준 쉘. 오래된 쉘이라 기능이 적고..

운영체제란? OS 종류, Linux 종류, 커널이란? 프로세스와 쓰레드의 차이점? 쓰레드란?

운영체제 정의 운영체제(OS, Operating System): 소프트웨어 사용자에게 인터페이스를 제공하고, 하드웨어 자원을 효율적 관리하는 소프트웨어 목적 컴퓨터 자원 관리와 자원 보호 최신 컴퓨터: CPU 등 성능 향상으로 여러 작업을 동시에 처리하는데 이때 응용 프로그램에게 컴퓨터 자원을 할당하고 회수 사용자가 하드디스크에 직접 접근해서 데이터 저장을 할 수 없다면 데이터를 덮어 씌워서 데이터를 손실하는 실수 방지 ex. 사용자(손님), 운영체제(웨이터), 하드웨어(레스토랑) 자원 관리: 응용프로그램들에게 자원 배분 자원 보호: 사용자와 하드웨어 사이에서 인터페이스 제공(조작, 결과 제공) 하드웨어 인터페이스 제공 소프트웨어 인터페이스 제공 종류 MS Window, MS Mac android, ma..

네트워크 토폴리지와 네트워크의 분류

네트워크의 기초 네트워크: 노드(node)와 링크(link)가 서로 연결되어 있는 집합체 노드: 서버, 스위치 등 네트워크 장치 링크: 유선 또는 무선 처리량: 링크를 통해 전달되는 단위 시간당 데이터양을 말한다. 단위는 bps(bits per second)를 사용한다. (초당 수신되는 비트 수라는 의미이다) 지연시간: 요청이 처리되는 시간을 말하며 메시지가 두 장치 사이를 왕복하는 데 걸린 시간이다. 대역폭: 주어진 시간 동안 네트워크 연결을 통해 흐를 수 있는 최대 비트 수 네트워크 토폴리지 네트워크 토폴리지(Network Topology): 상호 간에 정보를 교환할 수 있도록 하는 노드와 링크들의 배치 형태를 말한다. 트리 토폴리지: 계층형 토폴리지라고 하며 트리 형태로 배치한 네트워크 구성이다. ..

🎨 디자인 패턴 : 싱글톤 패턴, 팩토리 패턴, 어댑터 패턴, MVC 패턴

디자인 패턴 디자인 패턴: 프로그램을 설계할 때 발생했던 문제들을 해결할 수 있는 솔루션을 규약 형태로 만들어 놓은 것이다. 싱글톤 패턴 싱글톤 패턴: 하나의 클래스의 오직 하나의 인스턴스만 가지는 패턴이다. 데이터베이스 연결 모듈에 많이 사용한다. 이를 통해 DB 연결에 대한 인스턴스 생성 비용을 절감할 수 있다. 단점: TDD TDD를 할 때 단위 테스트를 수행하는데, 단위 테스트는 테스트가 서로 독립적이어야 하고 테스트를 어떤 순서로든 실행할 수 있어야 한다. 하지만 싱글톤 패턴은 미리 생성된 하나의 인스턴스를 기반으로 구현하는 패턴이므로 각 테스트마다 독립적인 인스턴스를 만들기 어렵다. 유의: 싱글톤 패턴은 모듈 간의 결합을 강하게 만든다. 의존성 주입을 통해 모듈 간의 결합을 느슨하게 만들어서 ..

Computer Science 2023.07.14

OSI 7계층(OSI 7 Layers)과 TCP/IP 프로토콜

OSI 7계층(OSI 7 Layers) OSI(Open Systems Interconnection) 모델 OSI(Open Systems Interconnection) 모델: 네트워크 프로토콜의 설계와 구현을 위해 사용되는 참조 모델이다. OSI 모델은 네트워크 통신에서 일어나는 다양한 기능을 개별 계층으로 분리하여 계층적으로 이룬다. OSI 7계층(OSI 7 Layers) 네트워크 통신할 때 7개의 레이어에서 통신한다. 1) 물리 계층 (Physical Layer) 전기적, 물리적 신호를 전송하는 계층이다. 데이터 비트를 전송하는 역할을 수행하며, 케이블, 허브, 리피터 등의 하드웨어를 포함한다. 물리 주소로 MAC 주소(MAC address) 를 사용한다. L1 스위치 종류 repeter: 1개의 케이..

유선 & 무선 네트워크

유선 네트워크(LAN vs. MAN. vs. WAN) LAN(Local Area Network): 좁은 범위에서 사용하는 네트워크 MAN(Metropolitan Area Network): 다른 도시에 있는 2대 이상의 PC를 연결하는 네트워크 WAN(Wide Area Network): 광역 통신망 범위: PAN(블루투스 영역) < LAN < MAN < WAN EPN, VPN 기업 사설망 (EPN, Enterprise private network): 기업이 자체적으로 만든 네트워크로 기업 PC들을 연결하는 것 가상 사설망(VPN, Virtual private network): 특정한 회사나 조직이 소유하고 독점적으로 사용하는 네트워크. 자체 암호화 통신이기 때문에 저렴하게 강력한 보안 통신 가능 사설망(P..

On-Premise에서의 네트워크 기본 구성

On-Premise에서의 네트워크 기본 구성 시스템 구성 [서버 가이드북] 2. 네트워크 기초 지식 네트워크 기술 이해하기 일반적으로 말하는 LAN은 크게 LAN 케이블을 이용하여 데이터를 전송하는 '유선 LAN'과 전파를 이용하여 데이터를 전송하는 '무선 LAN'으로 나눌 수 있다. 이 중 서버를 연결 lipcoder.tistory.com 시스템 구성도 LAN 구성 스위치 L2: 로컬 장비들을 연결, 이더넷 프레임의 MAC 주소를 기반으로 동작 L3: L2 장비들을 연결하는 라우터, IP 주소를 기반으로 동작 백본 스위치: L3들을 연결, 백본 스위치는 L3 스위치들을 연결하는 스위치로서 대규모 네트워크에서 사용 스토리지 영역 SAN 스토리지 서버를 공개하는데 주로 웹 서버, 메일 서버, DNS 서버를..

백업, 복원, 배포 무중단

화재로 인한 서비스 장애 사건 원인: 시스템 이중화가 되어 있지 않은 인프라 구조 https://namu.wiki/w/SK%20C%26C%20%ED%8C%90%EA%B5%90%20%EB%8D%B0%EC%9D%B4%ED%84%B0%EC%84%BC%ED%84%B0%20%ED%99%94%EC%9E%AC%EB%A1%9C%20%EC%9D%B8%ED%95%9C%20%EC%9D%B8%ED%84%B0%EB%84%B7%20%EC%84%9C%EB%B9%84%EC%8A%A4%20%EC%9E%A5%EC%95%A0%20%EC%82%AC%EA%B1%B4 SK C&C 판교 데이터센터 화재로 인한 인터넷 서비스 장애 사건 - 나무위키 22시 02분 기준, 다음의 증권과 부동산 서비스가 복구되었다. 카카오는 '무료서비스 보상안'으로 ..

입출력 인터페이스

입출력 제어 장치 데이터 버퍼 레지스터, DMA 및 채널, CPU 등으로 구성된다. 입/출력 버스: 입/출력 장치 사이에 데이터 전송을 위해서 인터페이스에 공통으로 연결된 버스다. 인터페이스: 디바이스 드라이버 (현재 UPnP 기술로 연결된 기기들 자동 설치) 입출력 인터페이스 입출력 장치는 CPU와 메모리를 연결해주는 버스에 직접 연결될 수 없다. 입출력 장치와 CPU 및 메모리 간의 속도 차이가 크다. CPU와 메모리는 매우 빠르게 데이터를 주고받을 수 있지만, 입출력 장치는 상대적으로 느리며 처리 속도가 낮다. 이유: 입출력 장치(CPU)는 메모리와 속도 차이가 있기 때문에 버퍼를 두기 위해 인터페이스를 통해 버스에 부착한다. 따라서, 입출력 장치는 CPU와 메모리를 연결해주는 버스에 직접 연결되지..

메모리(Memory) : 하드웨어, 메모리 계층 구조 / 메모리 접근 기술: DMA, Overlay, Swapping

하드웨어 컴퓨터 하드웨어는 크게 프로세서, 메모리(기억장치), 주변장치로 구성되며 서로 시스템 버스로 연결된다. 시스템 버스: 회로가 모두 버스다. 데이터들을 각 컴포넌트가 연결해서 주고받을 수 있게 연결하는 것. data bus: 데이터를 전송 시스템 address bus: 물리적 주소를 찾음 contral bus: 하드웨어 구성 Register: CPU 안에서 사용하는 메모리 저장 공간 DMA(Direct Memory Access): CPU의 제어 없이 메모리에 있는 데이터에 접근하는 것 (Assembly Language: CPU 제어 명령어) Control Unit(제어 장치): 제어 부분 Combinational Logic(연산 장치): 레지스터와 연산장치 부분은 데이터 부분 메모리 계층 구조 프..