memory-mapped-file

경량 hps-to-fpga 브리지(또는 모든 브리지)에 연결된 주변 장치에 액세스하려고 할 때 Linux가 정지되는 이유는 무엇입니까?
memory-mapped-file

경량 hps-to-fpga 브리지(또는 모든 브리지)에 연결된 주변 장치에 액세스하려고 할 때 Linux가 정지되는 이유는 무엇입니까?

저는 Altera DE1-SoC 개발 보드를 8개월간 작업해왔습니다. 제가 개발 중인 시스템에는 Cyclone V FPGA 칩, 특히 5CSEMA5F31C6N이 포함되어 있습니다. 칩에서 임베디드 Linux 운영 체제를 실행합니다. 모든 것이 잘 진행되고 있으며 개발이 진행 중입니다. 2주 전에 회사의 하드웨어 엔지니어들이 새로운 맞춤형 보드를 조립했습니다. 디자인과 구성 요소는 기본적으로 개발 보드와 유사합니다. 모든 HPS 관련 핀은 동일한 방식으로 연결되어 있지만 주요 차이점은 기본 콘솔 포트가...

Admin

두 프로세스가 파일(메모리 매핑 파일 또는 /dev/shm 파일)을 사용하지 않고 동일한 공유 메모리를 사용할 수 있습니까?
memory-mapped-file

두 프로세스가 파일(메모리 매핑 파일 또는 /dev/shm 파일)을 사용하지 않고 동일한 공유 메모리를 사용할 수 있습니까?

현재 두 개의 서로 다른 프로세스에 동일한 공유 메모리를 제공하는 방법을 아는 유일한 방법은 메모리 매핑된 파일을 통하는 것입니다. 즉, 두 프로세스 모두 동일한 메모리 매핑된 파일을 열고 그 파일에서 쓰기/읽기이기 때문에 궁금합니다. OS가 디스크와 메모리를 교환해야 하기 때문에 이는 불이익/단점이 있습니다. 이것이 어리석은 질문이라면 미리 사과드립니다. 그러나 파일에 의해 지원되지 않고 프로세스 간에 순전히 공유 메모리가 있습니까? 그렇다면 프로세스는 메모리 매핑 파일이나 /dev/shm 파일을 ...

Admin

Linux 환경에서 C++의 메모리 매핑을 이해해 보세요.
memory-mapped-file

Linux 환경에서 C++의 메모리 매핑을 이해해 보세요.

내 임무는 메모리 맵을 탐색하고 이를 활용할 수 있는지 확인하는 것입니다. 저는 이 개념과 코딩 방법을 이해하려고 노력하고 있습니다. 아래 비디오와 블로그 게시물의 코드를 시험해 보았지만 쉽게 재현할 수 있도록 여기에서도 단계를 반복할 것입니다. Linux 시스템에서 C++(gcc 버전 11.2.0)를 사용하고 있습니다. https://www.youtube.com/watch?v=m7E9piHcfr4 https://bertvandenbroucke.netlify.app/2019/12/08/memory-m...

Admin

메모리 매핑 파일을 사용할 때 데이터 전송 경로는 무엇입니까?
memory-mapped-file

메모리 매핑 파일을 사용할 때 데이터 전송 경로는 무엇입니까?

파일에서 read()/write()를 사용하는 것과 mmap()을 사용하는 것 사이에 데이터 전송 경로에 차이가 있나요? "커널"은 "커널"을 의미합니다https://stackoverflow.com/a/41419353? mmap에는 다음의 파일 데이터 사본이 필요하지 않습니다.핵심사용자 공간으로. read()가 파일에서 커널 공간의 버퍼로 데이터를 복사한 다음 커널 버퍼에서 사용자 공간의 버퍼로 데이터를 복사하는 것이 맞습니까? 파일에서 mmap()이 호출되면 중간에 아무 것도 없이 가상 메모리 ...

Admin

큰 코드 세그먼트를 처리하기 위한 메모리 매핑
memory-mapped-file

큰 코드 세그먼트를 처리하기 위한 메모리 매핑

pmap나는 메모리 매핑이 어떻게 이루어지는지 보여주는 프로세스를 알고 있습니다 . 예를 들어, pmap 출력의 첫 번째 줄은 프로세스 실행 파일의 텍스트 세그먼트에 대한 메모리 맵을 보여줍니다. 매우 큰 실행 파일이 있고 코드 크기가 크다고 가정해 보겠습니다. 작은 텍스트 세그먼트(작은 실행 파일)의 경우 pmamp는 400000 - 401000 - 4096 B - 4 KiB매핑된 텍스트 세그먼트를 표시합니다. (1) 텍스트 세그먼트가 정말 큰 경우 어떻게 매핑됩니까? (2) 코드 실행이 진...

Admin

/dev/mem의 부분 메모리 매핑 허용
memory-mapped-file

/dev/mem의 부분 메모리 매핑 허용

단일 칩에 ARM-Cortex-A9 CPU와 Cyclone V FPGA가 포함된 SoC-FPGA(DE0-nano-soc)가 있습니다. CPU는 1GB의 DDR3 메모리에 액세스할 수 있지만 FPGA도 해당 메모리에 액세스하여 데이터를 공유할 수 있습니다. 이제 부팅 매개변수를 사용하여 총 RAM 중 900M만 볼 수 있도록 Linux를 구성했습니다 mem=900M. 이렇게 하면 Linux가 건드리지 않는 RAM이 있고 이를 사용하여 FPGA와 통신할 수 있습니다. RAM에 쓰는 부분을 사용하고 싶습...

Admin

메모리 매핑 I/O는 운영 체제에서 내부적으로만 사용되며 Linux의 프로그래머는 노출 및 사용하지 않습니까?
memory-mapped-file

메모리 매핑 I/O는 운영 체제에서 내부적으로만 사용되며 Linux의 프로그래머는 노출 및 사용하지 않습니까?

운영 체제 개념에서 메모리 매핑 파일과 메모리 매핑 I/O는 서로 다른 두 가지입니다. 메모리 매핑된 I/O에 대해서는 아래를 참조하세요. 메모리 매핑 파일을 사용하려면 mmap(). 메모리 매핑된 I/O를 사용하려면 어떤 기능을 사용할 수 있나요? 메모리 매핑 I/O는 운영 체제에서 내부적으로만 사용되며 Linux의 프로그래머는 노출 및 사용하지 않습니까? 감사해요. I/O의 경우 섹션 1.2.1에 설명된 대로 각 I/O 컨트롤러에는 전송되는 명령과 데이터를 보관하는 레지스터가 포함되어...

Admin

공유 메모리 매핑 파일과 공유 메모리 영역은 서로 기반으로 구현되어 있나요?
memory-mapped-file

공유 메모리 매핑 파일과 공유 메모리 영역은 서로 기반으로 구현되어 있나요?

공유 메모리 매핑 파일과 공유 메모리 영역은 서로 기반으로 구현되어 있나요? 다음 두 문장은 이런 말을 하는 것 같고, 제가 보기엔 닭이냐 달걀이냐에 대한 질문인 것 같습니다. 다음 운영 체제 개념은 공유 메모리 매핑 파일을 소개합니다. 여러 프로세스가 파일 내용을 보관하는 동일한 물리적 메모리 영역을 공유하여 동일한 파일을 공유합니까? 여러 프로세스가 동시에 동일한 파일을 매핑할 수 있습니다., 데이터 공유를 허용합니다. 모든 프로세스의 쓰기는 가상 메모리의 데이터를 수정하며 파일의 동일한...

Admin