- paging systems



paging

This Day in History

Today's Birthday

Quotation of the Day

Alternate meanings: See paging (telecommunications). Bank switching is also sometimes referred to as paging.

In computer operating systems, paging memory allocation (also called memory address translation) algorithms divide computer memory into small partitions, and allocates memory using a page as the smallest building block.

Contents

  • 1 Advantages
  • 2 Disadvantages
  • 3 How it works
  • 4 Paging and virtual memory
  • 5 See also

Advantages

A key advantage that this method has over simpler methods such as the buddy memory allocation technique and dynamic allocation techniques is that the memory allocated to a program does not have to be contiguous, and because of that, there is very little external fragmentation - thus little memory is wasted.

Because programs rarely use all parts of their code and data at one point in time, the concept of virtual memory can be implemented by writing pages to disk, and reading pages from disk when they are needed. This is another advantage of paging over other memory allocation techniques.

Paging also provides a powerful mechanism for memory protection. A process that attempts to address space outside of its page range will generate a fault.

Disadvantages

One disadvantage of paging is the relatively complicated nature of the code required to handle it, especially if virtual memory is to be implemented. There is also a need for a memory management unit (MMU), which means that paging cannot be implemented on some older or smaller processors. It is also possible for internal fragmentation to occur, when, for example, a little more memory is required to store some data than the size of a page. In this case, a whole new page must be allocated to that data, while only a small fraction of the potential storage space within that page is being used. This kind of fragmentation also occurs when less memory is required to save some data than the size of a page.

The greatest disadvantage in paging lies in its effect upon shared memory Inter-Process Communication (IPC). Where one process shares an address-space with another, it isn't possible to point at code or data held by the other process. This is of great utility to memory protection as it prevents accidental (and much intentional) data corruption and data spying. However, it becomes necessary to communicate by the somewhat slower message passing mechanisms that generally involve context-switches and one or more memory-space copies of the message (e.g. copy to kernel-space, then copy to the remote process), plus potential costs for marshalling the message prior to delivery and unmarshalling it upon receipt. This has a significant effect on kernel design, and is among the fundamental reasons that microkernels (which must do much IPC) are generally slower than monolithic kernels. It also has the effect of discouraging arbitrary IPC between user-space processes (though whether that should be considered an advantage or disadvantage is questionable).

It is possible to overcome this IPC disadvantage somewhat by mapping some fragment of the virtual address space to the same physical locations for two or more processes. Memory mapped thusly is effectively shared between the processes, and will effectively retain internal pointer references within that space. Further, its use by any given process will be intentional, rather than accidental. However, marshalling (especially of structures with pointers) and copying of data to this shared space is still necessary.

How it works

The memory access part of paging is done at the hardware level via page tables, and is handled by the memory management unit. As mentioned earlier, physical memory is divided into small blocks called pages (typically 4 kibibytes or less) in size, and each block is assigned a page number. The operating system may keep a list of free pages in its memory, or may choose to probe the memory each time a memory request is made (though most modern operating systems do the former). Whatever the case, when a program makes a request for memory, the operating system allocates a number of pages to the program, and keeps a list of allocated pages for that particular program in memory. Now, let us take a look at an example.

The table below is an example page allocation list which could result if the following allocations happened in this order:

  1. Program A requests 3 pages of memory
  2. Program C requests 2 pages of memory
  3. Program D requests 2 pages of memory
  4. Program C terminates, leaving 2 empty pages
  5. Program B requests 3 pages of memory, and it is allocated the 2 empty pages that program C left, plus an additional page after program D
Frame Number Page Allocated to Physical Memory Address
0 Program A.0 1000:0000
1 Program A.1 1000:1000
2 Program A.2 1000:2000
3 Program B.0 1000:3000
4 Program B.1 1000:4000
5 Program D.0 1000:5000
6 Program D.1 1000:6000
7 Program B.2 1000:7000

Consequently, Program A's page tables would contain the following mapping (Program's Page #=>OS Page #): (0=>0, 1=>1, 2=>2); Program B's : (0=>3,1=>4,2=>7); and Program D's : (0=>5, 1=>6).

Now let's consider what happens when a program wants to access its own memory. Let's say Program A contains a statement "LOAD memory at 20FE". What happens? Let's take a look at it now.

20FE is 0010000011111110 in binary notation (in a 16-bit system), and we have pages of 4K in size. So when a request for memory at 20FE is made, the MMU looks at it in this way :


0010000011111110         =   20FE
|__||__________|
 |       |
 |       v
 v       Relative memory address in page (00FE)
Page Number (2)

Because we have pages 4096 bytes in size, the MMU looks at the first 4 bits for the page number, and the next 12 bits for the relative memory address in the page. If our pages were 2048 bytes in size, the MMU would look at the first 5 bits for the page number, and the next 11 bits for the relative memory address. So a smaller page size means more pages.

Thus, when this memory access request is made, the MMU looks at the program's page tables for the mapping to the OS page number. In this case, the second page of Program A maps to the second OS page. Then, it looks for the physical mapping of the OS page. The second OS page maps to the physical memory address 1000:2000, and the relative memory address that the program wants is 00FE, so the MMU will return memory at the physical address 1000:20FE.

This is a general description. Modern computer architectures use various means to speed up paging. For example on the Intel i386 architecture used in personal computers, among others, the CPU employs a special cache called Translation Lookaside Buffer which contains the mapping between a virtual memory address and the physical address it is backed by. Thus between the first time this mapping is obtained by page table lookups until the physical page is evicted or swapped out, the computationally expensive page table lookups need not be repeated, since the result is cached in the TLB. It is the job of the operating system to delete a particular entry from the TLB when this mapping becomes invalid. But as long as the entry is valid it can save thousands or millions of page table references.

Paging and virtual memory

When paging is used alongside with virtual memory, the operating system has to keep track of pages in use and pages which will not be used or have not been used for some time. Then, when the operating system deems fit, or when a program requests a page that has been swapped out, the operating system swaps out a page to disk, and brings another page into memory. (See Page replacement algorithms for more details as to how the operating system decides which page to swap in and out.) In this way, you can use more memory than your computer physically has.

See also

  • Demand paging
  • Page replacement algorithm
Search Term: "Paging"

paging news and paging articles

Here's our top rated paging links for the day:

Wal-Mart Phasing Out Fabrics Departments 

The Morning News - Mar 29 12:38 AM
ROGERS --Wal-Mart is unraveling its fabrics departments, at least at some stores.
Save

Wal-Mart Boosts Dividend 
The Morning News - Mar 29 12:39 AM
Wal-Mart Stores Inc. has approved an annual dividend of 88 cents, up 31 percent over the previous year.
Save

Symbian Mobile OS Aims To Boost Performance 
IT Architect - Mar 28 2:36 PM
New version of smartphone operating system facilitates advanced device features without driving up hardware requirements.
Save

Gryphyn Works and Horizon Air Begins Testing Emergency Communications Alert 
[Press Release] PR Web - Mar 29 12:14 AM
Gryphyn Works announced today it will begin testing an emergency communications alert system for Horizon Air. (PRWeb Mar 29, 2007) Post Comment:Trackback URL: http://www.prweb.com/zingpr.php/Q291cC1TcXVhLUhvcnItRmFsdS1NYWduLVplcm8=
Save

Symbian supports ARM Cortex in smartphones 
Electronic Engineering Times Asia - Mar 28 2:12 PM
Symbian has ported its mobile OS to ARM's Cortex-A8 processor, which is running on Texas Instruments' OMAP3430 applications processor.
Save

GWT Java AJAX Programming 
Slashdot - Mar 28 12:47 PM
simon_kehler writes "The Google Web Toolkit (GWT) is a Java AJAX framework that provides an easy to use programming paradigm for web developers using the Java programming language. It is one of the more recent entrants into this field, but has been gaining a lot of traction and popularity. GWT Java AJAX Programming authored by Prabhakar Chaganti and published by Packt Publishing addresses the use ...
Save

National Instruments and Mindready Improve Platform for Generating Analog and Digital Radio Signals 
Broadcast Newsroom - Mar 28 8:27 AM
AUSTIN, Texas, BUSINESS WIRE -- Mindready (TSX:MNY) today announced the latest software-defined radio toolkit release, the Universal Radio Tester (URT) Version 3.0. The URT is a highly flexible, compact and affordable solution used for generating analog and digital radio frequency signals based on National Instruments (Nasdaq:NATI) PXI hardware and NI LabVIEW and NI TestStand software.
Save

Logan power fears unfounded 
Herald Journal - Mar 28 10:41 AM
Kudos to Logan City Council for setting the city on a course to cleaner electricity by rejecting our participation in a coal generating plant near Delta. Some have criticized the council, speculating that utility prices could increase or that future economic growth could be diminished.
Save

Symbian Targets Mass Market With Upgraded Smartphone Operating System 
InformationWeek - Mar 27 9:34 AM
The new operating system is designed to allow manufacturers to build "smartphones at feature-phone prices," the company said.
Save

Symbian extends ARM support, launches OS v9.5 
EETimes - Mar 27 4:04 AM
Symbian Ltd has ported its mobile operating system to ARM's Cortex-A8 processor which is running on Texas Instruments' OMAP3430 applications processor. The OS supplier also revealed it has started shipping the latest version of its software, Symbian OS v9.5, which offers improved memory usage and integrated push e-mail support.
Save

Last Update: 2007-03-29 18:42:02

Thank you for reading the paging page - paging. 

1. aging
2. pagong
3. peging
4. paing
5. pagin
6. baging

As an extra bonus here are the top searched terms over the past month for paging. Now you can see what everyone else is searching for in regards to paging.

1. paging
2. paging systems
3. arch paging
4. ucom paging
5. paging service
6. satellite paging
7. philadelphia voice paging
8. sound paging tone generator
9. car alarm paging
10. no money down paging service
11. wireless paging
12. paging file size
13. paging software
14. paging system
15. verizon paging
16. arch paging wireless
17. eia 5/6 tone paging
18. paging companies
19. restaurant paging system
20. paging richard smoker
21. paging software macintosh
22. voice paging service
23. alarm paging tap
24. nationwide paging
25. paging file reverts
26. paging service georgia
27. paging services
28. sql server 2000 reporting service paging
29. cartoon coloring paging
30. cook paging
31. paging service arizona
32. wireless visual paging systems
33. alltel wireless paging
34. at t wireless text paging
35. intercom and paging system
36. on site paging system
37. paging file
38. system managed vs. custom size paging file
39. wireless paging systems
40. business telephone paging intercom systems
41. cingular paging
42. paging and interface
43. paging concepts
44. paging information services
45. sprint paging
46. virtual memory paging
47. web based paging
48. wireless messaging services verizon paging
49. alarm car paging
50. business phone in house use paging systems
51. coloring paging
52. dtmf paging
53. home paging intercom
54. intercom paging system
55. paging filesd memory
56. paging receivers
57. sbc paging
58. sms, paging software
59. tri star paging columbia missouri
60. verizon wireless paging
61. virtual memory paging file
62. 150 watt paging amplifier
63. att wireless paging
64. car alarm paging booster
65. cellular paging numbers
66. companies that purchase old jtech paging equipment
67. deep siren tactical paging system encryption
68. how do i use phone paging
69. lru algorithm paging in mac-os x
70. phone paging system
71. server paging file
72. wireless paging pager services
73. wireless paging system
74. 2-way paging motorcycle alarm
75. advance rf paging transmitter
76. alarm car paging system
77. aprisma paging
78. as 400 paging software
79. car alarm paging system
80. fax paging software
81. fire department paging tones
82. industrial wireless paging and intercom system
83. internet paging chariton valley columbia missouri
84. letter based paging aspx
85. light paging systems
86. memory management, paging
87. no paging file
88. paging file errors
89. paging file tweaks
90. paging system maintenance - pennsylvania
91. paging voice recognition software
92. phone pager paging
93. system managed size paging file
94. telephone paging system
95. television and paging and muting
96. what paging algorithm does mac-os x use
97. your system has no paging file
98. 1036c paging horn
99. 2 way paging car alarms
100. airtouch paging
101. alphanumeric paging
102. car alarms paging
103. compatibility mode paging windows me
104. create a php image with paging gallery
105. damaged paging file
106. emergency paging system
107. highland paging
108. industrial wireless paging system
109. irc paging help
110. metrotel paging service
111. midwest paging
112. overhead paging cisco ip phone
113. paging audio
114. paging file cleaner
115. paging frequencies nj
116. paging in php
117. paging speakers that are networkable
118. paging venders in nc
119. restaurant paging systems
120. satellite two-way paging
121. southwest paging and wireless
122. two-way paging systems
123. used jtech paging equipment
124. what is a paging system
125. why won't the paging file work
126. windows virtual memory paging file
127. 30 w self amplified paging horn
128. american paging
129. ameritech paging
130. anti-feedback paging interface fbi-1a
131. asp paging
132. concord paging
133. customer service paging press button
134. datalist paging sorting
135. definition of virtual memory paging
136. desk microphone paging intercom
137. ehealth paging
138. emergency paging service
139. free pc to phone paging
140. home made paging network
141. home made paging system
142. how to manually set the paging file in windows xp
143. internet paging software
144. java paging with db2
145. lancaster pa pagers and paging services
146. lrs paging system
147. nationwide satellite paging
148. norstar how do i set up a zone for paging
149. nursery paging systems
150. on line paging
151. our paging system amplifiers is making buzzing sound
152. paging algorithms in operation systems
153. paging bicycle alarms
154. paging drill down
155. paging file size won't change
156. paging for spectrum
157. paging in mac-os
158. paging networks
159. paging services for new york and new england
160. paging services in usa
161. paging servies
162. paging site frequencies nj
163. paging software company
164. paging system frequency band
165. paging system public address equipment
166. paging systems lights
167. paging technique,segmentation,fixed partition technique
168. paging to nortel ip phones
169. paging tones
170. paging transmitter
171. pbx paging port
172. pbx paging port levels
173. radio paging transmitters
174. radiocom paging
175. san cluster paging optimization
176. simple network paging protocol
177. spectrum paging
178. system deep encryption paging siren tactical priority
179. valcom paging
180. viper 479v paging remote
181. virtual memory paging file size
182. web paging
183. web paging software
184. wireless paging service michigan
185. xp paging file
186. 70v paging tutorial
187. advantages and disadvantages of paging
188. alarm paging system
189. algorithm for mac-os paging
190. algorithm for mac-os x paging
191. an error was detected on device during a paging operation.
192. arch wireless paging
193. att flex paging
194. best paging service
195. breaking news network paging
196. building paging policy
197. church nursery paging
198. clandestine paging
199. datalist asp.net paging
200. dataview rowfilter paging
201. define a paging system
202. dvd shrink paging error
203. gridview manual paging
204. indiana paging
205. isdn to paging module
206. maitre?d paging system
207. making a paging system
208. memory management for paging
209. memory management paging
210. metrocall paging software
211. motorola paging
212. multiple pager paging
213. nation wide paging
214. nationwide paging inc burbank california
215. network paging protocol
216. nextel paging
217. on premise paging system
218. oregon paging
219. our paging system is chirping
220. p a paging corporation
221. pager paging prank
222. paging algorithm mac-os x
223. paging and calling systems
224. paging and wireless service center
225. paging decoders
226. paging encoder
227. paging file won't enlarge
228. paging file won't size
229. paging in mac-os versus windows
230. paging in mac-os x
231. paging in repeater in asp.net with mode=numeric
232. paging in windows
233. paging jsp
234. paging memory management
235. paging microphone
236. paging recievers
237. paging service beaufort sc
238. paging service michigan
239. paging service proveders
240. paging system design
241. paging system frequency
242. paging systems restaurant
243. paging terminalcorinth
244. phone paging
245. phone system paging intercom
246. php paging tutorial
247. remote paging
248. restaurant paging equipment
249. se study hospital wireless paging
250. singulair paging
251. sms paging
252. statepointplus paging
253. system deep encryption paging siren tactical
254. used paging amplifiers
255. valcom talkback paging amplifier
256. venders paging
257. verizon cell paging
258. video paging software
259. where is the paging file
260. why use 70v paging
261. windows 2000 paging file missing
262. wireless alarm paging system
263. wireless personnel paging
264. wireless solutions and paging
265. xp cannot resize paging file
266. you have no paging file
267. your system has no paging file is too small
268. .net grid dataset paging
269. 1st responder paging
270. 2 way cellular paging alarms
271. 5 tone paging
272. 70 volt 550 watt paging
273. 70 volt paging amplifier
274. advanced paging
275. air touch paging in atlanta
276. airport announce paging funny names
277. airport paging
278. algorithm paging mac-os x
279. alltel tect paging
280. alpha numeric paging systems
281. alpha paging
282. alphabetical custom paging aspnet tutorials
283. alphanumeric based paging in aspnet
284. amateur paging kantronics problems
285. ameritch paging
286. ameritec paging
287. analog set paging
288. application idea clock paging voltage
289. arc paging
290. asap paging
291. asp dbase display paging
292. aspnet datalist paging
293. azcom paging verizon wireless calling plans
294. bob and tom paging richened smoker
295. bogen paging
296. brief note about working principles of paging hardware
297. c checkbox datagrid paging
298. caller id paging
299. canadian paging
300. caritel paging system
301. cdma paging channels
302. cdma paging channels verizon
303. cell paging phone
304. cellular paging
305. change paging file xp professional
306. cheap pager arch paging
307. cisco paging ata
308. commercial paging speakers
309. commercial paging wired
310. compatibility mode paging
311. compatibility mode paging reduces overall system performance
312. custom paging aspnet
313. dabo san lucas airport paging phone number
314. dap paging microphone
315. desktop paging software
316. devicecdrom0 during a paging operation
317. doctor office paging system
318. email paging
319. enforcer paging
320. example of paging in asp.net gridview
321. excessive paging file
322. excessive windows paging
323. fire department paging ones
324. fire station paging tones
325. fix compatibility mode paging windows me safe mode
326. free tap paging software
327. gallery paging in php
328. gatwick airport paging
329. ge paging
330. heathrow & paging & names
331. hibernate + offset + limit + paging
332. how does 70v paging work
333. how to create wireless paging devices
334. how to implement paging in asp web reports
335. how to install 70 volt paging system
336. how to make a paging find device
337. how to phone page instruction paging
338. how to set up my paging file usage to lower cup usage
339. in store paging codes + retail stores
340. java objects for paging
341. letter based paging dot net
342. link paging adelaide
343. linux paging software
344. long range paging
345. maxon paging encoder
346. medical office paging system
347. metrocall paging
348. metrocall paging & complaints
349. metrocall paging services
350. micrologic paging systems
351. mighty page paging terminal
352. motorola in house paging
353. motorola paging transmitter
354. mss paging module paging attempt lai cells
355. myti page paging terminal
356. national paging service
357. nationwide paging service
358. navigation and paging
359. norstar paging
360. northeast paging home page
361. nursery paging system
362. osg database paging
363. our paging amplifiers are making chirping sounds
364. outlook calendar paging software
365. overhead paging horns
366. page michigan paging
367. paging ameritech
368. paging and smsc
369. paging and television and ducking
370. paging car alarm
371. paging car alarms
372. paging does not release to music
373. paging email
374. paging error
375. paging file is too small
376. paging files size
377. paging gateway
378. paging harry international airport sydney
379. paging in windows xp
380. paging javabean code jsp
381. paging least recently used mac-os
382. paging mssql php
383. paging plus
384. paging pranks
385. paging services michigan
386. paging software solution
387. paging sound
388. paging system monitor
389. paging systems jtech wireless solutions restaurants churchs
390. paging with a dry contact relay
391. php code for paging
392. php paging
393. planet paging cellular
394. prestige paging car alarm
395. programming paging software
396. recreate paging file
397. reporting services and no paging
398. san mateo public safety paging
399. satellite two way paging
400. selectone paging encoder
401. singular text paging
402. sql server paging
403. station paging
404. system has no paging file
405. system managed paging
406. system restore your system has no paging file
407. tap paging
408. tap protocal paging
409. text paging software
410. the working principles of paging hardware
411. two way paging systems
412. two-tone paging software
413. uab paging system
414. us paging
415. use of paging in calculation
416. valcom paging horn
417. value of valcom paging horn amplifier
418. verizon online paging
419. verizon sells paging business
420. vhf 250w paging transmitter
421. viking paging sysytems
422. what is paging in gsm
423. which paging algorithm does mac-os x use
424. windows xp virtual memory paging file photoshop
425. working principle of one level paging
426. xp paging file changing
427. zoned paging systems