본문 바로가기

분류 전체보기140

2.1. 컴퓨터 시스템의 구조와 프로그램의 실행 SystemStructure & Program Execution 1 이화여자대학교 반효경 교수님의 운영체제 강의를 요약한 내용입니다. 틀린 부분이 있다면 지적해주시면 감사하겠습니다. 강의 링크 목표 운영체제를 설명하기 앞서서 알아본다. 컴퓨터 시스템에서 하드웨어가 어떻게 동작하는지? 프로그램들이 하드웨어 위에서 어떻게 동작하는지? 이번 내용은 여러 장치들의 설명을 합쳐나가는 내용이다보니 이해를 위해 반복되는 부분이 많다. 1. 컴퓨터 시스템의 구조 컴퓨터 내부를 기준으로 인풋과 아웃풋이 구분된다. CPU 쪽으로 데이터가 들어오는 것이 input, 반대가 output이다. 디스크 입장에서 데이터가 나가는 것이라도, input이다. 동작의 흐름과 그림에 있는 요소들에 대해 하나씩 알아보자. 매 항목을 살펴볼.. 2022. 7. 20.
1. 소개 Introduction to Operation System 1 이화여자대학교 반효경 교수님의 운영체제 강의를 요약한 내용입니다. 틀린 부분이 있다면 지적해주시면 감사하겠습니다. 강의 링크 1. 운영체제란? 계층의 위치를 잘 보자. 운영체제는 중간에 있다. 각종 소프트웨어를 편하게 사용하도록 하면서, 복잡한 하드웨어를 관리한다. 2. 운영 체제의 목적 2.1. 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공 운영체제는 동시에 독자적으로 컴퓨터가 수행하는 것처럼 보이게 한다. 하드웨어를 직접 다루는 복잡한 부분을 대행한다. ❗️CPU의 연산 속도가 너무 빠르기떄문에, 마치 여러 프로그램을 동시에 실행하거나 독자적으로 실행하는 것처럼 보일 뿐이다. 2.2. 자원을 효율적으로 관리 CPU, 메모리, I/O.. 2022. 7. 20.
자바 객체 타입 변수에 final의 이해 원시타입에 final을 붙여서 초기화하면 값을 변경할 수 없다. 다음과 같이 오류가 뜨는 것을 확인할 수 있다. 이런 사례가 눈에 익어서 그런지, 이전부터 보통 자바에서 변수에 final을 붙이면 변경불가로 알고 있었다. 그런데 일급컬렉션을 공부하면서 안정성을 위해 객체에 final로 지정해주는 경우를 보았고, 객체의 내부는 계속 변경되었다. 변경 불가인데 왜 변경이 되는지 의문이 들었다. 알고보니 원시타입과 객체에 final이 붙었을 경우는 다르게 생각해야 했다. final을 객체타입에 붙였을 경우, 객체 자체가 변경 불가능한 것은 아니다. 밑줄친 부분을 보면, "final 변수가 객체를 참조하는 경우, 객체의 상태는 변경될 수 있지만, 변수는 같은 객체를 참조한다." 라고 말하면서 배열에도 동일하게 .. 2022. 7. 2.
백준 2309번 - 일곱 난쟁이 (Java) https://www.acmicpc.net/problem/2309 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. www.acmicpc.net 코드 : import java.io.*; import java.util.Arrays; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new Bu.. 2022. 4. 13.
백준 2133번 - 타일 채우기 (Java) https://www.acmicpc.net/problem/2133 2133번: 타일 채우기 3×N 크기의 벽을 2×1, 1×2 크기의 타일로 채우는 경우의 수를 구해보자. www.acmicpc.net 코드 : import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { static Integer[] dp= new Integer[31]; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in.. 2022. 4. 12.
백준 17404 - RGB거리 2 (Java) https://www.acmicpc.net/problem/17404 17404번: RGB거리 2 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 코드 : import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static int[][] arr; static int[][] dp; public static vo.. 2022. 4. 12.