OS 운영체제
-
프로세스 생성OS 운영체제/Linux 2020. 3. 23. 15:37
이제 프로세스는 프로그램이 Load 과정을 통해 OS에게 프로세스 자신만의 메모리 자원을 할당 (4GB) 받아 해당 해당 자원에 프로그램이 가지고 있는 내용 (코드, 데이터)을 각 자원의 영역 즉 세그먼트에 알맞게 적재한 상태라는 것을 알 수 있다. 또한 해당 프로세스의 구조는 Text, Data, Heep, Stack 과 같은 세그먼트로 나뉘어 진것을 알 수 있다. 이번 포스트에서는 위에서 설명한 프로세스를 생성하는 방법에 대해서 다룰 것이다. + 개념 : pid_t 구조체 프로세스 고유의 ID 값을 담기위한 전용 구조체이다. pid_t pid ; 와 같이 선언할 경우 stack 메모리에 pid 라는 주소를 가진 메모리의 값을 프로세스 ID 값으로 해석 프로세스 생성 프로세스를 생성하는 방법은 커널에게..
-
프로세스란 ?OS 운영체제/Linux 2020. 3. 23. 13:28
프로세스 란 ? 프로세스는 동작중인 프로그램으로 정의하고 있으며 이때 프로그램이라는 것은 컴파일 된 바이너리 파일이 링크 되어 있는 실행 파일 ( 컴파일 과정을 거친 바이너리 명령어 And 수행에 필요한 자료들의 집합으로 구성 ) 을 의미하며 이렇게 생성된 실행 파일이 Disk 내부에 위치한 상태를 말한다. 이때 Disk 에 위치한 프로그램을 실행하게 되면 Load 과정을 통해 메모리에 적재되는데 바로 이 상태를 프로세스라고 한다. 즉 프로세스는 동작중인 프로그램이며, 커널로부터 할당받은 자신만의 자원( OS 는 32 bit CPU 기준 프로세스에게 4GB 메모리를 할당 )을 가지고, CPU가 기계어 명령들을 실행함에 따라 끊임없이 변화하는 동적인 존재이다. 프로세스의 구조 위에서 프로세스가 어떤것인지 ..
-
리눅스 옛날 버전에 4.7 이상 커널 컴파일 시 에러OS 운영체제/삽질 2020. 3. 22. 20:17
이전에 포스팅 했던 내용으로 오류가 해결되지 않았다.. /scripts/init-top/udev: line 14: can't create /sys/kernel/uevent-helper: Permission denied. Gave up waiting for root device. Common problems: - Boot args (cat /proc/cmdline) - Check root delay= (did the system wait long enough?) - Check root= (did the system wait for the right device?) - Missing modules (cat /proc/modules, ls /dev) ALERT! /dev/disk/by-uuid/6f... do..
-
리눅스 커널 컴파일 중 ( 비지 모드로 빠질경우 )OS 운영체제/삽질 2020. 3. 22. 19:24
최신 커널을 사용하기 위해 새로운 커널 소스를 받고 성공적으로 컴파일 한 뒤 install 까지 마친 후 Reboot 과정에서 오류가 생겼다. 부트로더 (GRUB) 에게 최신 버전 커널 (5.5.11) 을 선택한 뒤 부팅할 시 다음과 같이 비지모드로 빠져버린 것이다. + 부트로더란 ? 부트로더는 리눅스라는 운영체제가 부팅되기 까지 부팅의 전과정을 진행해 주는 부팅전문 프로그램이라고 생각하면 된다. 이때 형재 리눅스라는 운영체제에서 대부분 사용하는 부트로더 프로그램이 GRUB인 것이다. 따라서 해당 부트로더에게 " 어떤 커널로 실행시켜줘 ~ " 라고 말해준다면 해당 커널이 메모리로 적제되어 상주하게 된다. 이는 컴파일 후 설치과정에서 한가지를 빠뜨렸기 때문이다. 커널 크기 문제때문에 initrd 라는 것을..
-
운영체제란 ?OS 운영체제 2020. 2. 25. 19:52
운영체제 역할 컴퓨터 하드웨어는 스스로 할 수 있는 것이 없다. EX) 1. CPU: 각 프로그램이 얼마나 CPU를 사용할지를 결정할 수는 없다 2. Memory: 각 프로그램이 어느 주소에 저장되어야 하는지, 어느 정도의 메모리 공간을 확보해줘야 하는지 를 결정할 수는 없다 3. 저장매체(HDD, SSD): 어떻게, 어디에 저장할지는 결정할 수 없다. 4. 키보드/마우스: 스스로 표시할 수는 없음 따라서 운영체제라는 소프트웨어가 컴퓨터라는 하드웨어 자원을 효율적으로 관리, 작동 시켜 컴퓨터가 동작하게 된다. 즉 CPU, RAM, HDD, 콘솔장치 로는 사용자가 원하는 작업을 수행할 수 없으며 운영체제라는 중재자를 통해서 사용자는 컴퓨터에게 명령을 내릴 수 있는 것 이다. 다른 말로는 사용자와 컴퓨터간의..