Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Port IPC::SysV (low priority)

Đang mở
#1,507 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
30/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
java, perl
Lĩnh vực
backend, operating-systems

Hướng nghiên cứu

The issue requires porting the IPC::SysV module to PerlOnJava using Java's FFM/native access. Start by examining the existing bytecode backend operation slots and compiler/interpreter scaffolding for semaphore, message-queue, and shared-memory operations, which currently throw UnsupportedOperationException. Review the Perl IPC::SysV module's API and the Java FFM documentation. Implement the constants, ftok, and the three IPC mechanisms (semaphores, shared memory, message queues) with proper error handling and cleanup. Write focused tests for each operation and validate with a dependent module like IPC::Pleather or IPC::Transit.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

area:cpan-port area:platform enhancement

Summary

Port IPC::SysV to PerlOnJava using Java FFM/native access on Unix platforms.

This is a low-priority ecosystem-enablement task. The current targeted
MetaCPAN lookup found 14 released runtime dependants, including
IPC::Pleather, IPC::Transit, IPC-Shm-Simple, SysV-SharedMem, and
Proc-Swarm; 2 were recent dependants. Recheck this count before prioritizing
implementation, and increase priority if the dependant population grows.

Scope

  • Provide the IPC::SysV constants and ftok behavior.
  • Implement System V semaphores: semget, semop, semctl, and the
    IPC::Semaphore support they require.
  • Implement shared memory: shmget, shmat, shmdt, shmctl, memread,
    and memwrite.
  • Implement message queues: msgget, msgsnd, msgrcv, and msgctl.
  • Preserve Perl-visible return values, errno/error behavior, cleanup, and
    concurrency semantics.
  • Define platform behavior explicitly: native Unix support first; Windows
    should either use a real compatible implementation or fail clearly if SysV
    IPC is unavailable.

Existing groundwork

The bytecode backend already has operation slots and compiler/interpreter
scaffolding for semaphore, message-queue, and shared-memory operations, but
the handlers currently throw UnsupportedOperationException.

Acceptance criteria

  • Focused project-owned tests cover constants, semaphore operations, shared
    memory, message queues, errors, cleanup, and cross-process visibility where
    supported.
  • Tests pass on both JVM and interpreter backends where applicable.
  • At least one dependent module is validated after the port.
  • Documentation records supported platforms and limitations.

Related: #1144 (pseudofork support may remain a separate requirement for
modules that depend on fork).

Ngôn ngữ chính
Perl
Star
64
Fork
6
Merge trung bình
5 giờ 38 phút
Pull request đã merge (30 ngày)
170

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của fglock/PerlOnJava

Tất cả issue của fglock/PerlOnJava

Issue tương tự

Thêm issue về Perl

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.