본문 바로가기
728x90

프로그래밍기초5

관계 대수와 관계 해석의 차이, SQL과 무슨 관련이 있을까? 데이터베이스에서 질의를 표현하는 방법은 크게 **관계 대수(Relational Algebra)**와관계 해석(Relational Calculus) 두 가지가 있다.둘 다 원하는 데이터를 추출하는 방법이지만, 표현 방식과 개념이 다르다.✅ 관계 대수란?관계 대수는 데이터를 어떻게 처리할지를 단계적으로 정의하는 방식이다.즉, 절차적 언어로 테이블 간의 연산 과정을 명시한다.예를 들어, 두 테이블을 조인하거나 조건을 걸어 필터링하는 작업이 모두 관계 대수 연산이다.📌 주요 연산σ(Selection): 조건에 맞는 튜플 선택 → σ(age > 20)(Student)π(Projection): 특정 속성 추출 → π(name, age)(Student)∪, ∩, −: 집합 연산×(카티션 프로덕트)⨝(조인)✅ 관계 .. 2025. 5. 1.
운영체제 프로세스 상태 변화 완벽 정리 - Ready, Running, Blocked, Terminated 운영체제를 이해하는 데 있어 가장 기본이 되는 개념 중 하나가 바로 **프로세스 상태(Process States)**이다.프로세스는 단순히 프로그램을 실행하는 것을 넘어서, 운영체제에 의해 다양한 상태로 관리된다.✅ 프로세스란 무엇인가?프로세스(Process)란, 실행 중인 프로그램을 의미한다.운영체제는 수많은 프로세스를 동시에 관리하기 위해 각각의 프로세스 상태를 구분하고, 필요에 따라 전환시킨다.✅ 프로세스 상태(State) 종류New (생성 중)프로세스가 생성되고 있는 초기 상태이다.Ready (준비 상태)실행할 준비가 완료되었지만, CPU 할당을 기다리는 상태이다.Running (실행 상태)CPU를 할당받아 실제로 명령어를 실행하고 있는 상태이다.Blocked (대기 상태)입출력 작업이나 다른 이.. 2025. 4. 27.
OSI 7계층 완벽 정리! 네트워크 개념 한 방에 끝내기 IT면접이나 정보처리기사 공부할 때자주 등장하는 키워드, OSI 7계층.하지만 단계도 많고 헷갈리기 쉬워요. 그래서 이 글 하나로 OSI 7계층, 한 방에 정리해드립니다.🧱 OSI 7계층이란?OSI는 Open Systems Interconnection의 약자예요.쉽게 말해, 네트워크 통신이 어떻게 이루어지는지 7단계로 나눈 모델이에요.이 모델은 각 단계별로 역할을 나눠서 서로 다른 시스템끼리 통신이 잘 되도록 도와주는 역할을 합니다.🔎 OSI 7계층 구조계층이름주요 역할 및 설명7계층응용 계층사용자와 가장 가까운 계층. 웹브라우저, 이메일 등6계층표현 계층데이터 암호화, 압축, 인코딩 등의 처리5계층세션 계층통신 연결 설정, 유지, 종료 (예: 로그인 상태 유지)4계층전송 계층포트 번호로 구분, 데이.. 2025. 4. 15.
동기와 비동기의 차이, 개발자라면 꼭 알아야 할 기본 개념! 개발을 하다 보면 ‘동기(Synchronous)’와 ‘비동기(Asynchronous)’라는 말을 자주 듣게 된다.특히 프론트엔드와 백엔드 간의 통신, API 호출, 파일 읽기 등 다양한 상황에서 이 개념은 매우 중요하다.하지만 초보자라면 헷갈리기 쉬운 개념이기도 하다.이번 글에서는 동기와 비동기의 차이, 실생활 예시, 그리고 개발에서의 사용 사례까지 자세히 정리해보겠다.✅ 동기(Synchronous)란?작업이 순차적으로 처리됨앞 작업이 끝나야 다음 작업이 시작됨결과가 나올 때까지 기다림처리가 예측 가능하지만 느릴 수 있음예시:ATM에서 돈을 인출할 때 → 앞사람이 끝날 때까지 기다림코드 예제 (JavaScript):function task1() { console.log("작업 1");}function .. 2025. 4. 14.
Server, DB, DBMS의 차이 – 제대로 알고 가자! 개발을 공부하면서 자주 듣게 되는 단어가 있다. 바로 **서버(Server), 데이터베이스(DB), 데이터베이스 관리 시스템(DBMS)**다.처음에는 비슷하게 느껴지기도 하고, 용어 자체가 어려워서 헷갈리는 경우가 많다.하지만 이 개념은 개발자뿐만 아니라 IT 지식을 갖추고 싶은 누구에게나 꼭 필요한 기초 지식이다.이 글에서는 이 세 가지 개념이 무엇인지, 어떻게 다른지를 쉽고 자세하게 정리해본다.✅ Server(서버)란?서버는 클라이언트(사용자)의 요청을 받아 처리한 뒤, 그 결과를 다시 전달해주는 컴퓨터 또는 시스템을 말한다.즉, 서비스를 제공하는 주체라고 이해하면 된다.(클라이언트의 요청을 처리하고, 데이터를 전달하는 컴퓨터 시스템 또는 소프트웨어.)예시:사용자가 웹사이트에 접속하면, 브라우저는 서.. 2025. 4. 14.
728x90