inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

리눅스 입문 - 개념으로 탄탄히!!

동적라이브러리에 관한 질문

458

psh84

작성한 질문수 1

0

안녕하세요. 좋은 강의 만들어 주셔서 감사합니다.

동적라이브러리에 관하여 궁금한점이 있어 문의 드립니다.

동적라이브러리는 Program X이 실행이 될때 Shared libraries를 찾아 연결시켜 준다고 하셨습니다. Program Y도 동일하고요.

궁금한점은 우리가 보통 프로그램을 작성하면 전역변수/지역변수등으로 나뉘잖아요.

두 프로그램 모두 하나의 라이브러리를 공유한다면 shared libraries에 있는 전역변수도 같이 공유하게 되는건가요? 만약 프로그램 X 에서 전역변수A를 변경해버리면, 프로그램 Y는 의도치 않게 변경된 전역변수 A를 사용할 수 밖에 없지 않나요?

제가 글재주가 없어 질문내용이 정확히 전달되었는지 모르겠네요 ㅜ

제가 잘못 알고 있는건지 알려주시면 감사하겠습니다.

linux

답변 2

0

런잇(ProgCoach4U)

안녕하세요 psh84님

하나의 동적 라이브러리를 사용하는 두 개의 프로그램이 있다고 할 때, 이 두 프로그램은 서로 변수의 내용까지 공유하는 것은 아닙니다. 각 프로그램은 각각의 stack과 heap이라는 메모리 영역을 갖고 있는데요, 전역변수나 지역변수 모두 이 메모리 영역에 저장되기 때문에 두 프로그램의 변수가 서로 공유되는 일은 없습니다. 두 프로그램이 하나의 동적 라이브러리를 사용하는 것은 같은 코드를 사용한다는 의미이지 두 프로그램이 메모리를 공유하는 것은 아닙니다.

 

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴이에요. 동적 라이브러리에 대한 질문 감사합니다.

동적 라이브러리는 Program X와 Program Y처럼 여러 프로그램에서 공유하여 사용할 수 있는 라이브러리입니다. 동적 라이브러리를 사용할 때에는 해당 라이브러리의 함수를 호출하여 사용하게 됩니다.

전역 변수의 경우, 각 프로그램마다 독립적으로 할당되며 동적 라이브러리를 공유해도 서로 영향을 주지 않습니다. 프로그램 X에서 전역변수 A를 변경하더라도 프로그램 Y는 독립된 메모리 공간에서 작동하기 때문에 변경된 전역 변수 A를 사용하지 않게 됩니다.

따라서, 전역 변수를 공유하기 위해서는 동적 라이브러리 외의 다른 방법을 사용해야 합니다. 예를 들어, 파일이나 데이터베이스를 활용하여 정보를 공유하거나, 통신을 통해 데이터를 송수신하는 방법을 사용할 수 있습니다.

만약 다른 질문이 있으시다면 언제든지 물어보세요!요.

Ubuntu 설치 문제(중간에 설치가 멈춥니다)

0

277

3

VirtualBox ubuntu 24.04 설치 나름의 tip

1

185

3

제가 입문자입니다

0

85

2

터미널 창의 프롬프트가 너무 깁니다. 짧게 하고 싶습니다.

0

199

3

core 생성이 안됩니다.

0

102

2

cd /home/pig 권한 거부가 발생합니다.

0

73

2

강의에 관한 잘문은 아니고 궁금한게 있어서 여쭙고자 합니다.

0

71

2

리눅스 가상머신

0

84

2

설치 속도가 심각하게 느립니다

0

129

2

mv /tmp/pineapple . 명령어 입력했는데 다음과 같이 나타납니다.

0

66

2

cal 이라고 치니까 찾을 수 없는 명령어라고 뜹니다.

0

93

2

계속 검은 화면이 뜨는 이유가 무엇인가요?

0

420

2

그래픽 컨트롤러를 VBoxVGA로 바꾸었는데 화면이 안뜹니다.

0

166

2

우분투 설치가 안됩니다.

0

361

2

sudo 권한

0

301

4

파일 권한 실습 관련 질문

0

173

1

강의내용 관련 질문입니다

0

171

2

기본 명령어 내용까지 들으려고 하는데요

0

132

1

텍스트 에디터 질문

0

143

2

수업자료 출력해서 강의 들어야 하나요?

0

243

2

소프트링크 질문

0

139

2

강의에 수학과 관련된 내용이 있나요?

0

116

1

라즈베리파이를 이용한 학습 문의

0

122

2

안녕하세여 제가 뭘 놓친 부분이 있을까요?

0

217

2