CS/computer science7 [CS] 디자인 패턴 Design Pattern - 1 - ** 프리온보딩 강의 및 개인 공부를 하면서 정리한 글로 부족한 부분이 있을 수 있습니다. 예쁜말 지적 환영 객체지향은 객체를 중심으로 프로그래밍을 하는 프로그래밍 패러다임을 뜻한다. 객체지향 프로그래밍에서 객체들은 능동적인 존재가 된다. 객체들은 공동체를 만들어 서로 상호작용하며 기능을 제공하게 되었으며, 그 상호작용은 ‘메세지’로 이루어진다. 객체 지향 세계에서 독점은 없다. 필요한 기능들을 쪼개어 객체에 분배하고 객체 간의 적절한 협력을 이루는 것이 application의 목표이기에, 혼자 모든 것을 가지고있는 객체는 없다. 마치 맥도널드 시스템처럼 주문 / 패티 / 햄버거 조립 / 감자튀김 담당으로 기능이 쪼개져있게 된 것이다. 객체지향에서의 협력과 책임, 역할을 조금 더 자세히 살펴보자. 협력 .. 2024. 2. 16. [기술면접] cs 문답 | CPU process, 관계형DB KEY 💡 CPU의 동작 + 하드웨어 살짝 프로그램이 실행되는 과정: 프로그램이 시작되면 운영체제가 새로운 프로세스를 만들고 로더Loader로 저장장치(HHD)에서 메모리로 데이터를 복사해 가져온다. (메모리:복사본, HHD:원본) 이후 운영체제는 CPU에게 프로세스의 제어권을 넘긴다. PC(program counter)가 CPU에게 전달되고 IR(기계어 코드)를 실행시킨다 CPU 내의 레지스터(메모리)의 기능(PC, IR, SP, GPR, FG) 이 작동하게 되며, 운영체제로 부터 오는 모든 요청을 Fetch-Decode-Execute의 과정을 무한 반복하며 처리하게 된다. Fetch : 메모리에서 코드를 가져와서 명령어 레지스터에 입력 Decode : CPU의 제어장치(Control Unit)가 명령어를 해.. 2023. 8. 25. [기술면접] CS 문답 | os : memory 💡 paging에 대해 설명하시오 페이징 기법은 메모리 관리기법이다 memory 분할의 역사.. 메모리 분할 방법의 필요성: 메인 메모리에는 다양한 프로그램, 컴퓨터 운영체제가 함께 저장된다. 많은 사람이 사용하는 서버의 경우는 다양한 유저의 프로세스도 하나의 메모리에 저장해야한다. 이러한 상황에서 컴퓨터를 잘 사용하기 위해 가능한 한 가장 효율적인 방법으로 메인메모리를 분할하고 할당해야했다. 연속메모리 할당..(지금방식이랑은 다름) contiguous allocation과 MMU contiguous allocation 연속 메모리 할당 Logical address가 연속적이면 physical address도 연속적으로 배치된다. 는 개념 MMU Memory management unit MMU는 CPU코.. 2023. 8. 24. [기술면접] CS 문답 | 멀티프로세스 상세 💡 Multi process환경에서 process간에 데이터를 어떻게 주고받는지 설명하시오 프로세스는 독립적인 주소 공간을 가지고 있어서 다른 프로세스와 데이터를 주고 받을 수 없다. 멀티 프로세스 환경에서는 이런 문제를 해결하기 위해 IPC(Inter Process Communication)을 제공한다. IPC는 프로세스 간 통신이 가능하게 해주며 크게는 공유 메모리와 메시지 전달 방식으로 나뉘고 메시지 전달 방식은 파이프, 소켓, 메시지 큐 등이 있다. 공유 메모리(Shared Memory) 공유 메모리 방식은 프로세스들이 주소 공간의 일부를 공유하고 공유된 메모리 영역에 read write하면서 통신하는 방식이다. 메모리는 스택-힙-데이터-코드 공유 메모리를 할당 받으면 스택-힙-데이터-공유메모리-.. 2023. 8. 23. 이전 1 2 다음