In this problem, let REF(x.i) → DEF(x.k) denote that the linkerwill associate an arbitrary reference to symbol x in module ito the definition of x in module k . For each example thatfollows, use this notation to indicate how the linker wouldresolve references to the multiply-defined symbol in eachmodule. If there is a link-time error (rule 1), write "ERROR". If thelinker arbitrarily chooses one of the definitions (rule 3), write"UNKNOWN".A. /* Module 1 */                      /* Module 2 */int main()                                     int main;{                                                     int p2()}                                                       {} (a) REF(main.1) → DEF(_____._____)(b) REF(main.2) → DEF(_____._____) B. /* Module 1 */ /* Module 2 */void main() int main = 1;{ int p2()} {}(a) REF(main.1) → DEF(_____._____)(b) REF(main.2) → DEF(_____._____)C. /* Module 1 */ /* Module 2 */intx; doublex=1.0;void main() int p2(){ {} }(a) REF(x.1) → DEF(_____._____)(b) REF(x.2) → DEF(_____._____)

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

In this problem, let REF(x.i) → DEF(x.k) denote that the linker
will associate an arbitrary reference to symbol x in module i
to the definition of x in module k . For each example that
follows, use this notation to indicate how the linker would
resolve references to the multiply-defined symbol in each
module. If there is a link-time error (rule 1), write "ERROR". If the
linker arbitrarily chooses one of the definitions (rule 3), write
"UNKNOWN".
A. /* Module 1 */                      /* Module 2 */
int main()                                     int main;
{                                                     int p2()
}                                                       {
}

(a) REF(main.1) → DEF(_____._____)
(b) REF(main.2) → DEF(_____._____)

B. /* Module 1 */ /* Module 2 */
void main() int main = 1;
{ int p2()
} {
}
(a) REF(main.1) → DEF(_____._____)
(b) REF(main.2) → DEF(_____._____)
C. /* Module 1 */ /* Module 2 */
intx; doublex=1.0;
void main() int p2()
{ {
} }
(a) REF(x.1) → DEF(_____._____)
(b) REF(x.2) → DEF(_____._____)

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY