Can Access Fault Exceptions of the MC68040 caused by internal access faults occur in normal situations?Why is the Amiga ROM at a high memory location, and RAM in low memory?Were people building CPUs out of TTL logic prior to the 4004, 8080 and the 6800?How did the Apple II forward binary instructions to the Z80 software card with CPM?How did the original Apple Macintosh and Atari ST use protected mode?Can a retro-computer be a useful way to learn computer-architecture fundamentals?68000 and memory access speedWhat limited the use of the Z8000 (vs. 68K and 8086) CPU for 16-bit computers?What was Burst Mode on the 68030 and why didn't the A2630 support it?Can anyone identify this unknown 1988 PC card from The Palantir Corporation?

Solving Equations with HeavisideTheta Functions

Phrase origin: "You ain't got to go home but you got to get out of here."

Need SQL Server VLAN advice.. is it best practice to have all SQL Servers under 1 VLAN/network zone?

How is /a/ pronounced before n/m in French?

Why is the saxophone not common in classical repertoire?

Are there advantages in writing by hand over typing out a story?

Go function to test whether a file exists

What verb goes with "coup"?

Can I deep fry food in butter instead of vegetable oil?

"Best practices" for formulating MIPs

Should I cheat if the majority does it?

HTTPmodule or similar for SharePoint online

gzip compress a local folder and extract it to remote server

Which high-degree derivatives play an essential role?

Birthday girl's casino game

How can I know (without going to the station) if RATP is offering the Anti Pollution tickets?

Story about two rival crews terraforming a planet

Can you use a reaction to affect initiative rolls?

What does "another" mean in this case?

Old story where computer expert digitally animates The Lord of the Rings

What is meaning of 4 letter acronyms in Roman names like Titus Flavius T. f. T. n. Sabinus?

What instances can be solved today by modern solvers (pure LP)?

Wrong Output in self defined Quaternionic Multiplication

How might boat designs change in order to allow them to be pulled by dragons?



Can Access Fault Exceptions of the MC68040 caused by internal access faults occur in normal situations?


Why is the Amiga ROM at a high memory location, and RAM in low memory?Were people building CPUs out of TTL logic prior to the 4004, 8080 and the 6800?How did the Apple II forward binary instructions to the Z80 software card with CPM?How did the original Apple Macintosh and Atari ST use protected mode?Can a retro-computer be a useful way to learn computer-architecture fundamentals?68000 and memory access speedWhat limited the use of the Z8000 (vs. 68K and 8086) CPU for 16-bit computers?What was Burst Mode on the 68030 and why didn't the A2630 support it?Can anyone identify this unknown 1988 PC card from The Palantir Corporation?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








6















Note: I only have the MC68040 USER'S MANUAL at hand.



In chapter 8.2.1 "Access Fault Exceptions", it is stated that those exceptions can be caused by Bus Error or Internal Access Faults and by that seem to be a replacement of Bus Error (only) for devices without Caches.



Access Fault Exception caused by Bus Error seem clear to me. My question is related to Internal Access Faults. Consider the Statement in the USER'S MANUAL:




Internal Access faults must be corrected to complete execution of the current context.




(The remainder of the section exceeds my expertise)



It seems to me that this statement may be interpreted to mean that Internal Access Faults may happen normally even in a correct program as a side effect of the cache mechanism. In this interpretation, every operating system utilizing MC68040 requires corrective actions (in the corresponding exception handler) in order to continue a program after the exception.



Can this be true?










share|improve this question




























    6















    Note: I only have the MC68040 USER'S MANUAL at hand.



    In chapter 8.2.1 "Access Fault Exceptions", it is stated that those exceptions can be caused by Bus Error or Internal Access Faults and by that seem to be a replacement of Bus Error (only) for devices without Caches.



    Access Fault Exception caused by Bus Error seem clear to me. My question is related to Internal Access Faults. Consider the Statement in the USER'S MANUAL:




    Internal Access faults must be corrected to complete execution of the current context.




    (The remainder of the section exceeds my expertise)



    It seems to me that this statement may be interpreted to mean that Internal Access Faults may happen normally even in a correct program as a side effect of the cache mechanism. In this interpretation, every operating system utilizing MC68040 requires corrective actions (in the corresponding exception handler) in order to continue a program after the exception.



    Can this be true?










    share|improve this question
























      6












      6








      6








      Note: I only have the MC68040 USER'S MANUAL at hand.



      In chapter 8.2.1 "Access Fault Exceptions", it is stated that those exceptions can be caused by Bus Error or Internal Access Faults and by that seem to be a replacement of Bus Error (only) for devices without Caches.



      Access Fault Exception caused by Bus Error seem clear to me. My question is related to Internal Access Faults. Consider the Statement in the USER'S MANUAL:




      Internal Access faults must be corrected to complete execution of the current context.




      (The remainder of the section exceeds my expertise)



      It seems to me that this statement may be interpreted to mean that Internal Access Faults may happen normally even in a correct program as a side effect of the cache mechanism. In this interpretation, every operating system utilizing MC68040 requires corrective actions (in the corresponding exception handler) in order to continue a program after the exception.



      Can this be true?










      share|improve this question














      Note: I only have the MC68040 USER'S MANUAL at hand.



      In chapter 8.2.1 "Access Fault Exceptions", it is stated that those exceptions can be caused by Bus Error or Internal Access Faults and by that seem to be a replacement of Bus Error (only) for devices without Caches.



      Access Fault Exception caused by Bus Error seem clear to me. My question is related to Internal Access Faults. Consider the Statement in the USER'S MANUAL:




      Internal Access faults must be corrected to complete execution of the current context.




      (The remainder of the section exceeds my expertise)



      It seems to me that this statement may be interpreted to mean that Internal Access Faults may happen normally even in a correct program as a side effect of the cache mechanism. In this interpretation, every operating system utilizing MC68040 requires corrective actions (in the corresponding exception handler) in order to continue a program after the exception.



      Can this be true?







      motorola-68000 motorola-680x0






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Jun 24 at 15:12









      Hartmut BraunHartmut Braun

      334 bronze badges




      334 bronze badges




















          2 Answers
          2






          active

          oldest

          votes


















          1















          It seems to me that this statement may be interpreted to mean that Internal Access Faults may happen normally even in a correct program as a side effect of the cache mechanism.




          I just downloaded the manual:



          If I interpret it correctly, I would say: No



          We have to distinguish between cases 1-3 and case 4 described in the manual:



          If I understand correctly, cases 1-3 happen if the external hardware (memory) reports some error (bus error?) while being accessed.



          However, RAM and ROM normally should not report errors. And you should better not access address regions not containing RAM or ROM (such as peripheral devices) with the cache enabled. So if such a memory region is accessed using the cache enabled, I would not talk about "a correct program" (while "program" includes the OS).



          (And yes: Accessing peripheral devices using the cache enabled will definitely lead to unwanted side effects!)



          As Erik Eidt already wrote in his answer, Case 4 will definitely happen in OSs that support memory swapping (virtual memory) and similar features. However, this is not a "side effect" of caching but an intended feature of the OS.



          Case 4 may also happen if the MMU tries to read some "configuration information" from the memory and the memory reports an error. But (just like in cases 1-3) the configuration information for the MMU should be stored in RAM only and RAM normally does not report errors...






          share|improve this answer























          • I checked the system at hand: MMU is disabled, except that cacheable and non-cacheable memory areas are defined, the latter one includes the peripheral devices. So, in this situation, only Bus error is a possible source for the access fault exception. Thanks a lot!

            – Hartmut Braun
            Jun 25 at 11:53


















          8
















          An internal access fault also occurs when the data or instruction MMU detects that a
          successful address translation is not possible because the page is write protected,
          supervisor only, or nonresident.





          (My emphasis.)



          So, one major case of an internal access fault is an MMU detected condition, where the page is not resident, i.e. a page fault.




          In this interpretation, every operating system utilizing MC68040 requires corrective actions (in the corresponding exception handler) in order to continue a program after the exception.




          So, yes the operating system would either have to handle page faults as part of its virtual memory management, or disable the MMU, or configure the MMU so that all pages are resident.



          Normally writing to a write-protected page is a fault in the program, which should then be aborted; however, in some environments, a page might be write protected in order to intervene on writes — for example, a debugger might mark a page write protected in order to locate a particular write to that page.  Upon faulting for these a debugger could accomplish the write, and continue the program; a garbage collector might want to intervene on writes so as to track when they occur concurrently with a major collection cycle.




          As far as the other causes of internal access fault, here's what I speculate based on reading the text:



          Board design: the board can dynamically disable cache operation forcing the CPU to bypass the cache and use main memory.  It seems possible that a dual CPU board or some configuration of other system devices might do this to signal a CPU about shared memory updates.



          Apparently also, the board might send signals that cause the CPU to raise an internal access fault.  This might be used to support emulation, where the processor is used to run one (or several) instruction(s) and then suspend execution returning back to the emulator to observe or intervene.






          share|improve this answer























          • Thanks. I think on the platform at hand the MMU is deactivated but I have to check this. The caches are enabled. What confuses me is the mixture of bus error, which to me is clearly an error situation, with something that seems to be a rather normal situation, or even used to implement functionality.

            – Hartmut Braun
            Jun 24 at 17:01











          • I think also on a fork it's not unusual to provide the same pages to both processes as read only, and then perform a selective copying only if either process writes.

            – Tommy
            Jun 24 at 17:14






          • 2





            @Tommy, yes thx, a good example: copy on write uses write-protection fault but is continuable.

            – Erik Eidt
            Jun 24 at 18:52











          • Another real-world example: on Windows, there is a "guard page" just above the top of the stack. This allows the stack to grow on demand.

            – MSalters
            Jun 25 at 10:18













          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "648"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          noCode: true, onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fretrocomputing.stackexchange.com%2fquestions%2f11457%2fcan-access-fault-exceptions-of-the-mc68040-caused-by-internal-access-faults-occu%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          2 Answers
          2






          active

          oldest

          votes








          2 Answers
          2






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1















          It seems to me that this statement may be interpreted to mean that Internal Access Faults may happen normally even in a correct program as a side effect of the cache mechanism.




          I just downloaded the manual:



          If I interpret it correctly, I would say: No



          We have to distinguish between cases 1-3 and case 4 described in the manual:



          If I understand correctly, cases 1-3 happen if the external hardware (memory) reports some error (bus error?) while being accessed.



          However, RAM and ROM normally should not report errors. And you should better not access address regions not containing RAM or ROM (such as peripheral devices) with the cache enabled. So if such a memory region is accessed using the cache enabled, I would not talk about "a correct program" (while "program" includes the OS).



          (And yes: Accessing peripheral devices using the cache enabled will definitely lead to unwanted side effects!)



          As Erik Eidt already wrote in his answer, Case 4 will definitely happen in OSs that support memory swapping (virtual memory) and similar features. However, this is not a "side effect" of caching but an intended feature of the OS.



          Case 4 may also happen if the MMU tries to read some "configuration information" from the memory and the memory reports an error. But (just like in cases 1-3) the configuration information for the MMU should be stored in RAM only and RAM normally does not report errors...






          share|improve this answer























          • I checked the system at hand: MMU is disabled, except that cacheable and non-cacheable memory areas are defined, the latter one includes the peripheral devices. So, in this situation, only Bus error is a possible source for the access fault exception. Thanks a lot!

            – Hartmut Braun
            Jun 25 at 11:53















          1















          It seems to me that this statement may be interpreted to mean that Internal Access Faults may happen normally even in a correct program as a side effect of the cache mechanism.




          I just downloaded the manual:



          If I interpret it correctly, I would say: No



          We have to distinguish between cases 1-3 and case 4 described in the manual:



          If I understand correctly, cases 1-3 happen if the external hardware (memory) reports some error (bus error?) while being accessed.



          However, RAM and ROM normally should not report errors. And you should better not access address regions not containing RAM or ROM (such as peripheral devices) with the cache enabled. So if such a memory region is accessed using the cache enabled, I would not talk about "a correct program" (while "program" includes the OS).



          (And yes: Accessing peripheral devices using the cache enabled will definitely lead to unwanted side effects!)



          As Erik Eidt already wrote in his answer, Case 4 will definitely happen in OSs that support memory swapping (virtual memory) and similar features. However, this is not a "side effect" of caching but an intended feature of the OS.



          Case 4 may also happen if the MMU tries to read some "configuration information" from the memory and the memory reports an error. But (just like in cases 1-3) the configuration information for the MMU should be stored in RAM only and RAM normally does not report errors...






          share|improve this answer























          • I checked the system at hand: MMU is disabled, except that cacheable and non-cacheable memory areas are defined, the latter one includes the peripheral devices. So, in this situation, only Bus error is a possible source for the access fault exception. Thanks a lot!

            – Hartmut Braun
            Jun 25 at 11:53













          1












          1








          1








          It seems to me that this statement may be interpreted to mean that Internal Access Faults may happen normally even in a correct program as a side effect of the cache mechanism.




          I just downloaded the manual:



          If I interpret it correctly, I would say: No



          We have to distinguish between cases 1-3 and case 4 described in the manual:



          If I understand correctly, cases 1-3 happen if the external hardware (memory) reports some error (bus error?) while being accessed.



          However, RAM and ROM normally should not report errors. And you should better not access address regions not containing RAM or ROM (such as peripheral devices) with the cache enabled. So if such a memory region is accessed using the cache enabled, I would not talk about "a correct program" (while "program" includes the OS).



          (And yes: Accessing peripheral devices using the cache enabled will definitely lead to unwanted side effects!)



          As Erik Eidt already wrote in his answer, Case 4 will definitely happen in OSs that support memory swapping (virtual memory) and similar features. However, this is not a "side effect" of caching but an intended feature of the OS.



          Case 4 may also happen if the MMU tries to read some "configuration information" from the memory and the memory reports an error. But (just like in cases 1-3) the configuration information for the MMU should be stored in RAM only and RAM normally does not report errors...






          share|improve this answer














          It seems to me that this statement may be interpreted to mean that Internal Access Faults may happen normally even in a correct program as a side effect of the cache mechanism.




          I just downloaded the manual:



          If I interpret it correctly, I would say: No



          We have to distinguish between cases 1-3 and case 4 described in the manual:



          If I understand correctly, cases 1-3 happen if the external hardware (memory) reports some error (bus error?) while being accessed.



          However, RAM and ROM normally should not report errors. And you should better not access address regions not containing RAM or ROM (such as peripheral devices) with the cache enabled. So if such a memory region is accessed using the cache enabled, I would not talk about "a correct program" (while "program" includes the OS).



          (And yes: Accessing peripheral devices using the cache enabled will definitely lead to unwanted side effects!)



          As Erik Eidt already wrote in his answer, Case 4 will definitely happen in OSs that support memory swapping (virtual memory) and similar features. However, this is not a "side effect" of caching but an intended feature of the OS.



          Case 4 may also happen if the MMU tries to read some "configuration information" from the memory and the memory reports an error. But (just like in cases 1-3) the configuration information for the MMU should be stored in RAM only and RAM normally does not report errors...







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Jun 24 at 20:44









          Martin RosenauMartin Rosenau

          1,1961 gold badge4 silver badges9 bronze badges




          1,1961 gold badge4 silver badges9 bronze badges












          • I checked the system at hand: MMU is disabled, except that cacheable and non-cacheable memory areas are defined, the latter one includes the peripheral devices. So, in this situation, only Bus error is a possible source for the access fault exception. Thanks a lot!

            – Hartmut Braun
            Jun 25 at 11:53

















          • I checked the system at hand: MMU is disabled, except that cacheable and non-cacheable memory areas are defined, the latter one includes the peripheral devices. So, in this situation, only Bus error is a possible source for the access fault exception. Thanks a lot!

            – Hartmut Braun
            Jun 25 at 11:53
















          I checked the system at hand: MMU is disabled, except that cacheable and non-cacheable memory areas are defined, the latter one includes the peripheral devices. So, in this situation, only Bus error is a possible source for the access fault exception. Thanks a lot!

          – Hartmut Braun
          Jun 25 at 11:53





          I checked the system at hand: MMU is disabled, except that cacheable and non-cacheable memory areas are defined, the latter one includes the peripheral devices. So, in this situation, only Bus error is a possible source for the access fault exception. Thanks a lot!

          – Hartmut Braun
          Jun 25 at 11:53













          8
















          An internal access fault also occurs when the data or instruction MMU detects that a
          successful address translation is not possible because the page is write protected,
          supervisor only, or nonresident.





          (My emphasis.)



          So, one major case of an internal access fault is an MMU detected condition, where the page is not resident, i.e. a page fault.




          In this interpretation, every operating system utilizing MC68040 requires corrective actions (in the corresponding exception handler) in order to continue a program after the exception.




          So, yes the operating system would either have to handle page faults as part of its virtual memory management, or disable the MMU, or configure the MMU so that all pages are resident.



          Normally writing to a write-protected page is a fault in the program, which should then be aborted; however, in some environments, a page might be write protected in order to intervene on writes — for example, a debugger might mark a page write protected in order to locate a particular write to that page.  Upon faulting for these a debugger could accomplish the write, and continue the program; a garbage collector might want to intervene on writes so as to track when they occur concurrently with a major collection cycle.




          As far as the other causes of internal access fault, here's what I speculate based on reading the text:



          Board design: the board can dynamically disable cache operation forcing the CPU to bypass the cache and use main memory.  It seems possible that a dual CPU board or some configuration of other system devices might do this to signal a CPU about shared memory updates.



          Apparently also, the board might send signals that cause the CPU to raise an internal access fault.  This might be used to support emulation, where the processor is used to run one (or several) instruction(s) and then suspend execution returning back to the emulator to observe or intervene.






          share|improve this answer























          • Thanks. I think on the platform at hand the MMU is deactivated but I have to check this. The caches are enabled. What confuses me is the mixture of bus error, which to me is clearly an error situation, with something that seems to be a rather normal situation, or even used to implement functionality.

            – Hartmut Braun
            Jun 24 at 17:01











          • I think also on a fork it's not unusual to provide the same pages to both processes as read only, and then perform a selective copying only if either process writes.

            – Tommy
            Jun 24 at 17:14






          • 2





            @Tommy, yes thx, a good example: copy on write uses write-protection fault but is continuable.

            – Erik Eidt
            Jun 24 at 18:52











          • Another real-world example: on Windows, there is a "guard page" just above the top of the stack. This allows the stack to grow on demand.

            – MSalters
            Jun 25 at 10:18















          8
















          An internal access fault also occurs when the data or instruction MMU detects that a
          successful address translation is not possible because the page is write protected,
          supervisor only, or nonresident.





          (My emphasis.)



          So, one major case of an internal access fault is an MMU detected condition, where the page is not resident, i.e. a page fault.




          In this interpretation, every operating system utilizing MC68040 requires corrective actions (in the corresponding exception handler) in order to continue a program after the exception.




          So, yes the operating system would either have to handle page faults as part of its virtual memory management, or disable the MMU, or configure the MMU so that all pages are resident.



          Normally writing to a write-protected page is a fault in the program, which should then be aborted; however, in some environments, a page might be write protected in order to intervene on writes — for example, a debugger might mark a page write protected in order to locate a particular write to that page.  Upon faulting for these a debugger could accomplish the write, and continue the program; a garbage collector might want to intervene on writes so as to track when they occur concurrently with a major collection cycle.




          As far as the other causes of internal access fault, here's what I speculate based on reading the text:



          Board design: the board can dynamically disable cache operation forcing the CPU to bypass the cache and use main memory.  It seems possible that a dual CPU board or some configuration of other system devices might do this to signal a CPU about shared memory updates.



          Apparently also, the board might send signals that cause the CPU to raise an internal access fault.  This might be used to support emulation, where the processor is used to run one (or several) instruction(s) and then suspend execution returning back to the emulator to observe or intervene.






          share|improve this answer























          • Thanks. I think on the platform at hand the MMU is deactivated but I have to check this. The caches are enabled. What confuses me is the mixture of bus error, which to me is clearly an error situation, with something that seems to be a rather normal situation, or even used to implement functionality.

            – Hartmut Braun
            Jun 24 at 17:01











          • I think also on a fork it's not unusual to provide the same pages to both processes as read only, and then perform a selective copying only if either process writes.

            – Tommy
            Jun 24 at 17:14






          • 2





            @Tommy, yes thx, a good example: copy on write uses write-protection fault but is continuable.

            – Erik Eidt
            Jun 24 at 18:52











          • Another real-world example: on Windows, there is a "guard page" just above the top of the stack. This allows the stack to grow on demand.

            – MSalters
            Jun 25 at 10:18













          8












          8








          8









          An internal access fault also occurs when the data or instruction MMU detects that a
          successful address translation is not possible because the page is write protected,
          supervisor only, or nonresident.





          (My emphasis.)



          So, one major case of an internal access fault is an MMU detected condition, where the page is not resident, i.e. a page fault.




          In this interpretation, every operating system utilizing MC68040 requires corrective actions (in the corresponding exception handler) in order to continue a program after the exception.




          So, yes the operating system would either have to handle page faults as part of its virtual memory management, or disable the MMU, or configure the MMU so that all pages are resident.



          Normally writing to a write-protected page is a fault in the program, which should then be aborted; however, in some environments, a page might be write protected in order to intervene on writes — for example, a debugger might mark a page write protected in order to locate a particular write to that page.  Upon faulting for these a debugger could accomplish the write, and continue the program; a garbage collector might want to intervene on writes so as to track when they occur concurrently with a major collection cycle.




          As far as the other causes of internal access fault, here's what I speculate based on reading the text:



          Board design: the board can dynamically disable cache operation forcing the CPU to bypass the cache and use main memory.  It seems possible that a dual CPU board or some configuration of other system devices might do this to signal a CPU about shared memory updates.



          Apparently also, the board might send signals that cause the CPU to raise an internal access fault.  This might be used to support emulation, where the processor is used to run one (or several) instruction(s) and then suspend execution returning back to the emulator to observe or intervene.






          share|improve this answer















          An internal access fault also occurs when the data or instruction MMU detects that a
          successful address translation is not possible because the page is write protected,
          supervisor only, or nonresident.





          (My emphasis.)



          So, one major case of an internal access fault is an MMU detected condition, where the page is not resident, i.e. a page fault.




          In this interpretation, every operating system utilizing MC68040 requires corrective actions (in the corresponding exception handler) in order to continue a program after the exception.




          So, yes the operating system would either have to handle page faults as part of its virtual memory management, or disable the MMU, or configure the MMU so that all pages are resident.



          Normally writing to a write-protected page is a fault in the program, which should then be aborted; however, in some environments, a page might be write protected in order to intervene on writes — for example, a debugger might mark a page write protected in order to locate a particular write to that page.  Upon faulting for these a debugger could accomplish the write, and continue the program; a garbage collector might want to intervene on writes so as to track when they occur concurrently with a major collection cycle.




          As far as the other causes of internal access fault, here's what I speculate based on reading the text:



          Board design: the board can dynamically disable cache operation forcing the CPU to bypass the cache and use main memory.  It seems possible that a dual CPU board or some configuration of other system devices might do this to signal a CPU about shared memory updates.



          Apparently also, the board might send signals that cause the CPU to raise an internal access fault.  This might be used to support emulation, where the processor is used to run one (or several) instruction(s) and then suspend execution returning back to the emulator to observe or intervene.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Jun 24 at 16:39









          Erik EidtErik Eidt

          1,6426 silver badges13 bronze badges




          1,6426 silver badges13 bronze badges












          • Thanks. I think on the platform at hand the MMU is deactivated but I have to check this. The caches are enabled. What confuses me is the mixture of bus error, which to me is clearly an error situation, with something that seems to be a rather normal situation, or even used to implement functionality.

            – Hartmut Braun
            Jun 24 at 17:01











          • I think also on a fork it's not unusual to provide the same pages to both processes as read only, and then perform a selective copying only if either process writes.

            – Tommy
            Jun 24 at 17:14






          • 2





            @Tommy, yes thx, a good example: copy on write uses write-protection fault but is continuable.

            – Erik Eidt
            Jun 24 at 18:52











          • Another real-world example: on Windows, there is a "guard page" just above the top of the stack. This allows the stack to grow on demand.

            – MSalters
            Jun 25 at 10:18

















          • Thanks. I think on the platform at hand the MMU is deactivated but I have to check this. The caches are enabled. What confuses me is the mixture of bus error, which to me is clearly an error situation, with something that seems to be a rather normal situation, or even used to implement functionality.

            – Hartmut Braun
            Jun 24 at 17:01











          • I think also on a fork it's not unusual to provide the same pages to both processes as read only, and then perform a selective copying only if either process writes.

            – Tommy
            Jun 24 at 17:14






          • 2





            @Tommy, yes thx, a good example: copy on write uses write-protection fault but is continuable.

            – Erik Eidt
            Jun 24 at 18:52











          • Another real-world example: on Windows, there is a "guard page" just above the top of the stack. This allows the stack to grow on demand.

            – MSalters
            Jun 25 at 10:18
















          Thanks. I think on the platform at hand the MMU is deactivated but I have to check this. The caches are enabled. What confuses me is the mixture of bus error, which to me is clearly an error situation, with something that seems to be a rather normal situation, or even used to implement functionality.

          – Hartmut Braun
          Jun 24 at 17:01





          Thanks. I think on the platform at hand the MMU is deactivated but I have to check this. The caches are enabled. What confuses me is the mixture of bus error, which to me is clearly an error situation, with something that seems to be a rather normal situation, or even used to implement functionality.

          – Hartmut Braun
          Jun 24 at 17:01













          I think also on a fork it's not unusual to provide the same pages to both processes as read only, and then perform a selective copying only if either process writes.

          – Tommy
          Jun 24 at 17:14





          I think also on a fork it's not unusual to provide the same pages to both processes as read only, and then perform a selective copying only if either process writes.

          – Tommy
          Jun 24 at 17:14




          2




          2





          @Tommy, yes thx, a good example: copy on write uses write-protection fault but is continuable.

          – Erik Eidt
          Jun 24 at 18:52





          @Tommy, yes thx, a good example: copy on write uses write-protection fault but is continuable.

          – Erik Eidt
          Jun 24 at 18:52













          Another real-world example: on Windows, there is a "guard page" just above the top of the stack. This allows the stack to grow on demand.

          – MSalters
          Jun 25 at 10:18





          Another real-world example: on Windows, there is a "guard page" just above the top of the stack. This allows the stack to grow on demand.

          – MSalters
          Jun 25 at 10:18

















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Retrocomputing Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fretrocomputing.stackexchange.com%2fquestions%2f11457%2fcan-access-fault-exceptions-of-the-mc68040-caused-by-internal-access-faults-occu%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Grendel Contents Story Scholarship Depictions Notes References Navigation menu10.1093/notesj/gjn112Berserkeree

          Area configuration aggregation error after install Porto themeMagento 2.1 CE Installed but front/backend not loading/workingCSS not loading on page within Magento 2 pageCannot install module in Magento 2no commands defined in the “setup” namespace. in Magento2Magento 2: Static files are present but shows 404Why do i have to always run the commands to clean cache in Magento 2.1.8?Failure reason: 'Unable to unserialize value.'Error 500 after magento migrationIn production mode the site does not loadMagento 2 : Error 500 after installing

          Middle Expansion Olielle Resaix Definition: Uttering songs of triumph shouting with joy triumphant exulting Sejunction Journal 붙다 달 고급 품목 외출 The stretch trades the screeching tin. Definition: The act of speaking with a drawl a drawl Cough Sand Definition: An uproar a quarrel a noisy outbreak Shake Iron Publicize Horse House Baby 사과 Resaix Flaggy Jelly Temporary Unequaled Puppet A drop in the bucket Shrew 성격 회원 성질 미팅 The burn frames the tacky quality. Materialistic The smoke reduces the way. Yammoe Nondescript Cheek 얼굴 배 약하다 날리다 타다 The illegal country shows the iron. Help Rule Drearien Smoke Teaching Meaty Wasp Abraham Lincoln Jaws 진심 수리하다 Size Cork Idea Convert Think Lark John Lennon 거울 청소 군 추천하다 아이스크림