본문 바로가기

전체 글

(92)
[Spring Framework] 스프링 프레임워크 Spring Framework - 모든 종류의 배포 플랫폼에서 최신 Java 기반 엔터프라이즈 애플리케이션을 위한 포괄적인 프로그래밍 및 구성 모델을 제공 - 애플리케이션 수준의 인프라 지원 - 동적인 웹 사이트를 개발에 용이 MVC pattern - MVC 패턴은 애플리케이션을 개발할 때 사용하는 디자인 패턴 - 애플리케이션의 개발 영역을 MVC (Model, View, Controller)로 구분하여 각 역할에 맞게 코드를 작성하는 개 발 방식 - MVC 패턴을 도입하면서 UI 영역과 도메인(비즈니스 로직) 영역으로 구분되어 서로에게 영향을 주지 않으면서 개발과 유지보수가 가능 - MVC에서 모델은 애플리케이션의 정보(데이터)를 나타내며, View는 텍스트, 체크박스 항목 등과 같은 사용자 인터페이스..
[컴퓨터 공학] Thread (스레드) 1. Thread - 하나의 프로세스에 여러개의 스레드 생성 가능 - 스레드들은 동시에 실행 가능 - 프로세스 안에 있으므로, 프로세스의 데이터를 모두 접근 가능 (Light Weight Process) - 각 개별적인 Stack 을 갖고 있음 - 성능개선이 가능하며 사용자에 대한 응답성 향상 - IPC를 별도 사용하지 않아 자원 공유 효율이 좋음 - 스레드 중 한 스레드만 문제가 있어도 전체 프로세스가 영향을 받음 - 스레드를 많이 생성하면 Context Switching도 빈번해져서 성능이 저하될 수 있음 - 동기화 이슈로 비정상적으로 동작할 수 있음 Sychronization Issue (동기화 이슈) - 여러 스레드가 동일한 자원 (데이터) 접근시 작업들 사이에 실행시기를 맞추는 부분에서 이슈 발..
[컴퓨터 공학] 스케줄링 알고리즘 1. Scheduling Algorithm - 언제 어떤 프로세스에 CPU를 할당할지 결정하는 작업 2. Non-Preemptive SJF (Shortest Job First) - 최단 작업 우선 스케줄링은 평균 대기 시간을 최소화하기 위해 CPU 점유 시간이 가장 짧은 프로세스에 CPU를 먼저 할당 - 평균 대기시간을 최소로 만드는 걸 최적으로 두고 있는 알고리즘 - 요구 시간이 긴 프로세스가 요구 시간이 짧은 프로세스에게 항상 양보되어 기아 상태가 발생할 수 있음 - 대기 상태에 있는 프로세스의 요구시간에 대한 정확한 자료를 얻기 어려움. - 단기 스케줄링 보다는 장기 스케줄링에 유리 FCFS (First Come First Serve) - 선입 선처리 스케줄링은 먼저 자원 사용을 요청한 프로세스에게..