Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6335507
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 24, 20262026-05-24T18:52:19+00:00 2026-05-24T18:52:19+00:00

Can any one look into this and suggest me with an API. We have

  • 0

Can any one look into this and suggest me with an API.

We have APIs for a process which can create and/or attach a shared memory to its own process. But I don’t find an API to attach a shared memory to one process by other process(for e.g., process A should call one API(like shmat()) to attach the shared memory to process B).

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-24T18:52:21+00:00Added an answer on May 24, 2026 at 6:52 pm

    Shared memory doesn’t belong to any particular process (unless you create it with a private IPC_PRIVATE key). It belongs to the system.

    So, when you use shmget with a non-private key (and the IPC_CREAT flag), you will either create a shared memory block or attach to an existing one.

    You need a way for both processes to use the same IPC key and this is often done by using ftok which uses a file specification and an identifier to give you an IPC key for use in the shmget call (and other IPC type calls, such as msgget or semget).

    For example, in the programs pax1 and pax2, you may have a code segment like:

    int getMyShMem (void) {
        key_t mykey = ftok ("/var/pax.cfg", 0); // only one shm block so use id of 0
        if (mykey == (key_t)-1)                 // no go.
            return -1;
        return shmget (mykey, 1024, IPC_CREAT); // get (or make) a 1K block.
    }
    

    By having both processes use the same file specification and ID, they’ll get the same shared memory block.

    You can use different IDs to give you distinct shared memory blocks all based on the same file (you may, for example, want one for a configuration shared memory block and another for storing shared state).

    And, given that it’s your configuration file the IPC key is based on, the chances of other programs using it is minuscule (I think it may be zero but I’m not 100% sure).

    You can’t forcefully inject shared memory into a process from outside that process (well, you may be able to but it would be both dangerous and require all sorts of root-level permissions). That would break the protected process model and turn you system into something about as secure as MS-DOS 🙂

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Can any one tell me if its possible to create a stored procedure in
can any one provide me full 2 mapping file which implements cascade delete. measn
Can any one suggest good resources and practice exercises for Teradata and Business Objects
can any one suggest me, how to learn about custom controls in c# for
I have a database that consists of two tables, which look like this: users
Can any one tell me how can i replace the slideup function with fadeout('slow')
Can any one give me the difference between Itemsource and DataContext of Listview in
Can any one volunteer why the class below fails? ... src/model/user.rb:18: undefined method `set_schema'
Can any one of you help me in converting an windows dll file in
can any one help me with code that subtract 1 from a digit stored

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.