
프로세스 관리 프로세스 = 실행 중인 프로그램 프로세스는 CPU 시간, 메모리, 파일, 입출력 장치를 필요한 여러 가지 자원을 필요로 한다. 일반적으로 이러한 자원은 실행되는 동안 할당된다. 프로세스가 생성될 때 할당받는 여러 가지 물리적 논리적인 자원들 이외에도, 여러 초기화 데이터(입력)도 전달될 수 있다. 프로세스가 종료되면 운영체제는 재사용 가능한 자원을 회수한다. ex) 웹 페이지 내용을 화면에 표시하는 프로세스에서, URL을 입력으로 제공받으며 적절한 명령과 시스템 콜을 실행한다. ⚫ 프로그램 : 수동적 (passive) - 디스크에 저장된 파일의 내용 ⚫ 프로세스 : 능동적 (active) - 다음 수행할 명령을 지정하는 프로그램 카운터(Program Counter)를 가짐 한 프로세스의 수..

운영체제의 작동 부트스트랩 = 컴퓨터 시작 후 제일 처음 실행되는 프로그램 1. ROM(Read Only Memory)에 펌웨어로 저장되었는 부트스트랩 실행 2. CPU 레지스터에서 장치 컨트롤러, 메모리 내용 등 시스템의 모든 측면 초기화 3. 부트스트랩 프로그램이 운영체제 커널을 찾아 메모리에 적재 4. 커널이 적재되어 실행되면 시스템과 사용자에게 서비스 제공 시스템 데몬 = 커널이 실행되는 전체 기간 동안 실행되는 시스템 : 시스템 프로그램에 의해 커널 외부에서 제공 *시스템 프로그램 : 부팅할 때 메모리에 적재 : Linux에서 첫 번째 시스템 프로그램 - systemd (많은 데몬을 시작) 이 단계가 완료되면 시스템은 이벤트가 발생할 때까지 기다린다. 트랩 = 사용자 프로그램 특정 요청 때문에 ..

CI/CD 작업 중에 ssh 연결에 문제가 발생했다. ci/cd 글 내에서 정리하려했지만 트러블 슈팅을 정리하다보니 글이 길어졌다. ssh 연결 관련 에러를 겪고있을 누군가를 위해서 해결하는 과정을 따로 작성했다. 해당 글은 ssh 오류를 해결하는 전 과정이 담겨있으므로 해결방법만 알고싶다면 맨 끝 부분만 읽는 것을 권장한다. 에러 1. 서버에서 설정한 비밀번호가 맞지 않아서 Sorry, try again이 계속 나왔다. 해결 : 로컬 sudo 를 풀기 위한 비밀번호를 입력했다........... 즉, 터미널은 서버 비밀번호를 원한 것이 아니라 로컬 sudo를 풀기 위한 비밀번호가 필요했던 것이었다. -> 로컬 sudo 용 비밀번호인지 모르고 왜 안되는지 모르는채로 2시간을 버렸다😩 sudo 비밀번호라는..

단일 처리기 시스템 : 코어를 가진 메인 CPU가 하나 있을 경우 코어란? : 명령을 실행하고 로컬로 데이터를 저장하기 위한 레지스터를 포함하는 구성 요소 코어를 가진 하나의 메인 CPU는 프로세스 명령어를 포함하여 범용 명령어 세트를 실행할 수 있다. 단일 처리기 시스템에는 메인 CPU의 오버헤드를 줄이기 위해 다른 특수 목적 프로세서(처리기)가 존재한다. 이 처리기들은 프로세스를 실행하지 않고 제한된 명령어 집합을 실행한다. 운영체제는 보통 특수 목적 프로세서는 운영체제와 통신하지 않고 독립적으로 자신의 작업을 처리하지만, 가끔씩 운영체제는 이 처리기들이 수행할 다음 태스크에 대한 정보를 보내고 처리기들의 상태를 감시한다. 다중 처리기 시스템 : 단일 코어 CPU가 있는 프로세서가 두 개 이상있을 경..

1. 통상적인 PC 컴퓨터 시스템 구조 ⭐️ 현대의 컴퓨터 시스템 구성 : CPU + 장치 컨트롤러 + 구성요소(장치) -> 시스템 버스(주요 구성요소 사이의 통신경로)를 통해 연결되어있다. ⭐️ 장치 컨트롤러 : 특정 유형의 장치를 담당 : 둘 이상의 장치 연결 가능 : 일부 로컬 버퍼 저장소와 특수 목적 레지스터 집합을 관리 : CPU와 장치 컨트롤러는 병렬로 실행되어 메모리 사이클을 놓고 경쟁 ⭐️ 장치 드라이버 : 장치 컨트롤러의 작동을 잘 알고있고 나머지 운영체제에 장치에 대한 일관된 인터페이스를 제공 : 각 장치 컨트롤러마다 장치 드라이버 존재 2. 인터럽트 (Interrupts) 인터럽트는 운영체제와 하드웨어 상호 작용의 핵심 부분을 담당한다. 프로그램이 지체되지 않고 바로 넘어가기 위해 인..

💾 컴퓨터 시스템의 구성 💾 1. 하드웨어 ✅기본 계산용 자원 제공 ✅중앙 처리 장치(CPU), 메모리 및 입출력(I/O) 장치 2. 운영체제 ✅다양한 사용자를 위해 다양한 응용 프로그램 간의 하드웨어 사용을 제어하고 조절 3. 응용프로그램 ✅사용자의 계산 문제를 해결하기 위해 이들 자원이 어떻게 사용될 지 정의 ✅워드 프로세서, 스프레드 시트, 컴파일러, 웹브라우저 등 4. 사용자 ✅컴퓨터 시스템을 이용하는 사람 ✅응용프로그램을 실행하고자 하는 프로세스도 사용자가 될 수 있다. 사용자의 관점에서 운영체제의 역할 사용자의 관점은 인터페이스에 따라 달라진다. 사용자의 관점에서 봤을때 운영체제의 주 역할은 사용자가 수행하는 작업을 최대화하는 것이다. 따라서 운영체제는 대부분 사용자의 용이성을 위해 설계되고 ..

https://hasumang.tistory.com/89 [설치부터 응용까지] Java Spring Boot, Docker 활용해서 EC2에 배포하기 Docker를 활용해서 EC2에 간단하게 배포해보겠습니당! Docker 활용하니까 진짜 편하더라구요..! 사전 준비물은 EC2 인스턴스와 spring boot 프로젝트 파일입니당~ 순서 1. DockerHub 회원가입하기 & repository hasumang.tistory.com ⬆️이전 단계⬆️ EC2 인스턴스에 Docker를 활용하여 Spring 컨테이너를 만들었습니다. 그런데 로컬에서 이미지 푸시하고 EC2에서 이미지 풀 받아오는 과정을 자동화시키고 싶었습니다. GitHub Actions을 활용하면 push나 PR이 올라올 경우 바로 EC2가 갱신되..
Docker를 활용해서 EC2에 간단하게 배포해보겠습니당! Docker 활용하니까 진짜 편하더라구요..! 사전 준비물은 EC2 인스턴스와 spring boot 프로젝트 파일입니당~ 순서 1. DockerHub 회원가입하기 & repository 만들기 2. 본인 노트북 (Mac)에 Docker 다운로드하기 & 로그인 3. EC2에 Docker 다운로드하기 & 로그인 4. Spring boot에 Docker 파일 생성 5. 본인 노트북에서 Gradle 빌드하고 Docker Image 만들어서 push 하기 6. EC2에서 Docker pull 받기 1. DockerHub 회원가입하기 & repository 만들기 docker hub 홈페이지 들어가서 회원가입 하고 repository 만들면 됩니다! Use..
- Total
- Today
- Yesterday
- 공룡책
- 리눅스
- SQL
- 백준
- nodejs
- Signal
- 혼공단
- 교환학생
- JS
- 개발
- 운영체제
- C++
- 혼공단 9기
- 프로젝트
- googleapis
- 백엔드 개발
- 해커톤
- 개발일지
- 스페인 교환학생
- 혼공단 SQL
- 스페인
- AWS
- 혼공학습단
- 자바스크립트
- MySQL
- 혼공
- Linux
- JavaScript
- Process
- 깃 예제
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |