Downloads & Free Reading Options - Results

Adding Machine by Joshua Schmidt

Read "Adding Machine" by Joshua Schmidt through these free online access and download options.

Search for Downloads

Search by Title or Author

Books Results

Source: The Internet Archive

The internet Archive Search Results

Available books for downloads and borrow from The internet Archive

1The N-ary Adding Machine And Soluble Groups

By

We describe under a variety of conditions abelian subgroups of the automorphism group A of the regular n-ary tree T which are normalized by the n-ary adding machine t=(e,...,e,t)s where s is the n-cycle (0,1,...,n-1). As an application, for n a prime number, and for n = 4 we prove that every soluble subgroup of A containing t is an extension of a torsion-free metabelian group by a finite group.

“The N-ary Adding Machine And Soluble Groups” Metadata:

  • Title: ➤  The N-ary Adding Machine And Soluble Groups
  • Authors:
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 15.65 Mbs, the file-s for this book were downloaded 60 times, the file-s went public at Sat Sep 21 2013.

Available formats:
Abbyy GZ - Animated GIF - Archive BitTorrent - DjVu - DjVuTXT - Djvu XML - Item Tile - Metadata - Scandata - Single Page Processed JP2 ZIP - Text PDF -

Related Links:

Online Marketplaces

Find The N-ary Adding Machine And Soluble Groups at online marketplaces:


2Addometer - Presenting The Newest Achievement In An Improved Deluxe Low Priced Portable Adding Machine

By

Addometer 1930s? 4-page folded leaflet 140mm × 225mm This is an advertising leaflet from the UK for the Addometer adding machine. It lists the various models that were available. The leaflet was printed by W.H. Preece & Co in Manchester, which was a company that sold office equipment such as Imperial typewriters as well as office furniture. From at least 1943 until 1958 they were located on Brown street rather than Princess street, so this leaflet was printed before 1943.

“Addometer - Presenting The Newest Achievement In An Improved Deluxe Low Priced Portable Adding Machine” Metadata:

  • Title: ➤  Addometer - Presenting The Newest Achievement In An Improved Deluxe Low Priced Portable Adding Machine
  • Author:
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 5.10 Mbs, the file-s for this book were downloaded 81 times, the file-s went public at Sat Nov 27 2021.

Available formats:
Additional Text PDF - Archive BitTorrent - DjVuTXT - Djvu XML - Image Container PDF - Item Tile - Metadata - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Addometer - Presenting The Newest Achievement In An Improved Deluxe Low Priced Portable Adding Machine at online marketplaces:


3The Adding Machine !! - U.S. Pop Life Vol.17 Eclectic

By

No front cover available. Tracklist: 1. Strange Days - Tall Boys 2. Unpersuaded - Moving Units 3. Call Out Our Lions - Ssion 4. Hand On The Controls - Coachwhips 5. Go To Show - Numbers 6. Bread - On! Air! Library 7. The Best Siren Is A Flesh Siren - Kill Me Tomorrow 8. What I See - White Magic 9. Un-titled - Gang Gang Dance 10. Lighters Out - Measles Mumps Rubella 11. Security In The Neighborhood - Blood On The Wall 12. Young Liars - TV On The Radio 13. Check Level - Rogers Sisters 14. Pancheerah/ Skin=Chronized - Rah Bras

“The Adding Machine !! - U.S. Pop Life Vol.17 Eclectic” Metadata:

  • Title: ➤  The Adding Machine !! - U.S. Pop Life Vol.17 Eclectic
  • Authors: ➤  
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "audio" format, the size of the file-s is: 529.42 Mbs, the file-s for this book were downloaded 26 times, the file-s went public at Thu Nov 07 2019.

Available formats:
Abbyy GZ - CD Datafiles Zip - Columbia Peaks - Cue Sheet - DjVuTXT - Djvu XML - Flac - Generic Raw Book Zip - Item Image - Item Tile - Log - M3U - MP3 Sample - Metadata - OCR Page Index - OCR Search Text - PNG - Page Numbers JSON - Scandata - Scandata JSON - Single Page Processed JP2 ZIP - Spectrogram - Text PDF - VBR MP3 - chOCR - hOCR -

Related Links:

Online Marketplaces

Find The Adding Machine !! - U.S. Pop Life Vol.17 Eclectic at online marketplaces:


4Burrough's Adding Machine Co.

By

Type(s): Postcard Identifier(s): 1759 Source: Mike Skreptak Collection; Ephemera Box; From: Detroit's Largest Industries And Hotels, c. 1918, souvenir folder of postcards Notes: c. 1918; postmarked 1920; "World's largest manufacturers of adding, subtracting, and calculating machines"; Burrough's incorporated in Detroit in 1905; located at Second Avenue and Amsterdam Street. Place(s): Detroit (Michigan) Rights: Public Domain Repository: University of Windsor. Leddy Library. Archives and Special Collections

“Burrough's Adding Machine Co.” Metadata:

  • Title: Burrough's Adding Machine Co.
  • Author:
  • Language: English

“Burrough's Adding Machine Co.” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 33.12 Mbs, the file-s for this book were downloaded 35 times, the file-s went public at Thu Jun 20 2024.

Available formats:
Archive BitTorrent - DjVuTXT - Djvu XML - Generic Raw Book Zip - Item Tile - JPEG - JPEG Thumb - Metadata - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - TIFF - Text PDF - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Burrough's Adding Machine Co. at online marketplaces:


5Kochanov 1967 About Calculations Using An Adding Machine

By

Contents: Introduction to basic rules of calculations using an adding machine Use of an adding machine for calculating tables of values ​​of certain functions About calculations using an adding machine with a special stencil Methods numerical solution of linear differential equations using an adding machine application. 

“Kochanov 1967 About Calculations Using An Adding Machine” Metadata:

  • Title: ➤  Kochanov 1967 About Calculations Using An Adding Machine
  • Author:
  • Language: rus

“Kochanov 1967 About Calculations Using An Adding Machine” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 180.36 Mbs, the file-s for this book were downloaded 35 times, the file-s went public at Tue Oct 27 2015.

Available formats:
Abbyy GZ - Archive BitTorrent - Djvu XML - Generic Raw Book Zip - Metadata - Single Page Processed JP2 ZIP -

Related Links:

Online Marketplaces

Find Kochanov 1967 About Calculations Using An Adding Machine at online marketplaces:


6Binary Adding Machine (925312)

By

##Binary Adding Machine This is a 3D printable 1/2 scale version of the wooden binary adding machine by Matthias Wandel: http://www.sentex.net/~mwandel/ See a short demo of the 3D printed version here: First time glitched on "32", but second time worked as it usually does: http://youtu.be/GhgaMkGWSNI I may make a better video showing how it adds up a series of numbers, up to 63. The machine resets or wraps around 64. Educational device to see the binary system in action. Watch as binary bits and bytes toggle in physical form. The steel balls will register the sum of all the values being added together. Read the article on 3Dprint.com http://3dprint.com/92406/3d-printed-binary-adding/ Based on http://woodgears.ca/marbleadd/ Demonstration of the original wooden model: https://www.youtube.com/watch?v=GcDshWmhF4A

“Binary Adding Machine (925312)” Metadata:

  • Title: Binary Adding Machine (925312)
  • Author:

“Binary Adding Machine (925312)” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "data" format, the size of the file-s is: 1.48 Mbs, the file-s for this book were downloaded 17 times, the file-s went public at Thu Apr 15 2021.

Available formats:
Archive BitTorrent - Metadata - ZIP -

Related Links:

Online Marketplaces

Find Binary Adding Machine (925312) at online marketplaces:


7Rapid Mechanical Calculation / Comptometer Adding & Calculating Machine Operated By Keys Alone

By

This promotional booklet describes in detail what a Comptometer is and how it can aid in business. This was probably a free booklet would be sent to anyone in the who replied to an advert to request more information. It contains a separate supplement which lists the many companies that were already using Comptometers. Note that this is the U.K. edition - it has London rather than Chicago on the title page, and the testimonials and the supplement's list of users are from the U.K. only. The booklet does not contain any publication year, but it mentions the model E Comptometer so it probably came out in the same year as that model, about 1913.

“Rapid Mechanical Calculation / Comptometer Adding & Calculating Machine Operated By Keys Alone” Metadata:

  • Title: ➤  Rapid Mechanical Calculation / Comptometer Adding & Calculating Machine Operated By Keys Alone
  • Author:
  • Language: English

“Rapid Mechanical Calculation / Comptometer Adding & Calculating Machine Operated By Keys Alone” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 33.35 Mbs, the file-s for this book were downloaded 345 times, the file-s went public at Tue Feb 02 2016.

Available formats:
Abbyy GZ - Additional Text PDF - Animated GIF - Archive BitTorrent - DjVu - DjVuTXT - Djvu XML - Image Container PDF - Item Tile - Metadata - Scandata - Single Page Processed JP2 ZIP -

Related Links:

Online Marketplaces

Find Rapid Mechanical Calculation / Comptometer Adding & Calculating Machine Operated By Keys Alone at online marketplaces:


8ERIC ED013334: BUSINESS TRAINING COURSE, FULL-KEYBOARD ADDING-LISTING MACHINE.

By

THIS POST-SECONDARY PREPARATORY COURSE IS DESIGNED TO DEVELOP A HIGH DEGREE OF ABILITY IN OPERATING THE FULL-KEYBOARD ADDING MACHINE. TWENTY JOB SHEETS PROVIDE INSTRUCTIONS AND NUMBERED SPACES FOR RECORDING ANSWERS TO ASSIGNED PROBLEMS. THE REFERENCE IS "FULL-KEYBOARD ADDING-LISTING MACHINE COURSE," THIRD EDITION, BY AGNEW AND PASEWARK, SOUTH-WESTERN PUBLISHING COMPANY, CINCINNATI 27, OHIO. THE MATERIAL WAS DEVELOPED BY A COMMITTEE OF TEACHERS AT THE STATE LEVEL. THIS DOCUMENT IS AVAILABLE IN SINGLE COPY ONLY FOR $2.00 FROM VOCATIONAL CURRICULUM DEVELOPMENT AND RESEARCH CENTER, P.O. BOX 657, NATCHITOCHES, LOUISIANA 71457. (PS)

“ERIC ED013334: BUSINESS TRAINING COURSE, FULL-KEYBOARD ADDING-LISTING MACHINE.” Metadata:

  • Title: ➤  ERIC ED013334: BUSINESS TRAINING COURSE, FULL-KEYBOARD ADDING-LISTING MACHINE.
  • Author:
  • Language: English

“ERIC ED013334: BUSINESS TRAINING COURSE, FULL-KEYBOARD ADDING-LISTING MACHINE.” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 40.32 Mbs, the file-s for this book were downloaded 109 times, the file-s went public at Sat Dec 05 2015.

Available formats:
Abbyy GZ - Animated GIF - Archive BitTorrent - DjVu - DjVuTXT - Djvu XML - Item Tile - Metadata - Scandata - Single Page Processed JP2 ZIP - Text PDF -

Related Links:

Online Marketplaces

Find ERIC ED013334: BUSINESS TRAINING COURSE, FULL-KEYBOARD ADDING-LISTING MACHINE. at online marketplaces:


9Central High School Report To Parents #34 Rhythm Adding Technique On Monroe Adding Machine Mr. Irving Benedon

By

Mr. Irving Benedon instructing students on Monroe Adding Machines.

“Central High School Report To Parents #34 Rhythm Adding Technique On Monroe Adding Machine Mr. Irving Benedon” Metadata:

  • Title: ➤  Central High School Report To Parents #34 Rhythm Adding Technique On Monroe Adding Machine Mr. Irving Benedon
  • Author:

“Central High School Report To Parents #34 Rhythm Adding Technique On Monroe Adding Machine Mr. Irving Benedon” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "image" format, the size of the file-s is: 2.03 Mbs, the file-s for this book were downloaded 31 times, the file-s went public at Mon Sep 12 2022.

Available formats:
Negatives (photographs) - Archive BitTorrent - Item Tile - JPEG - JPEG Thumb - Metadata -

Related Links:

Online Marketplaces

Find Central High School Report To Parents #34 Rhythm Adding Technique On Monroe Adding Machine Mr. Irving Benedon at online marketplaces:


10The Adding Machine

By

Mr. Irving Benedon instructing students on Monroe Adding Machines.

“The Adding Machine” Metadata:

  • Title: The Adding Machine
  • Author:
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 453.89 Mbs, the file-s for this book were downloaded 1623 times, the file-s went public at Tue Jan 17 2023.

Available formats:
Archive BitTorrent - Cloth Cover Detection Log - DjVuTXT - Djvu XML - EPUB - Item Tile - JPEG Thumb - JSON - Log - Metadata - Metadata Log - OCR Page Index - OCR Search Text - PNG - Page Numbers JSON - RePublisher Final Processing Log - RePublisher Initial Processing Log - Scandata - Single Page Original JP2 Tar - Single Page Processed JP2 ZIP - Text PDF - Title Page Detection Log - chOCR - hOCR -

Related Links:

Online Marketplaces

Find The Adding Machine at online marketplaces:


11Mechanical Adding Machine (73352)

By

This was a one hour design challenge. After watching some really nifty youtube videos on naval targeting computers I copied a mechanical principality that involves two racks and an indicator gear. I plan on giving these out to all of the teachers who have influenced me throughout my high school career. Assembly is straightforward, be sure to check back for some more revisions...maybe. One still has to raster in the units on the material, but other than that. Feel free to laser your own. Here's that nifty series if anyone is interested: http://www.youtube.com/watch?v=mpkTHyfr0pM&feature=share&list=PLA352BA14EA140A4D

“Mechanical Adding Machine (73352)” Metadata:

  • Title: ➤  Mechanical Adding Machine (73352)
  • Author:

“Mechanical Adding Machine (73352)” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "data" format, the size of the file-s is: 0.16 Mbs, the file-s for this book were downloaded 19 times, the file-s went public at Fri Mar 19 2021.

Available formats:
Archive BitTorrent - Metadata - ZIP -

Related Links:

Online Marketplaces

Find Mechanical Adding Machine (73352) at online marketplaces:


12Major Organ And The Adding Machine

By

Tracklist: 1. When Father Was Away on Business 2. His Mister's Pet Whistles 3. Kissing Behind the Rubbery Grinder 4. Un, Deux, Trois 5. Your Moonpie Eye 6. Madam Truffle 7. The Fireman's Guitar 8. Moonpie Eye Sensation 9. Swimming, Laughing, Playing 10. Barry's Lung 11. Water Dripping on Bread Makes Bread Taste Not So Tasty. 12. Walking in the Sun 13. Transmission 14. Abe Lincoln's Mustache 15. The Snack Bar 16. Francisco's Victory 17. Powdered Abe Lincoln 18. Do the Moonpie Eye 19. Life Forms (Transmission Received)

“Major Organ And The Adding Machine” Metadata:

  • Title: ➤  Major Organ And The Adding Machine
  • Author: ➤  
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "audio" format, the size of the file-s is: 420.04 Mbs, the file-s for this book were downloaded 4 times, the file-s went public at Wed Feb 19 2025.

Available formats:
Columbia Peaks - Cue Sheet - DjVuTXT - Djvu XML - Flac - Generic Raw Book Zip - Item Image - Item Tile - Log - M3U - MP3 Sample - Metadata - OCR Page Index - OCR Search Text - PNG - Page Numbers JSON - Scandata - Scandata JSON - Single Page Processed JP2 ZIP - Spectrogram - Text PDF - VBR MP3 - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Major Organ And The Adding Machine at online marketplaces:


13Effects On Therapists’ Trust And Perception Of A Decision Support Tool When Adding Decision Transparency To Explain Machine Learning Predictions Of Internet-based Cognitive Behavioral Therapy – Protocol Of A Randomized Experiment

By

The study this protocol describes aims to evaluate the impact of providing therapists with SHAP-values as explanations of the DST’s prediction of individual patient’s final treatment outcomes on therapists’ trust in predictions and overall trust in the DST, understandability, usability, acceptance, expected clinical behaviour, causal attribution, and overall attitude to the DST. Overall, the study seeks to contribute to the integration of ML into mental health care, addressing challenges related to decision transparency and explainability. The aim of this protocol is not to describe previous relevant research or all exact details of the method, but to ensure that research questions and hypotheses, trial procedures, and how collected data will be used to analyze those, are clearly stated before data collection begins.

“Effects On Therapists’ Trust And Perception Of A Decision Support Tool When Adding Decision Transparency To Explain Machine Learning Predictions Of Internet-based Cognitive Behavioral Therapy – Protocol Of A Randomized Experiment” Metadata:

  • Title: ➤  Effects On Therapists’ Trust And Perception Of A Decision Support Tool When Adding Decision Transparency To Explain Machine Learning Predictions Of Internet-based Cognitive Behavioral Therapy – Protocol Of A Randomized Experiment
  • Authors: ➤  

Edition Identifiers:

Downloads Information:

The book is available for download in "data" format, the size of the file-s is: 0.96 Mbs, the file-s for this book were downloaded 4 times, the file-s went public at Mon Apr 29 2024.

Available formats:
Archive BitTorrent - Metadata - ZIP -

Related Links:

Online Marketplaces

Find Effects On Therapists’ Trust And Perception Of A Decision Support Tool When Adding Decision Transparency To Explain Machine Learning Predictions Of Internet-based Cognitive Behavioral Therapy – Protocol Of A Randomized Experiment at online marketplaces:


14Central High School Report To Parents #34 Rhythm Adding Technique On Monroe Adding Machine Mr. Irving Benedon

By

Mr. Irving Benedon instructing students on Monroe Adding Machines.

“Central High School Report To Parents #34 Rhythm Adding Technique On Monroe Adding Machine Mr. Irving Benedon” Metadata:

  • Title: ➤  Central High School Report To Parents #34 Rhythm Adding Technique On Monroe Adding Machine Mr. Irving Benedon
  • Author:

“Central High School Report To Parents #34 Rhythm Adding Technique On Monroe Adding Machine Mr. Irving Benedon” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "image" format, the size of the file-s is: 2.22 Mbs, the file-s for this book were downloaded 29 times, the file-s went public at Mon Sep 12 2022.

Available formats:
Negatives (photographs) - Archive BitTorrent - Item Tile - JPEG - JPEG Thumb - Metadata -

Related Links:

Online Marketplaces

Find Central High School Report To Parents #34 Rhythm Adding Technique On Monroe Adding Machine Mr. Irving Benedon at online marketplaces:


15Rollpad: Fridge Notepad For Roll Of Adding Machine Paper (3668454)

By

This is a "notepad" for the fridge (though you could also use it, upside-down, placed on a table or desk). I designed it for rolls of paper that I have, which are: * 2 1/4" (57cm) wide * 2 5/8" (about 68cm) in diameter * 1/2" (~8mm) diameter hole through the spool **Print these parts:** * main.stl (this is the main body of the thing; probably print with writing surface flat on build plate) * cutter.stl (this is the paper cutter) * cutter-post.stl X2 (or you can find some 4-5mm posts of some kind, like bamboo skewers, and glue/press them into the main body; they need to be guides to keep the cutter moving up and down in a fairly straight line; tolerance ~0.2mm). **Update: The cutter probably doesn't need to move up and down at all; if it is fixed in place with a gap allowing the paper to slide under it, that seems to work OK.** * axle.stl (this goes through the center of the paper spool). Print horizontal, with supports and maybe a raft, for best results. Alternatively, just use a 6-8mm rod of some kind, and make it long enough that the rubber bands don't fall off the ends. * arm.stl X2 (the arms connecting the axle that goes through the paper spool to the pivot points on the main body). **6/5/2019 Update: Arms now beefier around axle; they seemed a bit thin in first version.** * axle-cap.stl (these go on the ends of the axle so the rubber band doesn't fall off; you might need to heat them or glue them, depending on your printer setup; tolerance = 0). **Other stuff you'll need** * Four (4) rubber bands (to keep pressure on the cutter and on the spool) * Two (2) ~~M4 or~~ M5 screws for the pivot on the spool arms. * ~~Six~~ **Nine (9)** 8mm x 3mm neodymium (i.e., "strong") magnets. They should press into the feet (tolerance = 0) but, depending on your printer setup you might need to either heat the feet up a bit first (if the holes are too small) or use strong glue (if the holes are too big). **6/5/2019 Update: The paper roll is pretty heavy if it's full-size. Nine magnets is not quite enough for a slippery fridge (the unit slides down when you write on it) but seems just fine if the fridge is a little less slippery.** **Assembly Instructions** *(Or just look at the picture; you might be able to figure everything out from that)* Mount the cutter on the end of the main body, over the posts (or whatever you used as posts). Wrap one rubber band around the tabs on each side of the cutter and main body, to press the cutter down on the main body with a gentle pressure (trial and error will be needed to find the right pressure). **Update: Rubber bands might not be needed at all. Just make sure there's a tiny space the paper can slide under the cutter.** Use M4/M5 screws to fix the arms to the pivot points in the main base part using the 5mm (i.e., smaller) holes in the arms. Put the roll of paper on the axle in the round/cylinder-shaped area of the main body (see pic or diagram). Orient the roll so the paper feeds fairly smoothly (i.e., without a sharp almost 180-degree bend) out the slot in the body to the "top" (writing surface). Put the ends of the axle through the larger holes in the arms, then press caps on ends of axle to hold the roll in place. Wrap a rubber band around the post on the main body and the matching cap on the end of the axle. Do the same on the other side of the paper spool. *Adjust* Adjust the rubber bands pressing the paper spool (via the axle) up into the main body, and those pressing the cutter down into the main body (Apparently this is optional). The goals of this are to (a) keep the paper roll from falling out or flopping around, (b) keep the cutter from falling off, and (c) add any pressure necessary so that the paper feeds nicely; that is, it's easy to pull it out of the end of the cutter without too much force required, but also so that the paper doesn't slide back into the roll or bend or bunch up on the writing surface. "Adjust" probably means wrapping the rubber bands around the posts/tabs multiple times or maybe getting different ones. Yes, this is 100% an exact science. *Pen Holder* Print as in the file (i.e., widest part of cone sort of pointing down, but "front" of bracket flat on build plate). Snap on (I hope) as shown in the image with the green pen holder in it. I designed the pen holder for a right-handed person (the holder is on the left of the rollpad), but it can be easily adapted for a left-handed person by *mirroring* the part (right-to-left) in Cura , Meshmixer, or your slicer/3D program of choice. Note: pen holder v1 and v2 are identical except that v2 sticks out a bit more in the wide part of the "cone". IDK which will be more ergonomic/useful.

“Rollpad: Fridge Notepad For Roll Of Adding Machine Paper (3668454)” Metadata:

  • Title: ➤  Rollpad: Fridge Notepad For Roll Of Adding Machine Paper (3668454)
  • Author:

“Rollpad: Fridge Notepad For Roll Of Adding Machine Paper (3668454)” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "data" format, the size of the file-s is: 1.72 Mbs, the file-s for this book were downloaded 16 times, the file-s went public at Sun Mar 21 2021.

Available formats:
Archive BitTorrent - Metadata - ZIP -

Related Links:

Online Marketplaces

Find Rollpad: Fridge Notepad For Roll Of Adding Machine Paper (3668454) at online marketplaces:


16Adding Machine Tape Roll Holder (3158822)

By

This is simply to hold a tape roll for an adding machine.

“Adding Machine Tape Roll Holder (3158822)” Metadata:

  • Title: ➤  Adding Machine Tape Roll Holder (3158822)
  • Author:

“Adding Machine Tape Roll Holder (3158822)” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "data" format, the size of the file-s is: 0.40 Mbs, the file-s for this book were downloaded 20 times, the file-s went public at Tue Mar 16 2021.

Available formats:
Archive BitTorrent - Metadata - ZIP -

Related Links:

Online Marketplaces

Find Adding Machine Tape Roll Holder (3158822) at online marketplaces:


17Monroe MSB114: Machine Adding Before Shifting - KASC Model

By

Monroe Machine Service Bulletin No. 114, describing the fix for the KASC model mechanical calculator adding before shifting. This copy was scanned from a set of documents originally kept at the Toledo, Ohio branch of the Monroe Calculating Machine Company.

“Monroe MSB114: Machine Adding Before Shifting - KASC Model” Metadata:

  • Title: ➤  Monroe MSB114: Machine Adding Before Shifting - KASC Model
  • Author: ➤  
  • Language: English

“Monroe MSB114: Machine Adding Before Shifting - KASC Model” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 6.14 Mbs, the file-s for this book were downloaded 193 times, the file-s went public at Tue May 31 2016.

Available formats:
Abbyy GZ - Additional Text PDF - Animated GIF - Archive BitTorrent - DjVuTXT - Djvu XML - Image Container PDF - JPEG Thumb - Metadata - Scandata - Single Page Processed JP2 ZIP -

Related Links:

Online Marketplaces

Find Monroe MSB114: Machine Adding Before Shifting - KASC Model at online marketplaces:


18Adding Machine : A Musical

By

Monroe Machine Service Bulletin No. 114, describing the fix for the KASC model mechanical calculator adding before shifting. This copy was scanned from a set of documents originally kept at the Toledo, Ohio branch of the Monroe Calculating Machine Company.

“Adding Machine : A Musical” Metadata:

  • Title: Adding Machine : A Musical
  • Author:
  • Language: English

“Adding Machine : A Musical” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 187.23 Mbs, the file-s for this book were downloaded 16 times, the file-s went public at Thu Oct 12 2023.

Available formats:
ACS Encrypted PDF - Cloth Cover Detection Log - DjVuTXT - Djvu XML - Dublin Core - EPUB - Item Tile - JPEG Thumb - LCP Encrypted EPUB - LCP Encrypted PDF - Log - MARC - MARC Binary - Metadata - OCR Page Index - OCR Search Text - PNG - Page Numbers JSON - RePublisher Final Processing Log - RePublisher Initial Processing Log - Scandata - Single Page Original JP2 Tar - Single Page Processed JP2 ZIP - Text PDF - Title Page Detection Log - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Adding Machine : A Musical at online marketplaces:


19The Adding Machine : Selected Essays

By

Monroe Machine Service Bulletin No. 114, describing the fix for the KASC model mechanical calculator adding before shifting. This copy was scanned from a set of documents originally kept at the Toledo, Ohio branch of the Monroe Calculating Machine Company.

“The Adding Machine : Selected Essays” Metadata:

  • Title: ➤  The Adding Machine : Selected Essays
  • Author: ➤  
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 311.66 Mbs, the file-s for this book were downloaded 1120 times, the file-s went public at Thu Sep 24 2009.

Available formats:
ACS Encrypted PDF - Abbyy GZ - Animated GIF - Cloth Cover Detection Log - DjVuTXT - Djvu XML - Dublin Core - EPUB - Grayscale PDF - Item Tile - JSON - LCP Encrypted EPUB - LCP Encrypted PDF - MARC - MARC Binary - MARC Source - Metadata - Metadata Log - OCLC xISBN JSON - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Original JP2 Tar - Single Page Processed JP2 ZIP - Text PDF - chOCR - hOCR -

Related Links:

Online Marketplaces

Find The Adding Machine : Selected Essays at online marketplaces:


20The Adding Machine

By

Tracklist: 1. International Dateline 2. The Adding Machine 3. Lapse 4. House of Twang 5. Meantime

“The Adding Machine” Metadata:

  • Title: The Adding Machine
  • Authors: ➤  
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "audio" format, the size of the file-s is: 606.79 Mbs, the file-s for this book were downloaded 78 times, the file-s went public at Fri Feb 14 2020.

Available formats:
Abbyy GZ - Columbia Peaks - Cue Sheet - DjVuTXT - Djvu XML - Flac - Generic Raw Book Zip - Item Image - Item Tile - Log - M3U - MP3 Sample - Metadata - OCR Page Index - OCR Search Text - PNG - Page Numbers JSON - Scandata - Scandata JSON - Single Page Processed JP2 ZIP - Spectrogram - Text PDF - VBR MP3 - chOCR - hOCR -

Related Links:

Online Marketplaces

Find The Adding Machine at online marketplaces:


21Addimax Pocket Adding Machine - Alexander Drafting Equipment Co.:

Addimax pocket adding machine - Alexander Drafting Equipment Co.

“Addimax Pocket Adding Machine - Alexander Drafting Equipment Co.:” Metadata:

  • Title: ➤  Addimax Pocket Adding Machine - Alexander Drafting Equipment Co.:
  • Language: English

“Addimax Pocket Adding Machine - Alexander Drafting Equipment Co.:” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 152.36 Mbs, the file-s for this book were downloaded 131 times, the file-s went public at Fri Dec 08 2017.

Available formats:
Abbyy GZ - Archive BitTorrent - DjVuTXT - Djvu XML - Generic Raw Book Zip - JPEG Thumb - Metadata - Scandata - Single Page Processed JP2 ZIP - Text PDF -

Related Links:

Online Marketplaces

Find Addimax Pocket Adding Machine - Alexander Drafting Equipment Co.: at online marketplaces:


22DTIC ADA585928: Adding Statistical Machine Translation Adaptation To Computer-Assisted Translation

By

Statistical machine translation (SMT) has proven effective for general purpose language translation but not for highly specialized domains like medicine, military operations, and law enforcement, which have their own technical jargon. We present a novel approach for iteratively incorporating a human translator in the loop to adapt SMT models to a particular domain. We show how these models can be made accessible via Web services and integrated with computer-assisted translation (CAT) tools. In this report, we describe a novel human-in-the-loop post-editing domain adaptation algorithm for refining SMT models using the Joshua decoder and integrate it with a CAT tool called OmegaT.

“DTIC ADA585928: Adding Statistical Machine Translation Adaptation To Computer-Assisted Translation” Metadata:

  • Title: ➤  DTIC ADA585928: Adding Statistical Machine Translation Adaptation To Computer-Assisted Translation
  • Author: ➤  
  • Language: English

“DTIC ADA585928: Adding Statistical Machine Translation Adaptation To Computer-Assisted Translation” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 10.65 Mbs, the file-s for this book were downloaded 65 times, the file-s went public at Fri Sep 14 2018.

Available formats:
Abbyy GZ - Archive BitTorrent - DjVuTXT - Djvu XML - Item Tile - Metadata - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - Text PDF - chOCR - hOCR -

Related Links:

Online Marketplaces

Find DTIC ADA585928: Adding Statistical Machine Translation Adaptation To Computer-Assisted Translation at online marketplaces:


23Alarm Clock Ticking; Alarm; Adding Machine; Typewriter (slow)

Alarm clock ticking; Alarm; Adding Machine; Typewriter (slow). Digitized at 78 revolutions per minute. Four stylii were used to transfer this record. They are 2.0 mil truncated conical, 2.3 mil truncated conical, 2.8 mil truncated conical, 3.3 mil truncated conical. These were recorded flat and then also equalized with Turnover: 482.0, Rolloff: -13.75. The preferred versions suggested by an audio engineer at George Blood, L.P. have been copied to have the more friendly filenames. Matrix number: TJV-9244 Catalog number: 4102-B Other IDs from the record include: TJV-9244; H9OB-3434-1; (H9OB-3434)

“Alarm Clock Ticking; Alarm; Adding Machine; Typewriter (slow)” Metadata:

  • Title: ➤  Alarm Clock Ticking; Alarm; Adding Machine; Typewriter (slow)
  • Language: English

“Alarm Clock Ticking; Alarm; Adding Machine; Typewriter (slow)” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "audio" format, the size of the file-s is: 572.50 Mbs, the file-s for this book were downloaded 324 times, the file-s went public at Fri Jan 19 2018.

Available formats:
24bit Flac - Archive BitTorrent - Columbia Peaks - Item Image - Item Tile - JPEG - JPEG Thumb - Metadata - PNG - Spectrogram - TIFF - VBR MP3 - Whisper ASR JSON - ZIP -

Related Links:

Online Marketplaces

Find Alarm Clock Ticking; Alarm; Adding Machine; Typewriter (slow) at online marketplaces:


24A Class Of Adding Machine And Julia Sets

By

In this work we define a stochastic adding machine associated to the Fibonacci base and to a probabilities sequence $\overline{p}=(p_i)_{i\geq 1}$. We obtain a Markov chain whose states are the set of nonnegative integers. We study probabilistic properties of this chain, such as transience and recurrence. We also prove that the spectrum associated to this Markov chain is connected to the fibered Julia sets for a class of endomorphisms in $\mathbb{C}^2$.

“A Class Of Adding Machine And Julia Sets” Metadata:

  • Title: ➤  A Class Of Adding Machine And Julia Sets
  • Author:
  • Language: English

“A Class Of Adding Machine And Julia Sets” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 11.43 Mbs, the file-s for this book were downloaded 35 times, the file-s went public at Thu Jun 28 2018.

Available formats:
Abbyy GZ - Archive BitTorrent - DjVuTXT - Djvu XML - JPEG Thumb - Metadata - Scandata - Single Page Processed JP2 ZIP - Text PDF -

Related Links:

Online Marketplaces

Find A Class Of Adding Machine And Julia Sets at online marketplaces:


2501-03-05_Adding_A_Network_Adapter_To_Virtual_Machine

Adding A Network Adapter To Virtual Machine When adding a network adapter to your virtual machine different options might be available, depending on the version of the virtual machine, whether or not the virtual machine has been updated to the latest version for the current host and the guest operating system . In previous versions of VMWare ESX Server like version 2.5 there were two drivers to choose from: ⢠Vlance âand vmxnet âYou must install VMware Tools to have a driver for the vmxnet network adapter In version 3.5 VM Ware introduced a new name for the network adapter - Flexible The Flexible network adapter identifies itself as a Vlance adapter when a virtual machine boots, but initializes itself and functions as either a Vlance or a vmxnet adapter. Adding a virtual network card through the Virtual Machine wizard is fairly easy, and all we have to do is shut down the guest OS. This is FREE VMWare ESX Server Training Video by viadmin.com

“01-03-05_Adding_A_Network_Adapter_To_Virtual_Machine” Metadata:

  • Title: ➤  01-03-05_Adding_A_Network_Adapter_To_Virtual_Machine

Edition Identifiers:

Downloads Information:

The book is available for download in "movies" format, the size of the file-s is: 146.25 Mbs, the file-s for this book were downloaded 39 times, the file-s went public at Sat Mar 13 2010.

Available formats:
512Kb MPEG4 - Animated GIF - Archive BitTorrent - Flash Video - Item Tile - Metadata - Ogg Video - Thumbnail -

Related Links:

Online Marketplaces

Find 01-03-05_Adding_A_Network_Adapter_To_Virtual_Machine at online marketplaces:


26Wingate 900 Electric Adding Machine - American Wingate Corp.:

Wingate 900 electric adding machine - American Wingate Corp.

“Wingate 900 Electric Adding Machine - American Wingate Corp.:” Metadata:

  • Title: ➤  Wingate 900 Electric Adding Machine - American Wingate Corp.:
  • Language: English

“Wingate 900 Electric Adding Machine - American Wingate Corp.:” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 99.12 Mbs, the file-s for this book were downloaded 73 times, the file-s went public at Sun Jan 21 2018.

Available formats:
Abbyy GZ - Archive BitTorrent - DjVuTXT - Djvu XML - Generic Raw Book Zip - JPEG Thumb - Metadata - Scandata - Single Page Processed JP2 ZIP - Text PDF -

Related Links:

Online Marketplaces

Find Wingate 900 Electric Adding Machine - American Wingate Corp.: at online marketplaces:


27CIA Reading Room Cia-rdp70-00211r000300210011-2: LETTER TO BURROUGHS ADDING MACHINE COMPANY FROM(Sanitized)

By

Approved For Release 2005/11/21: CIA-RDP70-00211 R000300210011-2 in 1y er : POAPCD 1 17 SqACOW 1 .fit- _ is Approved For Release 2005/11/21: CIA-RDP70-00211 R000300210011-2

“CIA Reading Room Cia-rdp70-00211r000300210011-2: LETTER TO BURROUGHS ADDING MACHINE COMPANY FROM(Sanitized)” Metadata:

  • Title: ➤  CIA Reading Room Cia-rdp70-00211r000300210011-2: LETTER TO BURROUGHS ADDING MACHINE COMPANY FROM(Sanitized)
  • Author:
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 0.76 Mbs, the file-s for this book were downloaded 16 times, the file-s went public at Fri May 31 2024.

Available formats:
Additional Text PDF - Archive BitTorrent - DjVuTXT - Djvu XML - Image Container PDF - Item Tile - Metadata - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - chOCR - hOCR -

Related Links:

Online Marketplaces

Find CIA Reading Room Cia-rdp70-00211r000300210011-2: LETTER TO BURROUGHS ADDING MACHINE COMPANY FROM(Sanitized) at online marketplaces:


28Mechanical Adding Machine STL Format (3617603)

By

Converted the DWG files into 3d objects in Fusion360, added numbering. Numbers are kind of small so can be difficult print but should work well with .4 nozzle.

“Mechanical Adding Machine STL Format (3617603)” Metadata:

  • Title: ➤  Mechanical Adding Machine STL Format (3617603)
  • Author: ➤  

“Mechanical Adding Machine STL Format (3617603)” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "data" format, the size of the file-s is: 0.32 Mbs, the file-s for this book were downloaded 18 times, the file-s went public at Tue Mar 09 2021.

Available formats:
Archive BitTorrent - Metadata - ZIP -

Related Links:

Online Marketplaces

Find Mechanical Adding Machine STL Format (3617603) at online marketplaces:


29Fractomator Adding Machine - Alexander Drafting Equipment Company 1965:

Fractomator adding machine - Alexander Drafting Equipment Company 1965

“Fractomator Adding Machine - Alexander Drafting Equipment Company 1965:” Metadata:

  • Title: ➤  Fractomator Adding Machine - Alexander Drafting Equipment Company 1965:
  • Language: English

“Fractomator Adding Machine - Alexander Drafting Equipment Company 1965:” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 214.42 Mbs, the file-s for this book were downloaded 246 times, the file-s went public at Fri Dec 08 2017.

Available formats:
Abbyy GZ - Archive BitTorrent - DjVuTXT - Djvu XML - Generic Raw Book Zip - Item Tile - Metadata - Scandata - Single Page Processed JP2 ZIP - Text PDF -

Related Links:

Online Marketplaces

Find Fractomator Adding Machine - Alexander Drafting Equipment Company 1965: at online marketplaces:


30Folding Trays And Adding Machine Mount - Hutton Business Services:

Folding trays and adding machine mount - Hutton Business services

“Folding Trays And Adding Machine Mount - Hutton Business Services:” Metadata:

  • Title: ➤  Folding Trays And Adding Machine Mount - Hutton Business Services:
  • Language: English

“Folding Trays And Adding Machine Mount - Hutton Business Services:” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 139.12 Mbs, the file-s for this book were downloaded 76 times, the file-s went public at Fri Dec 08 2017.

Available formats:
Abbyy GZ - Archive BitTorrent - DjVuTXT - Djvu XML - Generic Raw Book Zip - Item Tile - Metadata - Scandata - Single Page Processed JP2 ZIP - Text PDF -

Related Links:

Online Marketplaces

Find Folding Trays And Adding Machine Mount - Hutton Business Services: at online marketplaces:


31Adding Machine Plus - Pocket Info Corp

By

Adding Machine Plus software for Sharp PC-1211/TRS-80 Pocket Computer. By PocketInfo Corp.

“Adding Machine Plus - Pocket Info Corp” Metadata:

  • Title: ➤  Adding Machine Plus - Pocket Info Corp
  • Author:
  • Language: English

“Adding Machine Plus - Pocket Info Corp” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 19.56 Mbs, the file-s for this book were downloaded 146 times, the file-s went public at Mon Sep 19 2022.

Available formats:
Additional Text PDF - Archive BitTorrent - DjVuTXT - Djvu XML - Image Container PDF - Item Tile - Metadata - OCR Page Index - OCR Search Text - PNG - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - Unknown - ZIP - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Adding Machine Plus - Pocket Info Corp at online marketplaces:


32Controlled-Key Comptometer Adding And Calculating Machine

By

Controlled-Key Comptometer Adding and Calculating Machine Felt & Tarrant Mfg. Co. 1915-1920 Form 326 24 page stapled booklet This is a promotional booklet for the Comptometer. It lists various businesses that use Comptometers and what they use it for, as well as addition problems that the Comptometer can do very quickly. The cover shows a model F Comptometer, so it was probably printed between 1915 and 1920.

“Controlled-Key Comptometer Adding And Calculating Machine” Metadata:

  • Title: ➤  Controlled-Key Comptometer Adding And Calculating Machine
  • Author:
  • Language: English

“Controlled-Key Comptometer Adding And Calculating Machine” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 24.04 Mbs, the file-s for this book were downloaded 13 times, the file-s went public at Sun May 18 2025.

Available formats:
Additional Text PDF - Archive BitTorrent - DjVuTXT - Djvu XML - Image Container PDF - Item Tile - Metadata - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Controlled-Key Comptometer Adding And Calculating Machine at online marketplaces:


33Mark's Adding Machine V1.00

Mark's Adding Machine v1.00: Add machine/calc

“Mark's Adding Machine V1.00” Metadata:

  • Title: Mark's Adding Machine V1.00

“Mark's Adding Machine V1.00” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "software" format, the size of the file-s is: 0.82 Mbs, the file-s for this book were downloaded 74 times, the file-s went public at Mon Sep 16 2019.

Available formats:
Archive BitTorrent - Metadata - ZIP -

Related Links:

Online Marketplaces

Find Mark's Adding Machine V1.00 at online marketplaces:


34Adding Machine: A Play In Seven Acts

By

Mark's Adding Machine v1.00: Add machine/calc

“Adding Machine: A Play In Seven Acts” Metadata:

  • Title: ➤  Adding Machine: A Play In Seven Acts
  • Author:
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 281.05 Mbs, the file-s for this book were downloaded 12 times, the file-s went public at Mon Jul 24 2023.

Available formats:
ACS Encrypted PDF - Cloth Cover Detection Log - DjVuTXT - Djvu XML - EPUB - Item Tile - JPEG Thumb - JSON - LCP Encrypted EPUB - LCP Encrypted PDF - Log - Metadata - OCR Page Index - OCR Search Text - PNG - Page Numbers JSON - RePublisher Final Processing Log - RePublisher Initial Processing Log - Scandata - Single Page Original JP2 Tar - Single Page Processed JP2 ZIP - Text PDF - Title Page Detection Log - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Adding Machine: A Play In Seven Acts at online marketplaces:


35Yt 5s.com Is There A Good Way (pattern) For Adding A State To A Finite State Machine ( 2 Solutions!!) ( 1080p)

By

Roel Van de Paar

“Yt 5s.com Is There A Good Way (pattern) For Adding A State To A Finite State Machine ( 2 Solutions!!) ( 1080p)” Metadata:

  • Title: ➤  Yt 5s.com Is There A Good Way (pattern) For Adding A State To A Finite State Machine ( 2 Solutions!!) ( 1080p)
  • Author:
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "movies" format, the size of the file-s is: 29.91 Mbs, the file-s for this book were downloaded 30 times, the file-s went public at Thu Nov 17 2022.

Available formats:
Archive BitTorrent - Item Tile - MPEG4 - Metadata - Thumbnail - h.264 IA -

Related Links:

Online Marketplaces

Find Yt 5s.com Is There A Good Way (pattern) For Adding A State To A Finite State Machine ( 2 Solutions!!) ( 1080p) at online marketplaces:


361971 Sears Electric Adding Machine Model 888.58800 Instruction Manual

By

Instruction manual for Sears Electric Adding Machine Model 888.58800 circa 1971. This 10-key electro-mechanical adding machine was made in Japan for Sears, Roebuck and Co. between 1971 and 1975. 

“1971 Sears Electric Adding Machine Model 888.58800 Instruction Manual” Metadata:

  • Title: ➤  1971 Sears Electric Adding Machine Model 888.58800 Instruction Manual
  • Author:
  • Language: English

“1971 Sears Electric Adding Machine Model 888.58800 Instruction Manual” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 25.98 Mbs, the file-s for this book were downloaded 14 times, the file-s went public at Thu May 15 2025.

Available formats:
Additional Text PDF - Archive BitTorrent - DjVuTXT - Djvu XML - Image Container PDF - Item Tile - Metadata - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - chOCR - hOCR -

Related Links:

Online Marketplaces

Find 1971 Sears Electric Adding Machine Model 888.58800 Instruction Manual at online marketplaces:


37ERIC ED195834: Common Core Units In Business Education: The How And Why Of The Adding Machine.

By

This secondary unit of instruction on the adding machine is one of sixteen Common Core Units in Business Education (CCUBE). The units were designed for implementing the sixteen common core competencies identified in the California Business Education Program Guide for Office and Distributive Education. Each competency-based unit is designed to facilitate personalized instruction and may include five types of materials: (1) a teacher's guide, which provides specific strategies for the units as well as suggestions for the use of the materials; (2) a student manual, which directs the student through the unit's activities and jobs and brings the student to the competency level for the unit; (3) working papers, which are consumable materials used in completing the jobs and activities described in the student manual; (4) pre/post tests and quizzes; and (5) suggested electronic media. A strategies manual and the California Business Education Program Guide and supplements are also available--see note. (LRA)

“ERIC ED195834: Common Core Units In Business Education: The How And Why Of The Adding Machine.” Metadata:

  • Title: ➤  ERIC ED195834: Common Core Units In Business Education: The How And Why Of The Adding Machine.
  • Author:
  • Language: English

“ERIC ED195834: Common Core Units In Business Education: The How And Why Of The Adding Machine.” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 38.04 Mbs, the file-s for this book were downloaded 153 times, the file-s went public at Mon Feb 09 2015.

Available formats:
Abbyy GZ - Animated GIF - Archive BitTorrent - DjVu - DjVuTXT - Djvu XML - JPEG Thumb - Metadata - Scandata - Single Page Processed JP2 ZIP - Text PDF -

Related Links:

Online Marketplaces

Find ERIC ED195834: Common Core Units In Business Education: The How And Why Of The Adding Machine. at online marketplaces:


38Binary Marble Adding Machine (42338)

By

This is based on the binary marble adding machine from this web site and is based on the plans from the site: http://woodgears.ca/marbleadd/ There is also a great YouTube video explaining how to use it: http://youtu.be/GcDshWmhF4A It's a great way of teaching binary numbers and it is also a lot of fun to watch the marbles fall!

“Binary Marble Adding Machine (42338)” Metadata:

  • Title: ➤  Binary Marble Adding Machine (42338)
  • Author:

“Binary Marble Adding Machine (42338)” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "data" format, the size of the file-s is: 0.54 Mbs, the file-s for this book were downloaded 17 times, the file-s went public at Sun Apr 04 2021.

Available formats:
Archive BitTorrent - Metadata - ZIP -

Related Links:

Online Marketplaces

Find Binary Marble Adding Machine (42338) at online marketplaces:


39The Chromium Logo The Chromium Projects Home Chromium ChromiumOS Quick Links Report Bugs Discuss Other Sites Chromium Blog Google Chrome Extensions Except As Otherwise Noted, The Content Of This Page Is Licensed Under A Creative Commons Attribution 2.5 License, And Examples Are Licensed Under The BSD License. Privacy Edit This Page For Developers > How-Tos > Debugging Chromium On Windows First See Get The Code For Checkout And Build Instructions. Getting Started You Can Use Visual Studio's Built-in Debugger Or WinDBG To Debug Chromium. You Don't Need To Use The IDE To Build In Order To Use The Debugger: Autoninja Is Used To Build Chromium And Most Developers Invoke It From A Command Prompt, And Then Open The IDE For Debugging As Necessary. To Start Debugging An Already-built Executable With Visual Studio Just Launch Visual Studio (2019 Or Higher) And Select File-> Open-> Project/Solution (Ctrl+Shift+O) And Select The Executable Of Interest. This Will Create A Solution With That Executable As The 'project'. You Can Then Launch The Debugger With F5 Or F11 Or From The Debug Menu. If You Right-click On The Executable In Solution Explorer And Select Properties Then You Can Edit Things Such As The Executable Path, Command-line Arguments, And Working Directory. You Can Add Additional Executables To The Solution By Using File-> Add-> Existing Project And Selecting Another Already-built Executable. You Can Select Which One To Debug By Right-clicking On One Of Them In Solution Explorer And Selecting Set As Startup Project. When Your Solution File Is Customized To Your Taste You Can Save It To A Directory Such As Out\solutions. Saving It There Helps Ensure That Relative Paths To Source Files, Printed From Build Commands, Will Correctly Identify The Source Files. The Tools Menu Can Be Used To Add Commands To Do Things Like Invoke Autoninja To Build Chrome, Compile The Selected Source File, Or Other Things. Visual Studio 2017 Is Not Recommended For Debugging Of Chromium - Use A Newer Version For Best Performance And Stability. Symbol_level=2 Is The Default On Windows And Gives Full Debugging Information With Types, Locals, Globals, Function Names, And Source/line Information. Symbol_level=1 Creates Smaller PDBs With Just Function Names, And Source/line Information - Source-level Debugging Is Still Supported (new From June 2019), But Local Variables And Type Information Are Missing. Symbol_level=0 Gives Extremely Limited Debugging Abilities, Mostly Just Viewing Call Stacks When Chromium Crashes. Browsing Source Code If You Use A Solution File Generated By Gn (gn Gen --ide=vs) Then Intellisense May Help You Navigate The Code. If This Doesn't Work Or If You Use A Solution Created As Above Then You May Want To Install VsChromium To Help Navigate The Code, As Well As Using Https://source.chromium.org. Profiles It's A Good Idea To Use A Different Chrome Profile For Your Debugging. If You Are Debugging Google Chrome Branded Builds, Or Use A Chromium Build As Your Primary Browser, The Profiles Can Collide So You Can't Run Both At Once, And Your Stable Browser Might See Profile Versions From The Future (Google Chrome And Chromium Use Different Profile Directories By Default So Won't Collide). Use The Command-line Option: --user-data-dir=C:\tmp\my_debug_profile (replace The Path As Necessary) Using The IDE, Go To The Debugging Tab Of The Properties Of The Chrome Project, And Set The Command Arguments. Chrome Debug Log Enable Chrome Debug Logging To A File By Passing --enable-logging --v=1 Command-line Flags At Startup. Debug Builds Place The Chrome_debug.log File In The Out\Debug Directory. Release Builds Place The File In The Top Level Of The User Data Chromium App Directory, Which Is OS-version-dependent. For More Information, See Logging And User Data Directory Details. Symbol Server If You Are Debugging Official Google Chrome Release Builds, Use The Symbol Server: Https://chromium-browser-symsrv.commondatastorage.googleapis.com In Visual Studio, This Goes In Tools > Options Under Debugging > Symbols. You Should Set Up A Local Cache In A Empty Directory On Your Computer. In Windbg You Can Add This To Your Symbol Server Search Path With The Command Below, Where C:\symbols Is A Local Cache Directory: .sympath+ SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Alternately, You Can Set The _NT_SYMBOL_PATH Environment Variable To Include Both The Microsoft And Google Symbol Servers - VS, Windbg, And Other Tools Should Both Respect This Environment Variable: _NT_SYMBOL_PATH=SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Note That Symbol Servers Will Let The Debuggers Download Both The PE Files (DLLs And EXEs) And The PDB Files. Chrome Often Loads Third Party Libraries And Partial Symbols For Some Of These Are Also Public. For Example: AMD: Https://download.amd.com/dir/bin Nvidia: Https://driver-symbols.nvidia.com/ Intel: Https://software.intel.com/sites/downloads/symbols/ For Example, For Completeness, The Following Symbol Server Environment Variable Will Resolve All Of The Above Sources - But This Is More Than Is Normally Needed: _NT_SYMBOL_PATH=SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com;SRV\*C:\symbols\*https://download.amd.com/dir/bin;SRV\*C:\symbols\*https://driver-symbols.nvidia.com/;SRV\*C:\symbols\*https://software.intel.com/sites/downloads/symbols/ Source Indexing You Should Set Up Source Indexing In Your Debugger (.srcfix In Windbg, Tools-> Options-> Debugging-> General-> Enable Source Server Support In Visual Studio) So That The Correct Source Files Will Automatically Be Downloaded Based On Information In The Downloaded Symbols. Additionally, You Must Have Python In Your Path In Order For The Command That Fetches Source Files To Succeed; Launching The Debugger From The Same Environment As Where You Build Chromium Is An Easy Way To Ensure It's Present. This Is Highly Recommended When Debugging Released Google Chrome Builds Or Looking At Crash Dumps. Having The Correct Version Of The Source Files Automatically Show Up Saves Significant Time So You Should Definitely Set This. Multi-process Issues Chromium Can Be Challenging To Debug Because Of Its Multi-process Architecture. When You Select Run In The Debugger, Only The Main Browser Process Will Be Debugged. The Code That Actually Renders Web Pages (the Renderer) And The Plugins Will Be In Separate Processes That's Not (yet!) Being Debugged. The ProcessExplorer Tool Has A Process Tree View Where You Can See How These Processes Are Related. You Can Also Get The Process IDs Associated With Each Tab From The Chrome Task Manager (right-click On An Empty Area Of The Window Title Bar To Open). Automatically Attach To Child Processes There Are Two Visual Studio Extensions That Enable The Debugger To Automatically Attach To All Chrome Processes, So You Can Debug All Of Chrome At Once. Microsoft's Child Process Debugging Power Tool Is A Standalone Extension For This, And VsChromium Is Another Option That Bundles Many Other Additional Features. In Addition To Installing One Of These Extensions, You Must Run Visual Studio As Administrator, Or It Will Silently Fail To Attach To Some Of Chrome's Child Processes. Single-process Mode One Way To Debug Issues Is To Run Chromium In Single-process Mode. This Will Allow You To See The Entire State Of The Program Without Extra Work (although It Will Still Have Many Threads). To Use Single-process Mode, Add The Command-line Flag --single-process This Approach Isn't Perfect Because Some Problems Won't Manifest Themselves In This Mode And Some Features Don't Work And Worker Threads Are Still Spawned Into New Processes. Manually Attaching To A Child Process You Can Attach To The Running Child Processes With The Debugger. Select Tools > Attach To Process And Click The Chrome.exe Process You Want To Attach To. Before Attaching, Make Sure You Have Selected Only Native Code When Attaching To The Process This Is Done By Clicking Select... In The Attach To Process Window And Only Checking Native. If You Forget This, It May Attempt To Attach In "WebKit" Mode To Debug JavaScript, And You'll Get An Error Message "An Operation Is Not Legal In The Current State." You Can Now Debug The Two Processes As If They Were One. When You Are Debugging Multiple Processes, Open The Debug > Windows > Processes Window To Switch Between Them. Sometimes You Are Debugging Something That Only Happens On Startup, And Want To See The Child Process As Soon As It Starts. Use: --renderer-startup-dialog --no-sandbox You Have To Disable The Sandbox Or The Dialog Box Will Be Prohibited From Showing. When The Dialog Appears, Visit Tools > Attach To Process And Attach To The Process Showing The Renderer Startup Dialog. Now You're Debugging In The Renderer And Can Continue Execution By Pressing OK In The Dialog. Startup Dialogs Also Exist For Other Child Process Types: --gpu-startup-dialog, --ppapi-startup-dialog, --utility-startup-dialog, --plugin-startup-dialog (for NPAPI). For Utilities, You Can Add A Service Type --utility-startup-dialog=data_decoder.mojom.DataDecoderService. You Can Also Try The Vs-chromium Plug-in To Attach To The Right Processes. Semi-automatically Attaching The Debugger To Child Processes The Following Flags Cause Child Processes To Wait For 60 Seconds In A Busy Loop For A Debugger To Attach To The Process. Once Either Condition Is True, It Continues On; No Exception Is Thrown. --wait-for-debugger-children[=filter] The Filter, If Provided, Will Fire Only If It Matches The --type Parameter To The Process. Values Include Renderer, Plugin (for NPAPI), Ppapi, Gpu-process, And Utility. When Using This Option, It May Be Helpful To Limit The Number Of Renderer Processes Spawned, Using: --renderer-process-limit=1 Image File Execution Options Using Image File Execution Options (IFEO) Will Not Work Because CreateProcess() Returns The Handle To The Debugger Process Instead Of The Intended Child Process. There Are Also Issues With The Sandbox. Time Travel Debugging You Can Do Time Travel Debugging Using WinDbg Preview (must Be Installed From The Microsoft Store). This Lets You Execute A Program Forward And Backwards. After Capturing A Trace, You Can Set Breakpoints And Step Through Code As Normal, But Also Provides 'backwards' Commands (g-, T-, P-) So That You Can Go Back And Forth Through The Execution. It Is Especially Useful To Set Data Breakpoints (ba Command) And Reverse Continuing, So You Can See When A Certain Variable Was Last Changed To Its Current Value. Chromium Specifics: The Type Of Injection The Time Travel Tracer Needs To Perform Is Incompatible With The Chromium Sandbox. In Order To Record A Trace, You'll Need To Run With --no-sandbox. Chromium Cannot Run Elevated With Administrator Privileges, So The "Launch Executable (advance)" Option Won't Work, You'll Need To Attach After The Process Has Already Launched Via The Checkbox In The Bottom Right. If You Need To Record Startup-like Things, You'll Have To Use --{browser,gpu,renderer,utility}-startup-dialog, Then Attach (and Hope The Relevant Code Hasn't Executed Before That Point). JsDbg -- Data Structure Visualization You Can Install JsDbg As A Plugin For WinDbg Or Visual Studio. It Interactively Lets You Look At Data Structures (such As The DOM Tree, Accessibility Tree, Layout Object Tree, And Others) In A Web Browser As You Debug. See The JsDbg Site For Some Screen Shots And Usage Examples. This Also Works When Examining Memory Dumps (though Not Minidumps), And Also Works Together With Time Travel Debugging. Visual Studio Hints Debug Visualizers Chrome's Custom Debug Visualizers Should Be Added To The Pdb Files And Automatically Picked Up By Visual Studio. The Definitions Are In //tools/win/DebugVisualizers If You Need To Modify Them (the BUILD.gn File There Has Additional Instructions). Don't Step Into Trivial Functions The Debugger Can Be Configured To Automatically Not Step Into Functions Based On Regular Expression. Edit Default.natstepfilter In The Following Directory: For Visual Studio 2015: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Packages\Debugger\Visualizers (for All Users) Or %USERPROFILE%\My Documents\Visual Studio 2015\Visualizers (for The Current User Only) For Visual Studio 2017 Pro: C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\Packages\Debugger\Visualizers (for All Users) Or %USERPROFILE%\My Documents\Visual Studio 2017\Visualizers (for The Current User Only) Add Regular Expressions Of Functions To Not Step Into. Remember To Regex-escape And XML-escape Them, E.g. < For < And \. For A Literal Dot. Example: Operator New NoStepInto Operator Delete NoStepInto Std::.* NoStepInto WTF::.*Ptr ::.* NoStepInto This File Is Read At Start Of A Debugging Session (F5), So You Don't Need To Restart Visual Studio After Changing It. More Info: Microsoft Email Thread V8 And Chromium V8 Supports Many Command-line Flags That Are Useful For Debugging. V8 Command-line Flags Can Be Set Via The Chromium Command-line Flag --js-flags; For Instance: Chrome.exe --js-flags="--trace_exception --heap_stats" Note That Some V8 Command-line Flags Exist Only In The Debug Build Of V8. For A List Of All V8 Flags Try: Chrome.exe --js-flags="--help" Graphics Debugging GPU Acceleration Of Rendering Can Be More Easily Debugged With Tools. See: Graphics Debugging In Visual Studio 2013 Graphical Debugging With NVIDIA NSight Debugging On Another Machine Sometimes It's Useful To Debug Installation And Execution On A Machine Other Than Your Primary Build Box. To Run The Installer On Said Other Machine, First Build The Mini_installer Target On Your Main Build Machine (e.g., Autoninja -C Out\Debug Mini_installer). Next, On The Debug Machine: Make The Build Machine's Build Volume Available On The Debug Machine Either By Mounting It Locally (e.g., Z:\) Or By Crafting A UNC Path To It (e.g., \\builder\src) Open Up A Command Prompt And Change To A Local Disk Run Src\tools\win\copy-installer.bat In The Remote Checkout By Way Of The Mount (e.g., Z:\PATHTOCHECKOUT\src\...) Or UNC Path (e.g., \\builder\src\...). This Will Copy The Installer, DLLs, And PDBs Into Your Debug Machine's C:\out Or C:\build (depending On If You're Rocking The Component=shared_library Build Or Not) Run C:\out\Debug\mini_installer.exe With The Flags Of Your Choice To Install Chrome. This Can Take Some Time, Especially On A Slow Machine. Watch The Task Manager And Wait Until Mini_installer.exe Exits Before Trying To Launch Chrome (by Way Of The Shortcut(s) Created By The Installer) For Extra Pleasure, Add C:\out\Debug To Your _NT_SYMBOL_PATH Environment Variable Consider Reading The Documentation At The Top Of Copy-installer.bat To See How You Can Run It. It Tries To Be Smart And Copy The Right Things, But You May Need To Be Explicit (e.g., "copy-installer.bat Out Debug"). It Is Safe To Re-run The Script To Copy Only Modified Files (after A Rebuild, For Example). You Can Also Use The Zip Action Of The Isolate Scripts (tools\mb\mb.py) To Package All The Files For A Target Into A Single Zip File, For Example: Python Tools\mb\mb.py Zip Out/Release Base_unittests Base_unittests.zip Finding All Memory Allocations It Is Possible To Use Heap Snapshots To Get Call Stacks On All Outstanding Allocations That Use The OS Heap. This Works Particularly Well If Heap Snapshots Are Started As Soon As The Chrome Browser Process Is Created, But Before It Starts Running. Details Can Be Found In This Batch File. However, With PartitionAlloc Everywhere Most Chromium Allocations No Longer Use The Windows Heap So This Will Only Find A Subset Of Allocations, Mostly From OS DLLs. Find Memory Leaks Note: As With Heap Snapshots The Utility Of UMDH Is Greatly Reduced Now Because PartitionAlloc Everywhere Has Mostly Replaced The Windows Heap. The Windows Heap Manager Has A Really Useful Debug Flag, Where It Can Be Asked To Capture And Store A Stack Trace With Every Allocation. The Tool To Scrape These Stack Traces Out Of Processes Is UMDH, Which Comes With WinDbg. UMDH Is Great. It Will Capture A Snapshot Of The Heap State As Many Times As You Like, And It'll Do It Fairly Quickly. You Then Run It Again Against Either A Single Snapshot, Or A Pair Of Snapshots, At Which Time It'll Symbolize The Stack Traces And Aggregate Usage Up To Unique Stack Traces. Turning On The User Stack Trace Database For Chrome.exe With Gflags.exe Makes It Run Unbearably Slowly; However, Turning On The User Stack Trace Database On For The Browser Alone Is Just Fine. While It's Possible To Turn On The User Stack Database With The "!gflag" Debugging Extension, It's Too Late To Do This By The Time The Initial Debugger Breakpoint Hits. The Only Reasonable Way To Do This Is To Launch GFlags.exe, Enable The User Stack Trace Database (per Image Below), Launch Chrome Under The Debugger. Set A Breakpont When Chrome.dll Loads With "sxe Ld Chrome.dll". Step Up, To Allow Chrome.dll To Initialize. Disable The Stack Trace Database In GFlags.exe. Continue Chrome, Optionally Detaching The Debugger. Image GFlags.exe Settings For User Mode Stack Trace Database. If You Then Ever Suffer A Browser Memory Leak, You Can Snarf A Dump Of The Process With Umdh -p: > Chrome-browser-leak-umdh-dump.txt Which Can Then Typically Be "trivially" Analyzed To Find The Culprit. Miscellaneous Note That By Default Application Verifier Only Works With Non-official Builds Of Chromium. To Use Application Verifier On Official Builds You Need To Add --disable-features=RendererCodeIntegrity To Avoid Sandbox Crashes In Renderer Processes. See Crbug.com/1004989 For Details. See Also This Page. Application Verifier Is A Free Tool From Microsoft (available As Part Of The Windows SDK) That Can Be Used To Flush Out Programming Errors. Starting With M68 Application Verifier Can Be Enabled For Chrome.exe Without Needing To Disable The Sandbox. After Adding Chrome.exe To The List Of Applications To Be Stressed You Need To Expand The List Of Basics Checks And Disable The Leak Checks. You May Also Need To Disable Handles And Locks Checks Depending On Your Graphics Driver And Specific Chrome Version, But The Eventual Goal Is To Have Chrome Run With Handles And Locks Checks Enabled. When Bugs Are Found Chrome Will Trigger A Breakpoint So Running All Chrome Processes Under A Debugger Is Recommended. Chrome Will Run Much More Slowly Because Application Verifier Puts Every Heap Allocation On A Separate Page. Note That With PartitionAlloc Everywhere Most Chromium Allocations Don't Actually Go Through The Windows Heap And Are Therefore Unaffected By Application Verifier. You Can Check The Undocumented 'Cuzz' Checkbox In Application Verifier To Get The Windows Thread Scheduler To Add Some Extra Randomness In Order To Help Expose Race Conditions In Your Code. To Put A Breakpoint On CreateFile(), Add This Break Point: {,,kernel32.dll}_CreateFileW@28 {,,kernel32.dll} Specifies The DLL (context Operator). _ Prefix Means Extern "C". @28 Postfix Means _stdcall With The Stack Pop At The End Of The Function. I.e. The Number Of Arguments In BYTES. You Can Use DebugView From SysInternals Or Sawbuck To View LOG() Messages That Normally Go To Stderr On POSIX.

The Chromium Projects Home Chromium ChromiumOS Quick links Report bugs Discuss Other sites Chromium Blog Google Chrome Extensions Except as otherwise  noted , the content of this page is licensed under a  Creative Commons Attribution 2.5 license , and examples are licensed under the  BSD License . Privacy Edit this page For Developers  &gt;  How-Tos  &gt; Debugging Chromium on Windows First see  get the code  for checkout and build instructions. Getting started You can use Visual Studio's built-in debugger or  WinDBG  to debug Chromium. You don't need to use the IDE to build in order to use the debugger: autoninja is used to build Chromium and most developers invoke it from a command prompt, and then open the IDE for debugging as necessary. To start debugging an already-built executable with Visual Studio just launch Visual Studio (2019 or higher) and select File-&gt; Open-&gt; Project/Solution (Ctrl+Shift+O) and select the executable of interest. This will create a solution with that executable as the 'project'. You can then launch the debugger with F5 or F11 or from the Debug menu. If you right-click on the executable in Solution Explorer and select properties then you can edit things such as the executable path, command-line arguments, and working directory. You can add additional executables to the solution by using File-&gt; Add-&gt; Existing Project and selecting another already-built executable. You can select which one to debug by right-clicking on one of them in Solution Explorer and selecting Set as Startup Project. When your solution file is customized to your taste you can save it to a directory such as out\solutions. Saving it there helps ensure that relative paths to source files, printed from build commands, will correctly identify the source files. The Tools menu can be used to add commands to do things like invoke autoninja to build Chrome, compile the selected source file, or other things. Visual Studio 2017 is not recommended for debugging of Chromium - use a newer version for best performance and stability. symbol_level=2  is the default on Windows and gives full debugging information with types, locals, globals, function names, and source/line information.  symbol_level=1  creates smaller PDBs with just function names, and source/line information - source-level debugging is still supported (new from June 2019), but local variables and type information are missing.  symbol_level=0  gives extremely limited debugging abilities, mostly just viewing call stacks when Chromium crashes. Browsing source code If you use a solution file generated by gn ( gn gen --ide=vs ) then Intellisense may help you navigate the code. If this doesn't work or if you use a solution created as above then you may want to install  VsChromium  to help navigate the code, as well as using  https://source.chromium.org . Profiles It's a good idea to use a different Chrome profile for your debugging. If you are debugging Google Chrome branded builds, or use a Chromium build as your primary browser, the profiles can collide so you can't run both at once, and your stable browser might see profile versions from the future (Google Chrome and Chromium use different profile directories by default so won't collide). Use the command-line option: --user-data-dir =C:\tmp\my_debug_profile (replace the path as necessary) Using the IDE, go to the  Debugging  tab of the properties of the chrome project, and set the  Command Arguments. Chrome debug log Enable Chrome debug logging to a file by passing  --enable-logging --v=1  command-line flags at startup. Debug builds place the  chrome_debug.log  file in the  out\Debug  directory. Release builds place the file in the top level of the user data Chromium app directory, which is OS-version-dependent. For more information, see  logging  and  user data directory  details. Symbol server If you are debugging official Google Chrome release builds, use the symbol server: https://chromium-browser-symsrv.commondatastorage.googleapis.com In Visual Studio, this goes in  Tools &gt; Options  under  Debugging &gt; Symbols . You should set up a local cache in a empty directory on your computer. In windbg you can add this to your symbol server search path with the command below, where C:\symbols is a local cache directory: .sympath+ SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Alternately, You can set the _NT_SYMBOL_PATH environment variable to include both the Microsoft and Google symbol servers - VS, windbg, and other tools should both respect this environment variable: _NT_SYMBOL_PATH =SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols ;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Note that symbol servers will let the debuggers download both the PE files (DLLs and EXEs) and the PDB files. Chrome often loads third party libraries and partial symbols for some of these are also public. For example: AMD : https://download.amd.com/dir/bin Nvidia : https://driver-symbols.nvidia.com/ Intel : https://software.intel.com/sites/downloads/symbols/ For example, for completeness, the following symbol server environment variable will resolve all of the above sources - but this is more than is normally needed: _NT_SYMBOL_PATH=SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com;SRV\*C:\symbols\*https://download.amd.com/dir/bin;SRV\*C:\symbols\*https://driver-symbols.nvidia.com/;SRV\*C:\symbols\*https://software.intel.com/sites/downloads/symbols/ Source indexing You should set up source indexing in your debugger ( .srcfix  in windbg, Tools-&gt; Options-&gt; Debugging-&gt; General-&gt;  Enable source server support  in Visual Studio) so that the correct source files will automatically be downloaded based on information in the downloaded symbols. Additionally, you must have  python  in your  path  in order for the  command that fetches source files  to succeed; launching the debugger from the same environment as where you build Chromium is an easy way to ensure it's present. This is highly recommended when debugging released Google Chrome builds or looking at crash dumps. Having the correct version of the source files automatically show up saves significant time so you should definitely set this. Multi-process issues Chromium can be challenging to debug because of its  multi-process architecture . When you select  Run  in the debugger, only the main browser process will be debugged. The code that actually renders web pages (the Renderer) and the plugins will be in separate processes that's not (yet!) being debugged. The  ProcessExplorer  tool has a process tree view where you can see how these processes are related. You can also get the process IDs associated with each tab from the Chrome Task Manager (right-click on an empty area of the window title bar to open). Automatically attach to child processes There are two Visual Studio extensions that enable the debugger to automatically attach to all Chrome processes, so you can debug all of Chrome at once. Microsoft's  Child Process Debugging Power Tool  is a standalone extension for this, and  VsChromium  is another option that bundles many other additional features. In addition to installing one of these extensions, you  must  run Visual Studio as Administrator, or it will silently fail to attach to some of Chrome's child processes. Single-process mode One way to debug issues is to run Chromium in single-process mode. This will allow you to see the entire state of the program without extra work (although it will still have many threads). To use single-process mode, add the command-line flag --single-process This approach isn't perfect because some problems won't manifest themselves in this mode and some features don't work and worker threads are still spawned into new processes. Manually attaching to a child process You can attach to the running child processes with the debugger. Select  Tools &gt; Attach to Process  and click the  chrome.exe  process you want to attach to. Before attaching, make sure you have selected only Native code when attaching to the process This is done by clicking Select... in the Attach to Process window and only checking Native. If you forget this, it may attempt to attach in "WebKit" mode to debug JavaScript, and you'll get an error message "An operation is not legal in the current state." You can now debug the two processes as if they were one. When you are debugging multiple processes, open the  Debug &gt; Windows &gt; Processes  window to switch between them. Sometimes you are debugging something that only happens on startup, and want to see the child process as soon as it starts. Use: --renderer-startup-dialog --no-sandbox You have to disable the sandbox or the dialog box will be prohibited from showing. When the dialog appears, visit Tools &gt; Attach to Process and attach to the process showing the Renderer startup dialog. Now you're debugging in the renderer and can continue execution by pressing OK in the dialog. Startup dialogs also exist for other child process types:  --gpu-startup-dialog ,  --ppapi-startup-dialog ,  --utility-startup-dialog ,  --plugin-startup-dialog  (for NPAPI). For utilities, you can add a service type  --utility-startup-dialog=data_decoder.mojom.DataDecoderService . You can also try  the vs-chromium plug-in  to attach to the right processes. Semi-automatically attaching the debugger to child processes The following flags cause child processes to wait for 60 seconds in a busy loop for a debugger to attach to the process. Once either condition is true, it continues on; no exception is thrown. --wait-for-debugger-children [=filter] The filter, if provided, will fire only if it matches the  --type  parameter to the process. Values include  renderer ,  plugin  (for NPAPI),  ppapi ,  gpu-process , and  utility . When using this option, it may be helpful to limit the number of renderer processes spawned, using: --renderer-process-limit = 1 Image File Execution Options Using Image File Execution Options (IFEO) will not work because CreateProcess() returns the handle to the debugger process instead of the intended child process. There are also issues with the sandbox. Time travel debugging You can do  time travel debugging using WinDbg Preview  (must be installed from the Microsoft Store). This lets you execute a program forward and backwards. After capturing a trace, you can set breakpoints and step through code as normal, but also provides 'backwards' commands (g-, t-, p-) so that you can go back and forth through the execution. It is especially useful to set data breakpoints ( ba command ) and reverse continuing, so you can see when a certain variable was last changed to its current value. Chromium specifics: The type of injection the time travel tracer needs to perform is incompatible with the Chromium sandbox. In order to record a trace, you'll need to run with  --no-sandbox . Chromium cannot run elevated with Administrator privileges, so the "Launch executable (advance)" option won't work, you'll need to attach after the process has already launched via the checkbox in the bottom right. If you need to record startup-like things, you'll have to use --{browser,gpu,renderer,utility}-startup-dialog, then attach (and hope the relevant code hasn't executed before that point). JsDbg -- data structure visualization You can install  JsDbg as a plugin for WinDbg or Visual Studio . It interactively lets you look at data structures (such as the DOM tree, Accessibility tree, layout object tree, and others) in a web browser as you debug. See the  JsDbg site  for some screen shots and usage examples. This also works when examining memory dumps (though not minidumps), and also works together with time travel debugging. Visual Studio hints Debug visualizers Chrome's custom debug visualizers should be added to the pdb files and automatically picked up by Visual Studio. The definitions are in  //tools/win/DebugVisualizers  if you need to modify them (the BUILD.gn file there has additional instructions). Don't step into trivial functions The debugger can be configured to automatically not step into functions based on regular expression. Edit  default.natstepfilter  in the following directory: For Visual Studio 2015:  C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Packages\Debugger\Visualizers  (for all users) or  %USERPROFILE%\My Documents\Visual Studio 2015\Visualizers  (for the current user only) For Visual Studio 2017 Pro:  C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\Packages\Debugger\Visualizers  (for all users) or  %USERPROFILE%\My Documents\Visual Studio 2017\Visualizers  (for the current user only) Add regular expressions of functions to not step into. Remember to regex-escape  and  XML-escape them, e.g. &lt; for &lt; and \. for a literal dot. Example: &lt; Function &gt; &lt; Name &gt; operator new &lt;/ Name &gt; &lt; Action &gt; NoStepInto &lt;/ Action &gt; &lt;/ Function &gt; &lt; Function &gt; &lt; Name &gt; operator delete &lt;/ Name &gt; &lt; Action &gt; NoStepInto &lt;/ Action &gt; &lt;/ Function &gt; &lt;!-- Skip everything in std --&gt; &lt; Function &gt; &lt; Name &gt; std::.* &lt;/ Name &gt; &lt; Action &gt; NoStepInto &lt;/ Action &gt; &lt;/ Function &gt; &lt;!-- all methods on WebKit OwnPtr and variants, ... WTF::*Ptr&lt;*&gt;::* --&gt; &lt; Function &gt; &lt; Name &gt; WTF::.*Ptr&lt;.*&gt;::.* &lt;/ Name &gt; &lt; Action &gt; NoStepInto &lt;/ Action &gt; &lt;/ Function &gt; This file is read at start of a debugging session (F5), so you don't need to restart Visual Studio after changing it. More info:  Microsoft email thread V8 and Chromium V8 supports many command-line flags that are useful for debugging. V8 command-line flags can be set via the Chromium command-line flag --js-flags; for instance: chrome.exe --js-flags= "--trace_exception --heap_stats" Note that some V8 command-line flags exist only in the debug build of V8. For a list of all V8 flags try: chrome.exe --js-flags= "--help" Graphics debugging GPU Acceleration of rendering can be more easily debugged with tools. See: Graphics Debugging in Visual Studio 2013 Graphical debugging with NVIDIA NSight Debugging on another machine Sometimes it's useful to debug installation and execution on a machine other than your primary build box. To run the installer on said other machine, first build the mini_installer target on your main build machine (e.g., autoninja -C out\Debug mini_installer). Next, on the debug machine: Make the build machine's build volume available on the debug machine either by mounting it locally (e.g., Z:\) or by crafting a UNC path to it (e.g., \\builder\src) Open up a command prompt and change to a local disk Run src\tools\win\ copy-installer.bat  in the remote checkout by way of the mount (e.g., Z:\PATHTOCHECKOUT\src\...) or UNC path (e.g., \\builder\src\...). This will copy the installer, DLLs, and PDBs into your debug machine's C:\out or C:\build (depending on if you're rocking the component=shared_library build or not) Run  C:\out\Debug\mini_installer.exe  with the flags of your choice to install Chrome. This can take some time, especially on a slow machine. Watch the Task Manager and wait until mini_installer.exe exits before trying to launch Chrome (by way of the shortcut(s) created by the installer) For extra pleasure, add C:\out\Debug to your _NT_SYMBOL_PATH environment variable Consider reading the documentation at the top of copy-installer.bat to see how you can run it. It tries to be smart and copy the right things, but you may need to be explicit (e.g., "copy-installer.bat out Debug"). It is safe to re-run the script to copy only modified files (after a rebuild, for example). You can also use the zip action of the isolate scripts (tools\mb\mb.py) to package all the files for a target into a single zip file, for example: python tools\mb\mb.py zip out/Release base_unittests base_unittests. zip Finding all memory allocations It is possible to use Heap Snapshots to get call stacks on all outstanding allocations that use the OS heap. This works particularly well if heap snapshots are started as soon as the Chrome browser process is created, but before it starts running. Details can be found in  this batch file . However, with  PartitionAlloc Everywhere  most Chromium allocations no longer use the Windows heap so this will only find a subset of allocations, mostly from OS DLLs. Find memory leaks Note: as with Heap Snapshots the utility of UMDH is greatly reduced now because PartitionAlloc Everywhere has mostly replaced the Windows heap. The Windows heap manager has a really useful debug flag, where it can be asked to capture and store a stack trace with every allocation. The tool to scrape these stack traces out of processes is UMDH, which comes with  WinDbg . UMDH is great. It will capture a snapshot of the heap state as many times as you like, and it'll do it fairly quickly. You then run it again against either a single snapshot, or a pair of snapshots, at which time it'll symbolize the stack traces and aggregate usage up to unique stack traces. Turning on the user stack trace database for chrome.exe with gflags.exe makes it run unbearably slowly; however, turning on the user stack trace database on for the browser alone is just fine. While it's possible to turn on the user stack database with the "!gflag" debugging extension, it's too late to do this by the time the initial debugger breakpoint hits. The only reasonable way to do this is to Launch GFlags.exe, Enable the user stack trace database (per image below), Launch Chrome under the debugger. Set a breakpont when chrome.dll loads with "sxe ld chrome.dll". Step up, to allow Chrome.dll to initialize. Disable the stack trace database in GFlags.exe. Continue chrome, optionally detaching the debugger. GFlags.exe settings for user mode stack trace database. If you then ever suffer a browser memory leak, you can snarf a dump of the process with umdh - p :&lt;my browser pid&gt; &gt; chrome-browser-leak-umdh-dump.txt which can then typically be "trivially" analyzed to find the culprit. Miscellaneous Note that by default Application Verifier only works with non-official builds of Chromium. To use Application Verifier on official builds you need to add --disable-features=RendererCodeIntegrity to avoid sandbox crashes in renderer processes. See  crbug.com/1004989  for details. See also  this page . Application Verifier  is a free tool from Microsoft (available as part of the Windows SDK) that can be used to flush out programming errors. Starting with M68 Application Verifier can be enabled for chrome.exe without needing to disable the sandbox. After adding chrome.exe to the list of applications to be stressed you need to expand the list of Basics checks and disable the  Leak  checks. You may also need to disable  Handles  and  Locks  checks depending on your graphics driver and specific Chrome version, but the eventual goal is to have Chrome run with  Handles  and  Locks  checks enabled. When bugs are found Chrome will trigger a breakpoint so running all Chrome processes under a debugger is recommended. Chrome will run much more slowly because Application Verifier puts every heap allocation on a separate page. Note that with PartitionAlloc Everywhere most Chromium allocations don't actually go through the Windows heap and are therefore unaffected by Application Verifier. You can check the undocumented 'Cuzz' checkbox in Application Verifier to get the Windows thread scheduler to add some extra randomness in order to help expose race conditions in your code. To put a breakpoint on CreateFile(), add this break point: {,,kernel32.dll}_CreateFileW@28 {,,kernel32.dll} specifies the DLL (context operator). _ prefix means extern "C". @28 postfix means _stdcall with the stack pop at the end of the function. i.e. the number of arguments in BYTES. You can use  DebugView  from SysInternals or  sawbuck  to view LOG() messages that normally go to stderr on POSIX.

“The Chromium Logo The Chromium Projects Home Chromium ChromiumOS Quick Links Report Bugs Discuss Other Sites Chromium Blog Google Chrome Extensions Except As Otherwise Noted, The Content Of This Page Is Licensed Under A Creative Commons Attribution 2.5 License, And Examples Are Licensed Under The BSD License. Privacy Edit This Page For Developers > How-Tos > Debugging Chromium On Windows First See Get The Code For Checkout And Build Instructions. Getting Started You Can Use Visual Studio's Built-in Debugger Or WinDBG To Debug Chromium. You Don't Need To Use The IDE To Build In Order To Use The Debugger: Autoninja Is Used To Build Chromium And Most Developers Invoke It From A Command Prompt, And Then Open The IDE For Debugging As Necessary. To Start Debugging An Already-built Executable With Visual Studio Just Launch Visual Studio (2019 Or Higher) And Select File-> Open-> Project/Solution (Ctrl+Shift+O) And Select The Executable Of Interest. This Will Create A Solution With That Executable As The 'project'. You Can Then Launch The Debugger With F5 Or F11 Or From The Debug Menu. If You Right-click On The Executable In Solution Explorer And Select Properties Then You Can Edit Things Such As The Executable Path, Command-line Arguments, And Working Directory. You Can Add Additional Executables To The Solution By Using File-> Add-> Existing Project And Selecting Another Already-built Executable. You Can Select Which One To Debug By Right-clicking On One Of Them In Solution Explorer And Selecting Set As Startup Project. When Your Solution File Is Customized To Your Taste You Can Save It To A Directory Such As Out\solutions. Saving It There Helps Ensure That Relative Paths To Source Files, Printed From Build Commands, Will Correctly Identify The Source Files. The Tools Menu Can Be Used To Add Commands To Do Things Like Invoke Autoninja To Build Chrome, Compile The Selected Source File, Or Other Things. Visual Studio 2017 Is Not Recommended For Debugging Of Chromium - Use A Newer Version For Best Performance And Stability. Symbol_level=2 Is The Default On Windows And Gives Full Debugging Information With Types, Locals, Globals, Function Names, And Source/line Information. Symbol_level=1 Creates Smaller PDBs With Just Function Names, And Source/line Information - Source-level Debugging Is Still Supported (new From June 2019), But Local Variables And Type Information Are Missing. Symbol_level=0 Gives Extremely Limited Debugging Abilities, Mostly Just Viewing Call Stacks When Chromium Crashes. Browsing Source Code If You Use A Solution File Generated By Gn (gn Gen --ide=vs) Then Intellisense May Help You Navigate The Code. If This Doesn't Work Or If You Use A Solution Created As Above Then You May Want To Install VsChromium To Help Navigate The Code, As Well As Using Https://source.chromium.org. Profiles It's A Good Idea To Use A Different Chrome Profile For Your Debugging. If You Are Debugging Google Chrome Branded Builds, Or Use A Chromium Build As Your Primary Browser, The Profiles Can Collide So You Can't Run Both At Once, And Your Stable Browser Might See Profile Versions From The Future (Google Chrome And Chromium Use Different Profile Directories By Default So Won't Collide). Use The Command-line Option: --user-data-dir=C:\tmp\my_debug_profile (replace The Path As Necessary) Using The IDE, Go To The Debugging Tab Of The Properties Of The Chrome Project, And Set The Command Arguments. Chrome Debug Log Enable Chrome Debug Logging To A File By Passing --enable-logging --v=1 Command-line Flags At Startup. Debug Builds Place The Chrome_debug.log File In The Out\Debug Directory. Release Builds Place The File In The Top Level Of The User Data Chromium App Directory, Which Is OS-version-dependent. For More Information, See Logging And User Data Directory Details. Symbol Server If You Are Debugging Official Google Chrome Release Builds, Use The Symbol Server: Https://chromium-browser-symsrv.commondatastorage.googleapis.com In Visual Studio, This Goes In Tools > Options Under Debugging > Symbols. You Should Set Up A Local Cache In A Empty Directory On Your Computer. In Windbg You Can Add This To Your Symbol Server Search Path With The Command Below, Where C:\symbols Is A Local Cache Directory: .sympath+ SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Alternately, You Can Set The _NT_SYMBOL_PATH Environment Variable To Include Both The Microsoft And Google Symbol Servers - VS, Windbg, And Other Tools Should Both Respect This Environment Variable: _NT_SYMBOL_PATH=SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Note That Symbol Servers Will Let The Debuggers Download Both The PE Files (DLLs And EXEs) And The PDB Files. Chrome Often Loads Third Party Libraries And Partial Symbols For Some Of These Are Also Public. For Example: AMD: Https://download.amd.com/dir/bin Nvidia: Https://driver-symbols.nvidia.com/ Intel: Https://software.intel.com/sites/downloads/symbols/ For Example, For Completeness, The Following Symbol Server Environment Variable Will Resolve All Of The Above Sources - But This Is More Than Is Normally Needed: _NT_SYMBOL_PATH=SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com;SRV\*C:\symbols\*https://download.amd.com/dir/bin;SRV\*C:\symbols\*https://driver-symbols.nvidia.com/;SRV\*C:\symbols\*https://software.intel.com/sites/downloads/symbols/ Source Indexing You Should Set Up Source Indexing In Your Debugger (.srcfix In Windbg, Tools-> Options-> Debugging-> General-> Enable Source Server Support In Visual Studio) So That The Correct Source Files Will Automatically Be Downloaded Based On Information In The Downloaded Symbols. Additionally, You Must Have Python In Your Path In Order For The Command That Fetches Source Files To Succeed; Launching The Debugger From The Same Environment As Where You Build Chromium Is An Easy Way To Ensure It's Present. This Is Highly Recommended When Debugging Released Google Chrome Builds Or Looking At Crash Dumps. Having The Correct Version Of The Source Files Automatically Show Up Saves Significant Time So You Should Definitely Set This. Multi-process Issues Chromium Can Be Challenging To Debug Because Of Its Multi-process Architecture. When You Select Run In The Debugger, Only The Main Browser Process Will Be Debugged. The Code That Actually Renders Web Pages (the Renderer) And The Plugins Will Be In Separate Processes That's Not (yet!) Being Debugged. The ProcessExplorer Tool Has A Process Tree View Where You Can See How These Processes Are Related. You Can Also Get The Process IDs Associated With Each Tab From The Chrome Task Manager (right-click On An Empty Area Of The Window Title Bar To Open). Automatically Attach To Child Processes There Are Two Visual Studio Extensions That Enable The Debugger To Automatically Attach To All Chrome Processes, So You Can Debug All Of Chrome At Once. Microsoft's Child Process Debugging Power Tool Is A Standalone Extension For This, And VsChromium Is Another Option That Bundles Many Other Additional Features. In Addition To Installing One Of These Extensions, You Must Run Visual Studio As Administrator, Or It Will Silently Fail To Attach To Some Of Chrome's Child Processes. Single-process Mode One Way To Debug Issues Is To Run Chromium In Single-process Mode. This Will Allow You To See The Entire State Of The Program Without Extra Work (although It Will Still Have Many Threads). To Use Single-process Mode, Add The Command-line Flag --single-process This Approach Isn't Perfect Because Some Problems Won't Manifest Themselves In This Mode And Some Features Don't Work And Worker Threads Are Still Spawned Into New Processes. Manually Attaching To A Child Process You Can Attach To The Running Child Processes With The Debugger. Select Tools > Attach To Process And Click The Chrome.exe Process You Want To Attach To. Before Attaching, Make Sure You Have Selected Only Native Code When Attaching To The Process This Is Done By Clicking Select... In The Attach To Process Window And Only Checking Native. If You Forget This, It May Attempt To Attach In "WebKit" Mode To Debug JavaScript, And You'll Get An Error Message "An Operation Is Not Legal In The Current State." You Can Now Debug The Two Processes As If They Were One. When You Are Debugging Multiple Processes, Open The Debug > Windows > Processes Window To Switch Between Them. Sometimes You Are Debugging Something That Only Happens On Startup, And Want To See The Child Process As Soon As It Starts. Use: --renderer-startup-dialog --no-sandbox You Have To Disable The Sandbox Or The Dialog Box Will Be Prohibited From Showing. When The Dialog Appears, Visit Tools > Attach To Process And Attach To The Process Showing The Renderer Startup Dialog. Now You're Debugging In The Renderer And Can Continue Execution By Pressing OK In The Dialog. Startup Dialogs Also Exist For Other Child Process Types: --gpu-startup-dialog, --ppapi-startup-dialog, --utility-startup-dialog, --plugin-startup-dialog (for NPAPI). For Utilities, You Can Add A Service Type --utility-startup-dialog=data_decoder.mojom.DataDecoderService. You Can Also Try The Vs-chromium Plug-in To Attach To The Right Processes. Semi-automatically Attaching The Debugger To Child Processes The Following Flags Cause Child Processes To Wait For 60 Seconds In A Busy Loop For A Debugger To Attach To The Process. Once Either Condition Is True, It Continues On; No Exception Is Thrown. --wait-for-debugger-children[=filter] The Filter, If Provided, Will Fire Only If It Matches The --type Parameter To The Process. Values Include Renderer, Plugin (for NPAPI), Ppapi, Gpu-process, And Utility. When Using This Option, It May Be Helpful To Limit The Number Of Renderer Processes Spawned, Using: --renderer-process-limit=1 Image File Execution Options Using Image File Execution Options (IFEO) Will Not Work Because CreateProcess() Returns The Handle To The Debugger Process Instead Of The Intended Child Process. There Are Also Issues With The Sandbox. Time Travel Debugging You Can Do Time Travel Debugging Using WinDbg Preview (must Be Installed From The Microsoft Store). This Lets You Execute A Program Forward And Backwards. After Capturing A Trace, You Can Set Breakpoints And Step Through Code As Normal, But Also Provides 'backwards' Commands (g-, T-, P-) So That You Can Go Back And Forth Through The Execution. It Is Especially Useful To Set Data Breakpoints (ba Command) And Reverse Continuing, So You Can See When A Certain Variable Was Last Changed To Its Current Value. Chromium Specifics: The Type Of Injection The Time Travel Tracer Needs To Perform Is Incompatible With The Chromium Sandbox. In Order To Record A Trace, You'll Need To Run With --no-sandbox. Chromium Cannot Run Elevated With Administrator Privileges, So The "Launch Executable (advance)" Option Won't Work, You'll Need To Attach After The Process Has Already Launched Via The Checkbox In The Bottom Right. If You Need To Record Startup-like Things, You'll Have To Use --{browser,gpu,renderer,utility}-startup-dialog, Then Attach (and Hope The Relevant Code Hasn't Executed Before That Point). JsDbg -- Data Structure Visualization You Can Install JsDbg As A Plugin For WinDbg Or Visual Studio. It Interactively Lets You Look At Data Structures (such As The DOM Tree, Accessibility Tree, Layout Object Tree, And Others) In A Web Browser As You Debug. See The JsDbg Site For Some Screen Shots And Usage Examples. This Also Works When Examining Memory Dumps (though Not Minidumps), And Also Works Together With Time Travel Debugging. Visual Studio Hints Debug Visualizers Chrome's Custom Debug Visualizers Should Be Added To The Pdb Files And Automatically Picked Up By Visual Studio. The Definitions Are In //tools/win/DebugVisualizers If You Need To Modify Them (the BUILD.gn File There Has Additional Instructions). Don't Step Into Trivial Functions The Debugger Can Be Configured To Automatically Not Step Into Functions Based On Regular Expression. Edit Default.natstepfilter In The Following Directory: For Visual Studio 2015: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Packages\Debugger\Visualizers (for All Users) Or %USERPROFILE%\My Documents\Visual Studio 2015\Visualizers (for The Current User Only) For Visual Studio 2017 Pro: C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\Packages\Debugger\Visualizers (for All Users) Or %USERPROFILE%\My Documents\Visual Studio 2017\Visualizers (for The Current User Only) Add Regular Expressions Of Functions To Not Step Into. Remember To Regex-escape And XML-escape Them, E.g. < For < And \. For A Literal Dot. Example: Operator New NoStepInto Operator Delete NoStepInto Std::.* NoStepInto WTF::.*Ptr ::.* NoStepInto This File Is Read At Start Of A Debugging Session (F5), So You Don't Need To Restart Visual Studio After Changing It. More Info: Microsoft Email Thread V8 And Chromium V8 Supports Many Command-line Flags That Are Useful For Debugging. V8 Command-line Flags Can Be Set Via The Chromium Command-line Flag --js-flags; For Instance: Chrome.exe --js-flags="--trace_exception --heap_stats" Note That Some V8 Command-line Flags Exist Only In The Debug Build Of V8. For A List Of All V8 Flags Try: Chrome.exe --js-flags="--help" Graphics Debugging GPU Acceleration Of Rendering Can Be More Easily Debugged With Tools. See: Graphics Debugging In Visual Studio 2013 Graphical Debugging With NVIDIA NSight Debugging On Another Machine Sometimes It's Useful To Debug Installation And Execution On A Machine Other Than Your Primary Build Box. To Run The Installer On Said Other Machine, First Build The Mini_installer Target On Your Main Build Machine (e.g., Autoninja -C Out\Debug Mini_installer). Next, On The Debug Machine: Make The Build Machine's Build Volume Available On The Debug Machine Either By Mounting It Locally (e.g., Z:\) Or By Crafting A UNC Path To It (e.g., \\builder\src) Open Up A Command Prompt And Change To A Local Disk Run Src\tools\win\copy-installer.bat In The Remote Checkout By Way Of The Mount (e.g., Z:\PATHTOCHECKOUT\src\...) Or UNC Path (e.g., \\builder\src\...). This Will Copy The Installer, DLLs, And PDBs Into Your Debug Machine's C:\out Or C:\build (depending On If You're Rocking The Component=shared_library Build Or Not) Run C:\out\Debug\mini_installer.exe With The Flags Of Your Choice To Install Chrome. This Can Take Some Time, Especially On A Slow Machine. Watch The Task Manager And Wait Until Mini_installer.exe Exits Before Trying To Launch Chrome (by Way Of The Shortcut(s) Created By The Installer) For Extra Pleasure, Add C:\out\Debug To Your _NT_SYMBOL_PATH Environment Variable Consider Reading The Documentation At The Top Of Copy-installer.bat To See How You Can Run It. It Tries To Be Smart And Copy The Right Things, But You May Need To Be Explicit (e.g., "copy-installer.bat Out Debug"). It Is Safe To Re-run The Script To Copy Only Modified Files (after A Rebuild, For Example). You Can Also Use The Zip Action Of The Isolate Scripts (tools\mb\mb.py) To Package All The Files For A Target Into A Single Zip File, For Example: Python Tools\mb\mb.py Zip Out/Release Base_unittests Base_unittests.zip Finding All Memory Allocations It Is Possible To Use Heap Snapshots To Get Call Stacks On All Outstanding Allocations That Use The OS Heap. This Works Particularly Well If Heap Snapshots Are Started As Soon As The Chrome Browser Process Is Created, But Before It Starts Running. Details Can Be Found In This Batch File. However, With PartitionAlloc Everywhere Most Chromium Allocations No Longer Use The Windows Heap So This Will Only Find A Subset Of Allocations, Mostly From OS DLLs. Find Memory Leaks Note: As With Heap Snapshots The Utility Of UMDH Is Greatly Reduced Now Because PartitionAlloc Everywhere Has Mostly Replaced The Windows Heap. The Windows Heap Manager Has A Really Useful Debug Flag, Where It Can Be Asked To Capture And Store A Stack Trace With Every Allocation. The Tool To Scrape These Stack Traces Out Of Processes Is UMDH, Which Comes With WinDbg. UMDH Is Great. It Will Capture A Snapshot Of The Heap State As Many Times As You Like, And It'll Do It Fairly Quickly. You Then Run It Again Against Either A Single Snapshot, Or A Pair Of Snapshots, At Which Time It'll Symbolize The Stack Traces And Aggregate Usage Up To Unique Stack Traces. Turning On The User Stack Trace Database For Chrome.exe With Gflags.exe Makes It Run Unbearably Slowly; However, Turning On The User Stack Trace Database On For The Browser Alone Is Just Fine. While It's Possible To Turn On The User Stack Database With The "!gflag" Debugging Extension, It's Too Late To Do This By The Time The Initial Debugger Breakpoint Hits. The Only Reasonable Way To Do This Is To Launch GFlags.exe, Enable The User Stack Trace Database (per Image Below), Launch Chrome Under The Debugger. Set A Breakpont When Chrome.dll Loads With "sxe Ld Chrome.dll". Step Up, To Allow Chrome.dll To Initialize. Disable The Stack Trace Database In GFlags.exe. Continue Chrome, Optionally Detaching The Debugger. Image GFlags.exe Settings For User Mode Stack Trace Database. If You Then Ever Suffer A Browser Memory Leak, You Can Snarf A Dump Of The Process With Umdh -p: > Chrome-browser-leak-umdh-dump.txt Which Can Then Typically Be "trivially" Analyzed To Find The Culprit. Miscellaneous Note That By Default Application Verifier Only Works With Non-official Builds Of Chromium. To Use Application Verifier On Official Builds You Need To Add --disable-features=RendererCodeIntegrity To Avoid Sandbox Crashes In Renderer Processes. See Crbug.com/1004989 For Details. See Also This Page. Application Verifier Is A Free Tool From Microsoft (available As Part Of The Windows SDK) That Can Be Used To Flush Out Programming Errors. Starting With M68 Application Verifier Can Be Enabled For Chrome.exe Without Needing To Disable The Sandbox. After Adding Chrome.exe To The List Of Applications To Be Stressed You Need To Expand The List Of Basics Checks And Disable The Leak Checks. You May Also Need To Disable Handles And Locks Checks Depending On Your Graphics Driver And Specific Chrome Version, But The Eventual Goal Is To Have Chrome Run With Handles And Locks Checks Enabled. When Bugs Are Found Chrome Will Trigger A Breakpoint So Running All Chrome Processes Under A Debugger Is Recommended. Chrome Will Run Much More Slowly Because Application Verifier Puts Every Heap Allocation On A Separate Page. Note That With PartitionAlloc Everywhere Most Chromium Allocations Don't Actually Go Through The Windows Heap And Are Therefore Unaffected By Application Verifier. You Can Check The Undocumented 'Cuzz' Checkbox In Application Verifier To Get The Windows Thread Scheduler To Add Some Extra Randomness In Order To Help Expose Race Conditions In Your Code. To Put A Breakpoint On CreateFile(), Add This Break Point: {,,kernel32.dll}_CreateFileW@28 {,,kernel32.dll} Specifies The DLL (context Operator). _ Prefix Means Extern "C". @28 Postfix Means _stdcall With The Stack Pop At The End Of The Function. I.e. The Number Of Arguments In BYTES. You Can Use DebugView From SysInternals Or Sawbuck To View LOG() Messages That Normally Go To Stderr On POSIX.” Metadata:

  • Title: ➤  The Chromium Logo The Chromium Projects Home Chromium ChromiumOS Quick Links Report Bugs Discuss Other Sites Chromium Blog Google Chrome Extensions Except As Otherwise Noted, The Content Of This Page Is Licensed Under A Creative Commons Attribution 2.5 License, And Examples Are Licensed Under The BSD License. Privacy Edit This Page For Developers > How-Tos > Debugging Chromium On Windows First See Get The Code For Checkout And Build Instructions. Getting Started You Can Use Visual Studio's Built-in Debugger Or WinDBG To Debug Chromium. You Don't Need To Use The IDE To Build In Order To Use The Debugger: Autoninja Is Used To Build Chromium And Most Developers Invoke It From A Command Prompt, And Then Open The IDE For Debugging As Necessary. To Start Debugging An Already-built Executable With Visual Studio Just Launch Visual Studio (2019 Or Higher) And Select File-> Open-> Project/Solution (Ctrl+Shift+O) And Select The Executable Of Interest. This Will Create A Solution With That Executable As The 'project'. You Can Then Launch The Debugger With F5 Or F11 Or From The Debug Menu. If You Right-click On The Executable In Solution Explorer And Select Properties Then You Can Edit Things Such As The Executable Path, Command-line Arguments, And Working Directory. You Can Add Additional Executables To The Solution By Using File-> Add-> Existing Project And Selecting Another Already-built Executable. You Can Select Which One To Debug By Right-clicking On One Of Them In Solution Explorer And Selecting Set As Startup Project. When Your Solution File Is Customized To Your Taste You Can Save It To A Directory Such As Out\solutions. Saving It There Helps Ensure That Relative Paths To Source Files, Printed From Build Commands, Will Correctly Identify The Source Files. The Tools Menu Can Be Used To Add Commands To Do Things Like Invoke Autoninja To Build Chrome, Compile The Selected Source File, Or Other Things. Visual Studio 2017 Is Not Recommended For Debugging Of Chromium - Use A Newer Version For Best Performance And Stability. Symbol_level=2 Is The Default On Windows And Gives Full Debugging Information With Types, Locals, Globals, Function Names, And Source/line Information. Symbol_level=1 Creates Smaller PDBs With Just Function Names, And Source/line Information - Source-level Debugging Is Still Supported (new From June 2019), But Local Variables And Type Information Are Missing. Symbol_level=0 Gives Extremely Limited Debugging Abilities, Mostly Just Viewing Call Stacks When Chromium Crashes. Browsing Source Code If You Use A Solution File Generated By Gn (gn Gen --ide=vs) Then Intellisense May Help You Navigate The Code. If This Doesn't Work Or If You Use A Solution Created As Above Then You May Want To Install VsChromium To Help Navigate The Code, As Well As Using Https://source.chromium.org. Profiles It's A Good Idea To Use A Different Chrome Profile For Your Debugging. If You Are Debugging Google Chrome Branded Builds, Or Use A Chromium Build As Your Primary Browser, The Profiles Can Collide So You Can't Run Both At Once, And Your Stable Browser Might See Profile Versions From The Future (Google Chrome And Chromium Use Different Profile Directories By Default So Won't Collide). Use The Command-line Option: --user-data-dir=C:\tmp\my_debug_profile (replace The Path As Necessary) Using The IDE, Go To The Debugging Tab Of The Properties Of The Chrome Project, And Set The Command Arguments. Chrome Debug Log Enable Chrome Debug Logging To A File By Passing --enable-logging --v=1 Command-line Flags At Startup. Debug Builds Place The Chrome_debug.log File In The Out\Debug Directory. Release Builds Place The File In The Top Level Of The User Data Chromium App Directory, Which Is OS-version-dependent. For More Information, See Logging And User Data Directory Details. Symbol Server If You Are Debugging Official Google Chrome Release Builds, Use The Symbol Server: Https://chromium-browser-symsrv.commondatastorage.googleapis.com In Visual Studio, This Goes In Tools > Options Under Debugging > Symbols. You Should Set Up A Local Cache In A Empty Directory On Your Computer. In Windbg You Can Add This To Your Symbol Server Search Path With The Command Below, Where C:\symbols Is A Local Cache Directory: .sympath+ SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Alternately, You Can Set The _NT_SYMBOL_PATH Environment Variable To Include Both The Microsoft And Google Symbol Servers - VS, Windbg, And Other Tools Should Both Respect This Environment Variable: _NT_SYMBOL_PATH=SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Note That Symbol Servers Will Let The Debuggers Download Both The PE Files (DLLs And EXEs) And The PDB Files. Chrome Often Loads Third Party Libraries And Partial Symbols For Some Of These Are Also Public. For Example: AMD: Https://download.amd.com/dir/bin Nvidia: Https://driver-symbols.nvidia.com/ Intel: Https://software.intel.com/sites/downloads/symbols/ For Example, For Completeness, The Following Symbol Server Environment Variable Will Resolve All Of The Above Sources - But This Is More Than Is Normally Needed: _NT_SYMBOL_PATH=SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com;SRV\*C:\symbols\*https://download.amd.com/dir/bin;SRV\*C:\symbols\*https://driver-symbols.nvidia.com/;SRV\*C:\symbols\*https://software.intel.com/sites/downloads/symbols/ Source Indexing You Should Set Up Source Indexing In Your Debugger (.srcfix In Windbg, Tools-> Options-> Debugging-> General-> Enable Source Server Support In Visual Studio) So That The Correct Source Files Will Automatically Be Downloaded Based On Information In The Downloaded Symbols. Additionally, You Must Have Python In Your Path In Order For The Command That Fetches Source Files To Succeed; Launching The Debugger From The Same Environment As Where You Build Chromium Is An Easy Way To Ensure It's Present. This Is Highly Recommended When Debugging Released Google Chrome Builds Or Looking At Crash Dumps. Having The Correct Version Of The Source Files Automatically Show Up Saves Significant Time So You Should Definitely Set This. Multi-process Issues Chromium Can Be Challenging To Debug Because Of Its Multi-process Architecture. When You Select Run In The Debugger, Only The Main Browser Process Will Be Debugged. The Code That Actually Renders Web Pages (the Renderer) And The Plugins Will Be In Separate Processes That's Not (yet!) Being Debugged. The ProcessExplorer Tool Has A Process Tree View Where You Can See How These Processes Are Related. You Can Also Get The Process IDs Associated With Each Tab From The Chrome Task Manager (right-click On An Empty Area Of The Window Title Bar To Open). Automatically Attach To Child Processes There Are Two Visual Studio Extensions That Enable The Debugger To Automatically Attach To All Chrome Processes, So You Can Debug All Of Chrome At Once. Microsoft's Child Process Debugging Power Tool Is A Standalone Extension For This, And VsChromium Is Another Option That Bundles Many Other Additional Features. In Addition To Installing One Of These Extensions, You Must Run Visual Studio As Administrator, Or It Will Silently Fail To Attach To Some Of Chrome's Child Processes. Single-process Mode One Way To Debug Issues Is To Run Chromium In Single-process Mode. This Will Allow You To See The Entire State Of The Program Without Extra Work (although It Will Still Have Many Threads). To Use Single-process Mode, Add The Command-line Flag --single-process This Approach Isn't Perfect Because Some Problems Won't Manifest Themselves In This Mode And Some Features Don't Work And Worker Threads Are Still Spawned Into New Processes. Manually Attaching To A Child Process You Can Attach To The Running Child Processes With The Debugger. Select Tools > Attach To Process And Click The Chrome.exe Process You Want To Attach To. Before Attaching, Make Sure You Have Selected Only Native Code When Attaching To The Process This Is Done By Clicking Select... In The Attach To Process Window And Only Checking Native. If You Forget This, It May Attempt To Attach In "WebKit" Mode To Debug JavaScript, And You'll Get An Error Message "An Operation Is Not Legal In The Current State." You Can Now Debug The Two Processes As If They Were One. When You Are Debugging Multiple Processes, Open The Debug > Windows > Processes Window To Switch Between Them. Sometimes You Are Debugging Something That Only Happens On Startup, And Want To See The Child Process As Soon As It Starts. Use: --renderer-startup-dialog --no-sandbox You Have To Disable The Sandbox Or The Dialog Box Will Be Prohibited From Showing. When The Dialog Appears, Visit Tools > Attach To Process And Attach To The Process Showing The Renderer Startup Dialog. Now You're Debugging In The Renderer And Can Continue Execution By Pressing OK In The Dialog. Startup Dialogs Also Exist For Other Child Process Types: --gpu-startup-dialog, --ppapi-startup-dialog, --utility-startup-dialog, --plugin-startup-dialog (for NPAPI). For Utilities, You Can Add A Service Type --utility-startup-dialog=data_decoder.mojom.DataDecoderService. You Can Also Try The Vs-chromium Plug-in To Attach To The Right Processes. Semi-automatically Attaching The Debugger To Child Processes The Following Flags Cause Child Processes To Wait For 60 Seconds In A Busy Loop For A Debugger To Attach To The Process. Once Either Condition Is True, It Continues On; No Exception Is Thrown. --wait-for-debugger-children[=filter] The Filter, If Provided, Will Fire Only If It Matches The --type Parameter To The Process. Values Include Renderer, Plugin (for NPAPI), Ppapi, Gpu-process, And Utility. When Using This Option, It May Be Helpful To Limit The Number Of Renderer Processes Spawned, Using: --renderer-process-limit=1 Image File Execution Options Using Image File Execution Options (IFEO) Will Not Work Because CreateProcess() Returns The Handle To The Debugger Process Instead Of The Intended Child Process. There Are Also Issues With The Sandbox. Time Travel Debugging You Can Do Time Travel Debugging Using WinDbg Preview (must Be Installed From The Microsoft Store). This Lets You Execute A Program Forward And Backwards. After Capturing A Trace, You Can Set Breakpoints And Step Through Code As Normal, But Also Provides 'backwards' Commands (g-, T-, P-) So That You Can Go Back And Forth Through The Execution. It Is Especially Useful To Set Data Breakpoints (ba Command) And Reverse Continuing, So You Can See When A Certain Variable Was Last Changed To Its Current Value. Chromium Specifics: The Type Of Injection The Time Travel Tracer Needs To Perform Is Incompatible With The Chromium Sandbox. In Order To Record A Trace, You'll Need To Run With --no-sandbox. Chromium Cannot Run Elevated With Administrator Privileges, So The "Launch Executable (advance)" Option Won't Work, You'll Need To Attach After The Process Has Already Launched Via The Checkbox In The Bottom Right. If You Need To Record Startup-like Things, You'll Have To Use --{browser,gpu,renderer,utility}-startup-dialog, Then Attach (and Hope The Relevant Code Hasn't Executed Before That Point). JsDbg -- Data Structure Visualization You Can Install JsDbg As A Plugin For WinDbg Or Visual Studio. It Interactively Lets You Look At Data Structures (such As The DOM Tree, Accessibility Tree, Layout Object Tree, And Others) In A Web Browser As You Debug. See The JsDbg Site For Some Screen Shots And Usage Examples. This Also Works When Examining Memory Dumps (though Not Minidumps), And Also Works Together With Time Travel Debugging. Visual Studio Hints Debug Visualizers Chrome's Custom Debug Visualizers Should Be Added To The Pdb Files And Automatically Picked Up By Visual Studio. The Definitions Are In //tools/win/DebugVisualizers If You Need To Modify Them (the BUILD.gn File There Has Additional Instructions). Don't Step Into Trivial Functions The Debugger Can Be Configured To Automatically Not Step Into Functions Based On Regular Expression. Edit Default.natstepfilter In The Following Directory: For Visual Studio 2015: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Packages\Debugger\Visualizers (for All Users) Or %USERPROFILE%\My Documents\Visual Studio 2015\Visualizers (for The Current User Only) For Visual Studio 2017 Pro: C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\Packages\Debugger\Visualizers (for All Users) Or %USERPROFILE%\My Documents\Visual Studio 2017\Visualizers (for The Current User Only) Add Regular Expressions Of Functions To Not Step Into. Remember To Regex-escape And XML-escape Them, E.g. < For < And \. For A Literal Dot. Example: Operator New NoStepInto Operator Delete NoStepInto Std::.* NoStepInto WTF::.*Ptr ::.* NoStepInto This File Is Read At Start Of A Debugging Session (F5), So You Don't Need To Restart Visual Studio After Changing It. More Info: Microsoft Email Thread V8 And Chromium V8 Supports Many Command-line Flags That Are Useful For Debugging. V8 Command-line Flags Can Be Set Via The Chromium Command-line Flag --js-flags; For Instance: Chrome.exe --js-flags="--trace_exception --heap_stats" Note That Some V8 Command-line Flags Exist Only In The Debug Build Of V8. For A List Of All V8 Flags Try: Chrome.exe --js-flags="--help" Graphics Debugging GPU Acceleration Of Rendering Can Be More Easily Debugged With Tools. See: Graphics Debugging In Visual Studio 2013 Graphical Debugging With NVIDIA NSight Debugging On Another Machine Sometimes It's Useful To Debug Installation And Execution On A Machine Other Than Your Primary Build Box. To Run The Installer On Said Other Machine, First Build The Mini_installer Target On Your Main Build Machine (e.g., Autoninja -C Out\Debug Mini_installer). Next, On The Debug Machine: Make The Build Machine's Build Volume Available On The Debug Machine Either By Mounting It Locally (e.g., Z:\) Or By Crafting A UNC Path To It (e.g., \\builder\src) Open Up A Command Prompt And Change To A Local Disk Run Src\tools\win\copy-installer.bat In The Remote Checkout By Way Of The Mount (e.g., Z:\PATHTOCHECKOUT\src\...) Or UNC Path (e.g., \\builder\src\...). This Will Copy The Installer, DLLs, And PDBs Into Your Debug Machine's C:\out Or C:\build (depending On If You're Rocking The Component=shared_library Build Or Not) Run C:\out\Debug\mini_installer.exe With The Flags Of Your Choice To Install Chrome. This Can Take Some Time, Especially On A Slow Machine. Watch The Task Manager And Wait Until Mini_installer.exe Exits Before Trying To Launch Chrome (by Way Of The Shortcut(s) Created By The Installer) For Extra Pleasure, Add C:\out\Debug To Your _NT_SYMBOL_PATH Environment Variable Consider Reading The Documentation At The Top Of Copy-installer.bat To See How You Can Run It. It Tries To Be Smart And Copy The Right Things, But You May Need To Be Explicit (e.g., "copy-installer.bat Out Debug"). It Is Safe To Re-run The Script To Copy Only Modified Files (after A Rebuild, For Example). You Can Also Use The Zip Action Of The Isolate Scripts (tools\mb\mb.py) To Package All The Files For A Target Into A Single Zip File, For Example: Python Tools\mb\mb.py Zip Out/Release Base_unittests Base_unittests.zip Finding All Memory Allocations It Is Possible To Use Heap Snapshots To Get Call Stacks On All Outstanding Allocations That Use The OS Heap. This Works Particularly Well If Heap Snapshots Are Started As Soon As The Chrome Browser Process Is Created, But Before It Starts Running. Details Can Be Found In This Batch File. However, With PartitionAlloc Everywhere Most Chromium Allocations No Longer Use The Windows Heap So This Will Only Find A Subset Of Allocations, Mostly From OS DLLs. Find Memory Leaks Note: As With Heap Snapshots The Utility Of UMDH Is Greatly Reduced Now Because PartitionAlloc Everywhere Has Mostly Replaced The Windows Heap. The Windows Heap Manager Has A Really Useful Debug Flag, Where It Can Be Asked To Capture And Store A Stack Trace With Every Allocation. The Tool To Scrape These Stack Traces Out Of Processes Is UMDH, Which Comes With WinDbg. UMDH Is Great. It Will Capture A Snapshot Of The Heap State As Many Times As You Like, And It'll Do It Fairly Quickly. You Then Run It Again Against Either A Single Snapshot, Or A Pair Of Snapshots, At Which Time It'll Symbolize The Stack Traces And Aggregate Usage Up To Unique Stack Traces. Turning On The User Stack Trace Database For Chrome.exe With Gflags.exe Makes It Run Unbearably Slowly; However, Turning On The User Stack Trace Database On For The Browser Alone Is Just Fine. While It's Possible To Turn On The User Stack Database With The "!gflag" Debugging Extension, It's Too Late To Do This By The Time The Initial Debugger Breakpoint Hits. The Only Reasonable Way To Do This Is To Launch GFlags.exe, Enable The User Stack Trace Database (per Image Below), Launch Chrome Under The Debugger. Set A Breakpont When Chrome.dll Loads With "sxe Ld Chrome.dll". Step Up, To Allow Chrome.dll To Initialize. Disable The Stack Trace Database In GFlags.exe. Continue Chrome, Optionally Detaching The Debugger. Image GFlags.exe Settings For User Mode Stack Trace Database. If You Then Ever Suffer A Browser Memory Leak, You Can Snarf A Dump Of The Process With Umdh -p: > Chrome-browser-leak-umdh-dump.txt Which Can Then Typically Be "trivially" Analyzed To Find The Culprit. Miscellaneous Note That By Default Application Verifier Only Works With Non-official Builds Of Chromium. To Use Application Verifier On Official Builds You Need To Add --disable-features=RendererCodeIntegrity To Avoid Sandbox Crashes In Renderer Processes. See Crbug.com/1004989 For Details. See Also This Page. Application Verifier Is A Free Tool From Microsoft (available As Part Of The Windows SDK) That Can Be Used To Flush Out Programming Errors. Starting With M68 Application Verifier Can Be Enabled For Chrome.exe Without Needing To Disable The Sandbox. After Adding Chrome.exe To The List Of Applications To Be Stressed You Need To Expand The List Of Basics Checks And Disable The Leak Checks. You May Also Need To Disable Handles And Locks Checks Depending On Your Graphics Driver And Specific Chrome Version, But The Eventual Goal Is To Have Chrome Run With Handles And Locks Checks Enabled. When Bugs Are Found Chrome Will Trigger A Breakpoint So Running All Chrome Processes Under A Debugger Is Recommended. Chrome Will Run Much More Slowly Because Application Verifier Puts Every Heap Allocation On A Separate Page. Note That With PartitionAlloc Everywhere Most Chromium Allocations Don't Actually Go Through The Windows Heap And Are Therefore Unaffected By Application Verifier. You Can Check The Undocumented 'Cuzz' Checkbox In Application Verifier To Get The Windows Thread Scheduler To Add Some Extra Randomness In Order To Help Expose Race Conditions In Your Code. To Put A Breakpoint On CreateFile(), Add This Break Point: {,,kernel32.dll}_CreateFileW@28 {,,kernel32.dll} Specifies The DLL (context Operator). _ Prefix Means Extern "C". @28 Postfix Means _stdcall With The Stack Pop At The End Of The Function. I.e. The Number Of Arguments In BYTES. You Can Use DebugView From SysInternals Or Sawbuck To View LOG() Messages That Normally Go To Stderr On POSIX.

“The Chromium Logo The Chromium Projects Home Chromium ChromiumOS Quick Links Report Bugs Discuss Other Sites Chromium Blog Google Chrome Extensions Except As Otherwise Noted, The Content Of This Page Is Licensed Under A Creative Commons Attribution 2.5 License, And Examples Are Licensed Under The BSD License. Privacy Edit This Page For Developers > How-Tos > Debugging Chromium On Windows First See Get The Code For Checkout And Build Instructions. Getting Started You Can Use Visual Studio's Built-in Debugger Or WinDBG To Debug Chromium. You Don't Need To Use The IDE To Build In Order To Use The Debugger: Autoninja Is Used To Build Chromium And Most Developers Invoke It From A Command Prompt, And Then Open The IDE For Debugging As Necessary. To Start Debugging An Already-built Executable With Visual Studio Just Launch Visual Studio (2019 Or Higher) And Select File-> Open-> Project/Solution (Ctrl+Shift+O) And Select The Executable Of Interest. This Will Create A Solution With That Executable As The 'project'. You Can Then Launch The Debugger With F5 Or F11 Or From The Debug Menu. If You Right-click On The Executable In Solution Explorer And Select Properties Then You Can Edit Things Such As The Executable Path, Command-line Arguments, And Working Directory. You Can Add Additional Executables To The Solution By Using File-> Add-> Existing Project And Selecting Another Already-built Executable. You Can Select Which One To Debug By Right-clicking On One Of Them In Solution Explorer And Selecting Set As Startup Project. When Your Solution File Is Customized To Your Taste You Can Save It To A Directory Such As Out\solutions. Saving It There Helps Ensure That Relative Paths To Source Files, Printed From Build Commands, Will Correctly Identify The Source Files. The Tools Menu Can Be Used To Add Commands To Do Things Like Invoke Autoninja To Build Chrome, Compile The Selected Source File, Or Other Things. Visual Studio 2017 Is Not Recommended For Debugging Of Chromium - Use A Newer Version For Best Performance And Stability. Symbol_level=2 Is The Default On Windows And Gives Full Debugging Information With Types, Locals, Globals, Function Names, And Source/line Information. Symbol_level=1 Creates Smaller PDBs With Just Function Names, And Source/line Information - Source-level Debugging Is Still Supported (new From June 2019), But Local Variables And Type Information Are Missing. Symbol_level=0 Gives Extremely Limited Debugging Abilities, Mostly Just Viewing Call Stacks When Chromium Crashes. Browsing Source Code If You Use A Solution File Generated By Gn (gn Gen --ide=vs) Then Intellisense May Help You Navigate The Code. If This Doesn't Work Or If You Use A Solution Created As Above Then You May Want To Install VsChromium To Help Navigate The Code, As Well As Using Https://source.chromium.org. Profiles It's A Good Idea To Use A Different Chrome Profile For Your Debugging. If You Are Debugging Google Chrome Branded Builds, Or Use A Chromium Build As Your Primary Browser, The Profiles Can Collide So You Can't Run Both At Once, And Your Stable Browser Might See Profile Versions From The Future (Google Chrome And Chromium Use Different Profile Directories By Default So Won't Collide). Use The Command-line Option: --user-data-dir=C:\tmp\my_debug_profile (replace The Path As Necessary) Using The IDE, Go To The Debugging Tab Of The Properties Of The Chrome Project, And Set The Command Arguments. Chrome Debug Log Enable Chrome Debug Logging To A File By Passing --enable-logging --v=1 Command-line Flags At Startup. Debug Builds Place The Chrome_debug.log File In The Out\Debug Directory. Release Builds Place The File In The Top Level Of The User Data Chromium App Directory, Which Is OS-version-dependent. For More Information, See Logging And User Data Directory Details. Symbol Server If You Are Debugging Official Google Chrome Release Builds, Use The Symbol Server: Https://chromium-browser-symsrv.commondatastorage.googleapis.com In Visual Studio, This Goes In Tools > Options Under Debugging > Symbols. You Should Set Up A Local Cache In A Empty Directory On Your Computer. In Windbg You Can Add This To Your Symbol Server Search Path With The Command Below, Where C:\symbols Is A Local Cache Directory: .sympath+ SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Alternately, You Can Set The _NT_SYMBOL_PATH Environment Variable To Include Both The Microsoft And Google Symbol Servers - VS, Windbg, And Other Tools Should Both Respect This Environment Variable: _NT_SYMBOL_PATH=SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Note That Symbol Servers Will Let The Debuggers Download Both The PE Files (DLLs And EXEs) And The PDB Files. Chrome Often Loads Third Party Libraries And Partial Symbols For Some Of These Are Also Public. For Example: AMD: Https://download.amd.com/dir/bin Nvidia: Https://driver-symbols.nvidia.com/ Intel: Https://software.intel.com/sites/downloads/symbols/ For Example, For Completeness, The Following Symbol Server Environment Variable Will Resolve All Of The Above Sources - But This Is More Than Is Normally Needed: _NT_SYMBOL_PATH=SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com;SRV\*C:\symbols\*https://download.amd.com/dir/bin;SRV\*C:\symbols\*https://driver-symbols.nvidia.com/;SRV\*C:\symbols\*https://software.intel.com/sites/downloads/symbols/ Source Indexing You Should Set Up Source Indexing In Your Debugger (.srcfix In Windbg, Tools-> Options-> Debugging-> General-> Enable Source Server Support In Visual Studio) So That The Correct Source Files Will Automatically Be Downloaded Based On Information In The Downloaded Symbols. Additionally, You Must Have Python In Your Path In Order For The Command That Fetches Source Files To Succeed; Launching The Debugger From The Same Environment As Where You Build Chromium Is An Easy Way To Ensure It's Present. This Is Highly Recommended When Debugging Released Google Chrome Builds Or Looking At Crash Dumps. Having The Correct Version Of The Source Files Automatically Show Up Saves Significant Time So You Should Definitely Set This. Multi-process Issues Chromium Can Be Challenging To Debug Because Of Its Multi-process Architecture. When You Select Run In The Debugger, Only The Main Browser Process Will Be Debugged. The Code That Actually Renders Web Pages (the Renderer) And The Plugins Will Be In Separate Processes That's Not (yet!) Being Debugged. The ProcessExplorer Tool Has A Process Tree View Where You Can See How These Processes Are Related. You Can Also Get The Process IDs Associated With Each Tab From The Chrome Task Manager (right-click On An Empty Area Of The Window Title Bar To Open). Automatically Attach To Child Processes There Are Two Visual Studio Extensions That Enable The Debugger To Automatically Attach To All Chrome Processes, So You Can Debug All Of Chrome At Once. Microsoft's Child Process Debugging Power Tool Is A Standalone Extension For This, And VsChromium Is Another Option That Bundles Many Other Additional Features. In Addition To Installing One Of These Extensions, You Must Run Visual Studio As Administrator, Or It Will Silently Fail To Attach To Some Of Chrome's Child Processes. Single-process Mode One Way To Debug Issues Is To Run Chromium In Single-process Mode. This Will Allow You To See The Entire State Of The Program Without Extra Work (although It Will Still Have Many Threads). To Use Single-process Mode, Add The Command-line Flag --single-process This Approach Isn't Perfect Because Some Problems Won't Manifest Themselves In This Mode And Some Features Don't Work And Worker Threads Are Still Spawned Into New Processes. Manually Attaching To A Child Process You Can Attach To The Running Child Processes With The Debugger. Select Tools > Attach To Process And Click The Chrome.exe Process You Want To Attach To. Before Attaching, Make Sure You Have Selected Only Native Code When Attaching To The Process This Is Done By Clicking Select... In The Attach To Process Window And Only Checking Native. If You Forget This, It May Attempt To Attach In "WebKit" Mode To Debug JavaScript, And You'll Get An Error Message "An Operation Is Not Legal In The Current State." You Can Now Debug The Two Processes As If They Were One. When You Are Debugging Multiple Processes, Open The Debug > Windows > Processes Window To Switch Between Them. Sometimes You Are Debugging Something That Only Happens On Startup, And Want To See The Child Process As Soon As It Starts. Use: --renderer-startup-dialog --no-sandbox You Have To Disable The Sandbox Or The Dialog Box Will Be Prohibited From Showing. When The Dialog Appears, Visit Tools > Attach To Process And Attach To The Process Showing The Renderer Startup Dialog. Now You're Debugging In The Renderer And Can Continue Execution By Pressing OK In The Dialog. Startup Dialogs Also Exist For Other Child Process Types: --gpu-startup-dialog, --ppapi-startup-dialog, --utility-startup-dialog, --plugin-startup-dialog (for NPAPI). For Utilities, You Can Add A Service Type --utility-startup-dialog=data_decoder.mojom.DataDecoderService. You Can Also Try The Vs-chromium Plug-in To Attach To The Right Processes. Semi-automatically Attaching The Debugger To Child Processes The Following Flags Cause Child Processes To Wait For 60 Seconds In A Busy Loop For A Debugger To Attach To The Process. Once Either Condition Is True, It Continues On; No Exception Is Thrown. --wait-for-debugger-children[=filter] The Filter, If Provided, Will Fire Only If It Matches The --type Parameter To The Process. Values Include Renderer, Plugin (for NPAPI), Ppapi, Gpu-process, And Utility. When Using This Option, It May Be Helpful To Limit The Number Of Renderer Processes Spawned, Using: --renderer-process-limit=1 Image File Execution Options Using Image File Execution Options (IFEO) Will Not Work Because CreateProcess() Returns The Handle To The Debugger Process Instead Of The Intended Child Process. There Are Also Issues With The Sandbox. Time Travel Debugging You Can Do Time Travel Debugging Using WinDbg Preview (must Be Installed From The Microsoft Store). This Lets You Execute A Program Forward And Backwards. After Capturing A Trace, You Can Set Breakpoints And Step Through Code As Normal, But Also Provides 'backwards' Commands (g-, T-, P-) So That You Can Go Back And Forth Through The Execution. It Is Especially Useful To Set Data Breakpoints (ba Command) And Reverse Continuing, So You Can See When A Certain Variable Was Last Changed To Its Current Value. Chromium Specifics: The Type Of Injection The Time Travel Tracer Needs To Perform Is Incompatible With The Chromium Sandbox. In Order To Record A Trace, You'll Need To Run With --no-sandbox. Chromium Cannot Run Elevated With Administrator Privileges, So The "Launch Executable (advance)" Option Won't Work, You'll Need To Attach After The Process Has Already Launched Via The Checkbox In The Bottom Right. If You Need To Record Startup-like Things, You'll Have To Use --{browser,gpu,renderer,utility}-startup-dialog, Then Attach (and Hope The Relevant Code Hasn't Executed Before That Point). JsDbg -- Data Structure Visualization You Can Install JsDbg As A Plugin For WinDbg Or Visual Studio. It Interactively Lets You Look At Data Structures (such As The DOM Tree, Accessibility Tree, Layout Object Tree, And Others) In A Web Browser As You Debug. See The JsDbg Site For Some Screen Shots And Usage Examples. This Also Works When Examining Memory Dumps (though Not Minidumps), And Also Works Together With Time Travel Debugging. Visual Studio Hints Debug Visualizers Chrome's Custom Debug Visualizers Should Be Added To The Pdb Files And Automatically Picked Up By Visual Studio. The Definitions Are In //tools/win/DebugVisualizers If You Need To Modify Them (the BUILD.gn File There Has Additional Instructions). Don't Step Into Trivial Functions The Debugger Can Be Configured To Automatically Not Step Into Functions Based On Regular Expression. Edit Default.natstepfilter In The Following Directory: For Visual Studio 2015: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Packages\Debugger\Visualizers (for All Users) Or %USERPROFILE%\My Documents\Visual Studio 2015\Visualizers (for The Current User Only) For Visual Studio 2017 Pro: C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\Packages\Debugger\Visualizers (for All Users) Or %USERPROFILE%\My Documents\Visual Studio 2017\Visualizers (for The Current User Only) Add Regular Expressions Of Functions To Not Step Into. Remember To Regex-escape And XML-escape Them, E.g. < For < And \. For A Literal Dot. Example: Operator New NoStepInto Operator Delete NoStepInto Std::.* NoStepInto WTF::.*Ptr ::.* NoStepInto This File Is Read At Start Of A Debugging Session (F5), So You Don't Need To Restart Visual Studio After Changing It. More Info: Microsoft Email Thread V8 And Chromium V8 Supports Many Command-line Flags That Are Useful For Debugging. V8 Command-line Flags Can Be Set Via The Chromium Command-line Flag --js-flags; For Instance: Chrome.exe --js-flags="--trace_exception --heap_stats" Note That Some V8 Command-line Flags Exist Only In The Debug Build Of V8. For A List Of All V8 Flags Try: Chrome.exe --js-flags="--help" Graphics Debugging GPU Acceleration Of Rendering Can Be More Easily Debugged With Tools. See: Graphics Debugging In Visual Studio 2013 Graphical Debugging With NVIDIA NSight Debugging On Another Machine Sometimes It's Useful To Debug Installation And Execution On A Machine Other Than Your Primary Build Box. To Run The Installer On Said Other Machine, First Build The Mini_installer Target On Your Main Build Machine (e.g., Autoninja -C Out\Debug Mini_installer). Next, On The Debug Machine: Make The Build Machine's Build Volume Available On The Debug Machine Either By Mounting It Locally (e.g., Z:\) Or By Crafting A UNC Path To It (e.g., \\builder\src) Open Up A Command Prompt And Change To A Local Disk Run Src\tools\win\copy-installer.bat In The Remote Checkout By Way Of The Mount (e.g., Z:\PATHTOCHECKOUT\src\...) Or UNC Path (e.g., \\builder\src\...). This Will Copy The Installer, DLLs, And PDBs Into Your Debug Machine's C:\out Or C:\build (depending On If You're Rocking The Component=shared_library Build Or Not) Run C:\out\Debug\mini_installer.exe With The Flags Of Your Choice To Install Chrome. This Can Take Some Time, Especially On A Slow Machine. Watch The Task Manager And Wait Until Mini_installer.exe Exits Before Trying To Launch Chrome (by Way Of The Shortcut(s) Created By The Installer) For Extra Pleasure, Add C:\out\Debug To Your _NT_SYMBOL_PATH Environment Variable Consider Reading The Documentation At The Top Of Copy-installer.bat To See How You Can Run It. It Tries To Be Smart And Copy The Right Things, But You May Need To Be Explicit (e.g., "copy-installer.bat Out Debug"). It Is Safe To Re-run The Script To Copy Only Modified Files (after A Rebuild, For Example). You Can Also Use The Zip Action Of The Isolate Scripts (tools\mb\mb.py) To Package All The Files For A Target Into A Single Zip File, For Example: Python Tools\mb\mb.py Zip Out/Release Base_unittests Base_unittests.zip Finding All Memory Allocations It Is Possible To Use Heap Snapshots To Get Call Stacks On All Outstanding Allocations That Use The OS Heap. This Works Particularly Well If Heap Snapshots Are Started As Soon As The Chrome Browser Process Is Created, But Before It Starts Running. Details Can Be Found In This Batch File. However, With PartitionAlloc Everywhere Most Chromium Allocations No Longer Use The Windows Heap So This Will Only Find A Subset Of Allocations, Mostly From OS DLLs. Find Memory Leaks Note: As With Heap Snapshots The Utility Of UMDH Is Greatly Reduced Now Because PartitionAlloc Everywhere Has Mostly Replaced The Windows Heap. The Windows Heap Manager Has A Really Useful Debug Flag, Where It Can Be Asked To Capture And Store A Stack Trace With Every Allocation. The Tool To Scrape These Stack Traces Out Of Processes Is UMDH, Which Comes With WinDbg. UMDH Is Great. It Will Capture A Snapshot Of The Heap State As Many Times As You Like, And It'll Do It Fairly Quickly. You Then Run It Again Against Either A Single Snapshot, Or A Pair Of Snapshots, At Which Time It'll Symbolize The Stack Traces And Aggregate Usage Up To Unique Stack Traces. Turning On The User Stack Trace Database For Chrome.exe With Gflags.exe Makes It Run Unbearably Slowly; However, Turning On The User Stack Trace Database On For The Browser Alone Is Just Fine. While It's Possible To Turn On The User Stack Database With The "!gflag" Debugging Extension, It's Too Late To Do This By The Time The Initial Debugger Breakpoint Hits. The Only Reasonable Way To Do This Is To Launch GFlags.exe, Enable The User Stack Trace Database (per Image Below), Launch Chrome Under The Debugger. Set A Breakpont When Chrome.dll Loads With "sxe Ld Chrome.dll". Step Up, To Allow Chrome.dll To Initialize. Disable The Stack Trace Database In GFlags.exe. Continue Chrome, Optionally Detaching The Debugger. Image GFlags.exe Settings For User Mode Stack Trace Database. If You Then Ever Suffer A Browser Memory Leak, You Can Snarf A Dump Of The Process With Umdh -p: > Chrome-browser-leak-umdh-dump.txt Which Can Then Typically Be "trivially" Analyzed To Find The Culprit. Miscellaneous Note That By Default Application Verifier Only Works With Non-official Builds Of Chromium. To Use Application Verifier On Official Builds You Need To Add --disable-features=RendererCodeIntegrity To Avoid Sandbox Crashes In Renderer Processes. See Crbug.com/1004989 For Details. See Also This Page. Application Verifier Is A Free Tool From Microsoft (available As Part Of The Windows SDK) That Can Be Used To Flush Out Programming Errors. Starting With M68 Application Verifier Can Be Enabled For Chrome.exe Without Needing To Disable The Sandbox. After Adding Chrome.exe To The List Of Applications To Be Stressed You Need To Expand The List Of Basics Checks And Disable The Leak Checks. You May Also Need To Disable Handles And Locks Checks Depending On Your Graphics Driver And Specific Chrome Version, But The Eventual Goal Is To Have Chrome Run With Handles And Locks Checks Enabled. When Bugs Are Found Chrome Will Trigger A Breakpoint So Running All Chrome Processes Under A Debugger Is Recommended. Chrome Will Run Much More Slowly Because Application Verifier Puts Every Heap Allocation On A Separate Page. Note That With PartitionAlloc Everywhere Most Chromium Allocations Don't Actually Go Through The Windows Heap And Are Therefore Unaffected By Application Verifier. You Can Check The Undocumented 'Cuzz' Checkbox In Application Verifier To Get The Windows Thread Scheduler To Add Some Extra Randomness In Order To Help Expose Race Conditions In Your Code. To Put A Breakpoint On CreateFile(), Add This Break Point: {,,kernel32.dll}_CreateFileW@28 {,,kernel32.dll} Specifies The DLL (context Operator). _ Prefix Means Extern "C". @28 Postfix Means _stdcall With The Stack Pop At The End Of The Function. I.e. The Number Of Arguments In BYTES. You Can Use DebugView From SysInternals Or Sawbuck To View LOG() Messages That Normally Go To Stderr On POSIX.” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 0.33 Mbs, the file-s for this book were downloaded 2 times, the file-s went public at Fri Jul 11 2025.

Available formats:
Archive BitTorrent - Metadata - Text -

Related Links:

Online Marketplaces

Find The Chromium Logo The Chromium Projects Home Chromium ChromiumOS Quick Links Report Bugs Discuss Other Sites Chromium Blog Google Chrome Extensions Except As Otherwise Noted, The Content Of This Page Is Licensed Under A Creative Commons Attribution 2.5 License, And Examples Are Licensed Under The BSD License. Privacy Edit This Page For Developers > How-Tos > Debugging Chromium On Windows First See Get The Code For Checkout And Build Instructions. Getting Started You Can Use Visual Studio's Built-in Debugger Or WinDBG To Debug Chromium. You Don't Need To Use The IDE To Build In Order To Use The Debugger: Autoninja Is Used To Build Chromium And Most Developers Invoke It From A Command Prompt, And Then Open The IDE For Debugging As Necessary. To Start Debugging An Already-built Executable With Visual Studio Just Launch Visual Studio (2019 Or Higher) And Select File-> Open-> Project/Solution (Ctrl+Shift+O) And Select The Executable Of Interest. This Will Create A Solution With That Executable As The 'project'. You Can Then Launch The Debugger With F5 Or F11 Or From The Debug Menu. If You Right-click On The Executable In Solution Explorer And Select Properties Then You Can Edit Things Such As The Executable Path, Command-line Arguments, And Working Directory. You Can Add Additional Executables To The Solution By Using File-> Add-> Existing Project And Selecting Another Already-built Executable. You Can Select Which One To Debug By Right-clicking On One Of Them In Solution Explorer And Selecting Set As Startup Project. When Your Solution File Is Customized To Your Taste You Can Save It To A Directory Such As Out\solutions. Saving It There Helps Ensure That Relative Paths To Source Files, Printed From Build Commands, Will Correctly Identify The Source Files. The Tools Menu Can Be Used To Add Commands To Do Things Like Invoke Autoninja To Build Chrome, Compile The Selected Source File, Or Other Things. Visual Studio 2017 Is Not Recommended For Debugging Of Chromium - Use A Newer Version For Best Performance And Stability. Symbol_level=2 Is The Default On Windows And Gives Full Debugging Information With Types, Locals, Globals, Function Names, And Source/line Information. Symbol_level=1 Creates Smaller PDBs With Just Function Names, And Source/line Information - Source-level Debugging Is Still Supported (new From June 2019), But Local Variables And Type Information Are Missing. Symbol_level=0 Gives Extremely Limited Debugging Abilities, Mostly Just Viewing Call Stacks When Chromium Crashes. Browsing Source Code If You Use A Solution File Generated By Gn (gn Gen --ide=vs) Then Intellisense May Help You Navigate The Code. If This Doesn't Work Or If You Use A Solution Created As Above Then You May Want To Install VsChromium To Help Navigate The Code, As Well As Using Https://source.chromium.org. Profiles It's A Good Idea To Use A Different Chrome Profile For Your Debugging. If You Are Debugging Google Chrome Branded Builds, Or Use A Chromium Build As Your Primary Browser, The Profiles Can Collide So You Can't Run Both At Once, And Your Stable Browser Might See Profile Versions From The Future (Google Chrome And Chromium Use Different Profile Directories By Default So Won't Collide). Use The Command-line Option: --user-data-dir=C:\tmp\my_debug_profile (replace The Path As Necessary) Using The IDE, Go To The Debugging Tab Of The Properties Of The Chrome Project, And Set The Command Arguments. Chrome Debug Log Enable Chrome Debug Logging To A File By Passing --enable-logging --v=1 Command-line Flags At Startup. Debug Builds Place The Chrome_debug.log File In The Out\Debug Directory. Release Builds Place The File In The Top Level Of The User Data Chromium App Directory, Which Is OS-version-dependent. For More Information, See Logging And User Data Directory Details. Symbol Server If You Are Debugging Official Google Chrome Release Builds, Use The Symbol Server: Https://chromium-browser-symsrv.commondatastorage.googleapis.com In Visual Studio, This Goes In Tools > Options Under Debugging > Symbols. You Should Set Up A Local Cache In A Empty Directory On Your Computer. In Windbg You Can Add This To Your Symbol Server Search Path With The Command Below, Where C:\symbols Is A Local Cache Directory: .sympath+ SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Alternately, You Can Set The _NT_SYMBOL_PATH Environment Variable To Include Both The Microsoft And Google Symbol Servers - VS, Windbg, And Other Tools Should Both Respect This Environment Variable: _NT_SYMBOL_PATH=SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com Note That Symbol Servers Will Let The Debuggers Download Both The PE Files (DLLs And EXEs) And The PDB Files. Chrome Often Loads Third Party Libraries And Partial Symbols For Some Of These Are Also Public. For Example: AMD: Https://download.amd.com/dir/bin Nvidia: Https://driver-symbols.nvidia.com/ Intel: Https://software.intel.com/sites/downloads/symbols/ For Example, For Completeness, The Following Symbol Server Environment Variable Will Resolve All Of The Above Sources - But This Is More Than Is Normally Needed: _NT_SYMBOL_PATH=SRV\*C:\symbols\*https://msdl.microsoft.com/download/symbols;SRV\*C:\symbols\*https://chromium-browser-symsrv.commondatastorage.googleapis.com;SRV\*C:\symbols\*https://download.amd.com/dir/bin;SRV\*C:\symbols\*https://driver-symbols.nvidia.com/;SRV\*C:\symbols\*https://software.intel.com/sites/downloads/symbols/ Source Indexing You Should Set Up Source Indexing In Your Debugger (.srcfix In Windbg, Tools-> Options-> Debugging-> General-> Enable Source Server Support In Visual Studio) So That The Correct Source Files Will Automatically Be Downloaded Based On Information In The Downloaded Symbols. Additionally, You Must Have Python In Your Path In Order For The Command That Fetches Source Files To Succeed; Launching The Debugger From The Same Environment As Where You Build Chromium Is An Easy Way To Ensure It's Present. This Is Highly Recommended When Debugging Released Google Chrome Builds Or Looking At Crash Dumps. Having The Correct Version Of The Source Files Automatically Show Up Saves Significant Time So You Should Definitely Set This. Multi-process Issues Chromium Can Be Challenging To Debug Because Of Its Multi-process Architecture. When You Select Run In The Debugger, Only The Main Browser Process Will Be Debugged. The Code That Actually Renders Web Pages (the Renderer) And The Plugins Will Be In Separate Processes That's Not (yet!) Being Debugged. The ProcessExplorer Tool Has A Process Tree View Where You Can See How These Processes Are Related. You Can Also Get The Process IDs Associated With Each Tab From The Chrome Task Manager (right-click On An Empty Area Of The Window Title Bar To Open). Automatically Attach To Child Processes There Are Two Visual Studio Extensions That Enable The Debugger To Automatically Attach To All Chrome Processes, So You Can Debug All Of Chrome At Once. Microsoft's Child Process Debugging Power Tool Is A Standalone Extension For This, And VsChromium Is Another Option That Bundles Many Other Additional Features. In Addition To Installing One Of These Extensions, You Must Run Visual Studio As Administrator, Or It Will Silently Fail To Attach To Some Of Chrome's Child Processes. Single-process Mode One Way To Debug Issues Is To Run Chromium In Single-process Mode. This Will Allow You To See The Entire State Of The Program Without Extra Work (although It Will Still Have Many Threads). To Use Single-process Mode, Add The Command-line Flag --single-process This Approach Isn't Perfect Because Some Problems Won't Manifest Themselves In This Mode And Some Features Don't Work And Worker Threads Are Still Spawned Into New Processes. Manually Attaching To A Child Process You Can Attach To The Running Child Processes With The Debugger. Select Tools > Attach To Process And Click The Chrome.exe Process You Want To Attach To. Before Attaching, Make Sure You Have Selected Only Native Code When Attaching To The Process This Is Done By Clicking Select... In The Attach To Process Window And Only Checking Native. If You Forget This, It May Attempt To Attach In "WebKit" Mode To Debug JavaScript, And You'll Get An Error Message "An Operation Is Not Legal In The Current State." You Can Now Debug The Two Processes As If They Were One. When You Are Debugging Multiple Processes, Open The Debug > Windows > Processes Window To Switch Between Them. Sometimes You Are Debugging Something That Only Happens On Startup, And Want To See The Child Process As Soon As It Starts. Use: --renderer-startup-dialog --no-sandbox You Have To Disable The Sandbox Or The Dialog Box Will Be Prohibited From Showing. When The Dialog Appears, Visit Tools > Attach To Process And Attach To The Process Showing The Renderer Startup Dialog. Now You're Debugging In The Renderer And Can Continue Execution By Pressing OK In The Dialog. Startup Dialogs Also Exist For Other Child Process Types: --gpu-startup-dialog, --ppapi-startup-dialog, --utility-startup-dialog, --plugin-startup-dialog (for NPAPI). For Utilities, You Can Add A Service Type --utility-startup-dialog=data_decoder.mojom.DataDecoderService. You Can Also Try The Vs-chromium Plug-in To Attach To The Right Processes. Semi-automatically Attaching The Debugger To Child Processes The Following Flags Cause Child Processes To Wait For 60 Seconds In A Busy Loop For A Debugger To Attach To The Process. Once Either Condition Is True, It Continues On; No Exception Is Thrown. --wait-for-debugger-children[=filter] The Filter, If Provided, Will Fire Only If It Matches The --type Parameter To The Process. Values Include Renderer, Plugin (for NPAPI), Ppapi, Gpu-process, And Utility. When Using This Option, It May Be Helpful To Limit The Number Of Renderer Processes Spawned, Using: --renderer-process-limit=1 Image File Execution Options Using Image File Execution Options (IFEO) Will Not Work Because CreateProcess() Returns The Handle To The Debugger Process Instead Of The Intended Child Process. There Are Also Issues With The Sandbox. Time Travel Debugging You Can Do Time Travel Debugging Using WinDbg Preview (must Be Installed From The Microsoft Store). This Lets You Execute A Program Forward And Backwards. After Capturing A Trace, You Can Set Breakpoints And Step Through Code As Normal, But Also Provides 'backwards' Commands (g-, T-, P-) So That You Can Go Back And Forth Through The Execution. It Is Especially Useful To Set Data Breakpoints (ba Command) And Reverse Continuing, So You Can See When A Certain Variable Was Last Changed To Its Current Value. Chromium Specifics: The Type Of Injection The Time Travel Tracer Needs To Perform Is Incompatible With The Chromium Sandbox. In Order To Record A Trace, You'll Need To Run With --no-sandbox. Chromium Cannot Run Elevated With Administrator Privileges, So The "Launch Executable (advance)" Option Won't Work, You'll Need To Attach After The Process Has Already Launched Via The Checkbox In The Bottom Right. If You Need To Record Startup-like Things, You'll Have To Use --{browser,gpu,renderer,utility}-startup-dialog, Then Attach (and Hope The Relevant Code Hasn't Executed Before That Point). JsDbg -- Data Structure Visualization You Can Install JsDbg As A Plugin For WinDbg Or Visual Studio. It Interactively Lets You Look At Data Structures (such As The DOM Tree, Accessibility Tree, Layout Object Tree, And Others) In A Web Browser As You Debug. See The JsDbg Site For Some Screen Shots And Usage Examples. This Also Works When Examining Memory Dumps (though Not Minidumps), And Also Works Together With Time Travel Debugging. Visual Studio Hints Debug Visualizers Chrome's Custom Debug Visualizers Should Be Added To The Pdb Files And Automatically Picked Up By Visual Studio. The Definitions Are In //tools/win/DebugVisualizers If You Need To Modify Them (the BUILD.gn File There Has Additional Instructions). Don't Step Into Trivial Functions The Debugger Can Be Configured To Automatically Not Step Into Functions Based On Regular Expression. Edit Default.natstepfilter In The Following Directory: For Visual Studio 2015: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Packages\Debugger\Visualizers (for All Users) Or %USERPROFILE%\My Documents\Visual Studio 2015\Visualizers (for The Current User Only) For Visual Studio 2017 Pro: C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\Packages\Debugger\Visualizers (for All Users) Or %USERPROFILE%\My Documents\Visual Studio 2017\Visualizers (for The Current User Only) Add Regular Expressions Of Functions To Not Step Into. Remember To Regex-escape And XML-escape Them, E.g. < For < And \. For A Literal Dot. Example: Operator New NoStepInto Operator Delete NoStepInto Std::.* NoStepInto WTF::.*Ptr ::.* NoStepInto This File Is Read At Start Of A Debugging Session (F5), So You Don't Need To Restart Visual Studio After Changing It. More Info: Microsoft Email Thread V8 And Chromium V8 Supports Many Command-line Flags That Are Useful For Debugging. V8 Command-line Flags Can Be Set Via The Chromium Command-line Flag --js-flags; For Instance: Chrome.exe --js-flags="--trace_exception --heap_stats" Note That Some V8 Command-line Flags Exist Only In The Debug Build Of V8. For A List Of All V8 Flags Try: Chrome.exe --js-flags="--help" Graphics Debugging GPU Acceleration Of Rendering Can Be More Easily Debugged With Tools. See: Graphics Debugging In Visual Studio 2013 Graphical Debugging With NVIDIA NSight Debugging On Another Machine Sometimes It's Useful To Debug Installation And Execution On A Machine Other Than Your Primary Build Box. To Run The Installer On Said Other Machine, First Build The Mini_installer Target On Your Main Build Machine (e.g., Autoninja -C Out\Debug Mini_installer). Next, On The Debug Machine: Make The Build Machine's Build Volume Available On The Debug Machine Either By Mounting It Locally (e.g., Z:\) Or By Crafting A UNC Path To It (e.g., \\builder\src) Open Up A Command Prompt And Change To A Local Disk Run Src\tools\win\copy-installer.bat In The Remote Checkout By Way Of The Mount (e.g., Z:\PATHTOCHECKOUT\src\...) Or UNC Path (e.g., \\builder\src\...). This Will Copy The Installer, DLLs, And PDBs Into Your Debug Machine's C:\out Or C:\build (depending On If You're Rocking The Component=shared_library Build Or Not) Run C:\out\Debug\mini_installer.exe With The Flags Of Your Choice To Install Chrome. This Can Take Some Time, Especially On A Slow Machine. Watch The Task Manager And Wait Until Mini_installer.exe Exits Before Trying To Launch Chrome (by Way Of The Shortcut(s) Created By The Installer) For Extra Pleasure, Add C:\out\Debug To Your _NT_SYMBOL_PATH Environment Variable Consider Reading The Documentation At The Top Of Copy-installer.bat To See How You Can Run It. It Tries To Be Smart And Copy The Right Things, But You May Need To Be Explicit (e.g., "copy-installer.bat Out Debug"). It Is Safe To Re-run The Script To Copy Only Modified Files (after A Rebuild, For Example). You Can Also Use The Zip Action Of The Isolate Scripts (tools\mb\mb.py) To Package All The Files For A Target Into A Single Zip File, For Example: Python Tools\mb\mb.py Zip Out/Release Base_unittests Base_unittests.zip Finding All Memory Allocations It Is Possible To Use Heap Snapshots To Get Call Stacks On All Outstanding Allocations That Use The OS Heap. This Works Particularly Well If Heap Snapshots Are Started As Soon As The Chrome Browser Process Is Created, But Before It Starts Running. Details Can Be Found In This Batch File. However, With PartitionAlloc Everywhere Most Chromium Allocations No Longer Use The Windows Heap So This Will Only Find A Subset Of Allocations, Mostly From OS DLLs. Find Memory Leaks Note: As With Heap Snapshots The Utility Of UMDH Is Greatly Reduced Now Because PartitionAlloc Everywhere Has Mostly Replaced The Windows Heap. The Windows Heap Manager Has A Really Useful Debug Flag, Where It Can Be Asked To Capture And Store A Stack Trace With Every Allocation. The Tool To Scrape These Stack Traces Out Of Processes Is UMDH, Which Comes With WinDbg. UMDH Is Great. It Will Capture A Snapshot Of The Heap State As Many Times As You Like, And It'll Do It Fairly Quickly. You Then Run It Again Against Either A Single Snapshot, Or A Pair Of Snapshots, At Which Time It'll Symbolize The Stack Traces And Aggregate Usage Up To Unique Stack Traces. Turning On The User Stack Trace Database For Chrome.exe With Gflags.exe Makes It Run Unbearably Slowly; However, Turning On The User Stack Trace Database On For The Browser Alone Is Just Fine. While It's Possible To Turn On The User Stack Database With The "!gflag" Debugging Extension, It's Too Late To Do This By The Time The Initial Debugger Breakpoint Hits. The Only Reasonable Way To Do This Is To Launch GFlags.exe, Enable The User Stack Trace Database (per Image Below), Launch Chrome Under The Debugger. Set A Breakpont When Chrome.dll Loads With "sxe Ld Chrome.dll". Step Up, To Allow Chrome.dll To Initialize. Disable The Stack Trace Database In GFlags.exe. Continue Chrome, Optionally Detaching The Debugger. Image GFlags.exe Settings For User Mode Stack Trace Database. If You Then Ever Suffer A Browser Memory Leak, You Can Snarf A Dump Of The Process With Umdh -p: > Chrome-browser-leak-umdh-dump.txt Which Can Then Typically Be "trivially" Analyzed To Find The Culprit. Miscellaneous Note That By Default Application Verifier Only Works With Non-official Builds Of Chromium. To Use Application Verifier On Official Builds You Need To Add --disable-features=RendererCodeIntegrity To Avoid Sandbox Crashes In Renderer Processes. See Crbug.com/1004989 For Details. See Also This Page. Application Verifier Is A Free Tool From Microsoft (available As Part Of The Windows SDK) That Can Be Used To Flush Out Programming Errors. Starting With M68 Application Verifier Can Be Enabled For Chrome.exe Without Needing To Disable The Sandbox. After Adding Chrome.exe To The List Of Applications To Be Stressed You Need To Expand The List Of Basics Checks And Disable The Leak Checks. You May Also Need To Disable Handles And Locks Checks Depending On Your Graphics Driver And Specific Chrome Version, But The Eventual Goal Is To Have Chrome Run With Handles And Locks Checks Enabled. When Bugs Are Found Chrome Will Trigger A Breakpoint So Running All Chrome Processes Under A Debugger Is Recommended. Chrome Will Run Much More Slowly Because Application Verifier Puts Every Heap Allocation On A Separate Page. Note That With PartitionAlloc Everywhere Most Chromium Allocations Don't Actually Go Through The Windows Heap And Are Therefore Unaffected By Application Verifier. You Can Check The Undocumented 'Cuzz' Checkbox In Application Verifier To Get The Windows Thread Scheduler To Add Some Extra Randomness In Order To Help Expose Race Conditions In Your Code. To Put A Breakpoint On CreateFile(), Add This Break Point: {,,kernel32.dll}_CreateFileW@28 {,,kernel32.dll} Specifies The DLL (context Operator). _ Prefix Means Extern "C". @28 Postfix Means _stdcall With The Stack Pop At The End Of The Function. I.e. The Number Of Arguments In BYTES. You Can Use DebugView From SysInternals Or Sawbuck To View LOG() Messages That Normally Go To Stderr On POSIX. at online marketplaces:


40Friden Adding Machine Adjustment Manual

By

This is an adjustment manual for Friden adding machines, models AB, ABY, AC, ACY, AF and AFY.

“Friden Adding Machine Adjustment Manual” Metadata:

  • Title: ➤  Friden Adding Machine Adjustment Manual
  • Author: ➤  
  • Language: English

“Friden Adding Machine Adjustment Manual” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 36.19 Mbs, the file-s for this book were downloaded 140 times, the file-s went public at Fri Jan 13 2023.

Available formats:
Additional Text PDF - Archive BitTorrent - DjVuTXT - Djvu XML - Image Container PDF - Item Tile - Metadata - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Friden Adding Machine Adjustment Manual at online marketplaces:


41Commodore 99 Adding Machine Instructions

By

Instruction booklet for a Commodore 9/9 adding machine. These machines were made by Commodore's West German subsidiary, Willy Feiler Zahl-Und Rechenwerke GMBH. Commodore purchased the Feiler plant in 1963 and sold it in 1966 so I'm dating this manual at 1963 which might not be exact. This document was generously scanned and contributed by Leonard Tramiel

“Commodore 99 Adding Machine Instructions” Metadata:

  • Title: ➤  Commodore 99 Adding Machine Instructions
  • Author: ➤  
  • Language: English

“Commodore 99 Adding Machine Instructions” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 7.09 Mbs, the file-s for this book were downloaded 131 times, the file-s went public at Fri Jun 11 2021.

Available formats:
Additional Text PDF - Archive BitTorrent - DjVuTXT - Djvu XML - Image Container PDF - Item Tile - Metadata - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Commodore 99 Adding Machine Instructions at online marketplaces:


42Hasbro Adding Machine Instructions

By

Instructions for the Hasbro Adding Machine, a toy adding machine made by Hasbro in the 1960s.

“Hasbro Adding Machine Instructions” Metadata:

  • Title: ➤  Hasbro Adding Machine Instructions
  • Author:

“Hasbro Adding Machine Instructions” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 1.95 Mbs, the file-s for this book were downloaded 36 times, the file-s went public at Fri Jul 19 2024.

Available formats:
Additional Text PDF - Archive BitTorrent - DjVuTXT - Djvu XML - Image Container PDF - Item Tile - Metadata - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Hasbro Adding Machine Instructions at online marketplaces:


43Adding Machine Maps And Minimal Sets For Iterated Function Systems

By

In this paper, we focus attention on extending the topological conjugacy of adding machine maps and minimal systems to iterated function systems. We provide necessary and sufficient conditions for an iterated function system to be conjugated to an adding machine map. It is proved that every minimal iterated function system which has some non-periodic regular point is semi-conjugate to an adding machine map. Furthermore, we investigate the topological conjugacy of an infinite family of tent maps, as well as the restriction of a map to its $\omega-$limit set with an iterated function system.

“Adding Machine Maps And Minimal Sets For Iterated Function Systems” Metadata:

  • Title: ➤  Adding Machine Maps And Minimal Sets For Iterated Function Systems
  • Author:

“Adding Machine Maps And Minimal Sets For Iterated Function Systems” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 0.19 Mbs, the file-s for this book were downloaded 18 times, the file-s went public at Fri Jun 29 2018.

Available formats:
Archive BitTorrent - Metadata - Text PDF -

Related Links:

Online Marketplaces

Find Adding Machine Maps And Minimal Sets For Iterated Function Systems at online marketplaces:


44How To Get The Most From Your New Lightning Adding Machine

By

How to get the most from your new Lightning Adding Machine 8-page stapled leaflet The Lightning Calculator was a mechanical calculator, made from 1921 till 1940 in Grand Rapids. From 1946 till 1959 it was made in Los Angeles and called the Lightning Adding Machine. In 1950 it was redesigned to have a clearing lever, and the carry mechanism was changed to allow subtraction. This is the small instruction leaflet included with this last version of the machine, though it seems hardly necessary given that subtraction is now so easy and the basic instructions are written on the front of the machine.

“How To Get The Most From Your New Lightning Adding Machine” Metadata:

  • Title: ➤  How To Get The Most From Your New Lightning Adding Machine
  • Author: ➤  
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 5.09 Mbs, the file-s for this book were downloaded 180 times, the file-s went public at Sat Jun 20 2020.

Available formats:
Abbyy GZ - Additional Text PDF - Archive BitTorrent - DjVuTXT - Djvu XML - Image Container PDF - Item Tile - Metadata - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP -

Related Links:

Online Marketplaces

Find How To Get The Most From Your New Lightning Adding Machine at online marketplaces:


45Alarm Clock Ticking; Alarm; Adding Machine; Typewriter (slow)

Digitized at 78 revolutions per minute. Four stylii were used to transfer this record. They are 2.0 mil truncated conical, 2.3 mil truncated conical, 2.8 mil truncated conical, 3.3 mil truncated conical. These were recorded flat and then also equalized with Turnover: 400.0, Rolloff: -12.0. The preferred versions suggested by an audio engineer at George Blood, L.P. have been copied to have the more friendly filenames. Matrix number: H9OB-3434-1 Catalog number: 4102-B Other IDs from the record include: (H9OB-3434); TJV-9244

“Alarm Clock Ticking; Alarm; Adding Machine; Typewriter (slow)” Metadata:

  • Title: ➤  Alarm Clock Ticking; Alarm; Adding Machine; Typewriter (slow)
  • Language: English

“Alarm Clock Ticking; Alarm; Adding Machine; Typewriter (slow)” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "audio" format, the size of the file-s is: 586.90 Mbs, the file-s for this book were downloaded 517 times, the file-s went public at Wed Jan 17 2018.

Available formats:
24bit Flac - Archive BitTorrent - Columbia Peaks - Item Image - Item Tile - JPEG - JPEG Thumb - Metadata - PNG - Spectrogram - TIFF - VBR MP3 - Whisper ASR JSON - ZIP -

Related Links:

Online Marketplaces

Find Alarm Clock Ticking; Alarm; Adding Machine; Typewriter (slow) at online marketplaces:


46The Adding Machine

By

Digitized at 78 revolutions per minute. Four stylii were used to transfer this record. They are 2.0 mil truncated conical, 2.3 mil truncated conical, 2.8 mil truncated conical, 3.3 mil truncated conical. These were recorded flat and then also equalized with Turnover: 400.0, Rolloff: -12.0. The preferred versions suggested by an audio engineer at George Blood, L.P. have been copied to have the more friendly filenames. Matrix number: H9OB-3434-1 Catalog number: 4102-B Other IDs from the record include: (H9OB-3434); TJV-9244

“The Adding Machine” Metadata:

  • Title: The Adding Machine
  • Author:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 338.86 Mbs, the file-s for this book were downloaded 16 times, the file-s went public at Tue Jul 08 2025.

Available formats:
Archive BitTorrent - Cloth Cover Detection Log - DjVuTXT - Djvu XML - Item Tile - JPEG Thumb - JSON - Log - Metadata - OCR Page Index - OCR Search Text - PNG - Page Numbers JSON - RePublisher Corrections Processing Log - Scandata - Single Page Original JP2 Tar - Single Page Processed JP2 ZIP - Text PDF - Title Page Detection Log - chOCR - hOCR -

Related Links:

Online Marketplaces

Find The Adding Machine at online marketplaces:


47Martin Teetor - Teetor Adding Machine Company

Martin Teetor designed and built the Teetor adding and subtracting machine, which was made by the Teetor Adding Machine Company.

“Martin Teetor - Teetor Adding Machine Company” Metadata:

  • Title: ➤  Martin Teetor - Teetor Adding Machine Company
  • Language: chi

“Martin Teetor - Teetor Adding Machine Company” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 1190.68 Mbs, the file-s for this book were downloaded 367 times, the file-s went public at Wed Mar 31 2021.

Available formats:
Archive BitTorrent - DjVuTXT - Djvu XML - Item Tile - JPEG Thumb - Metadata - OCR Page Index - OCR Search Text - PNG - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - Text PDF - ZIP - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Martin Teetor - Teetor Adding Machine Company at online marketplaces:


48Commodore 202 Adding Machine Manual

By

Commodore operators instruction manual for the model 202 adding machine. Also includes an addendum page with updated notes on the model 207 and 208 adding machines.

“Commodore 202 Adding Machine Manual” Metadata:

  • Title: ➤  Commodore 202 Adding Machine Manual
  • Author: ➤  
  • Language: English

“Commodore 202 Adding Machine Manual” Subjects and Themes:

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 11.64 Mbs, the file-s for this book were downloaded 35 times, the file-s went public at Sat May 31 2025.

Available formats:
Additional Text PDF - Archive BitTorrent - DjVuTXT - Djvu XML - Image Container PDF - Item Tile - Metadata - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Commodore 202 Adding Machine Manual at online marketplaces:


49On P-adic Integers And The Adding Machine Group

By

In this paper, we define a natural metric on Aut(X*) and prove that the closure of the adding machine group, a subgroup of the automorphism group, is both isometric and isomorphic to the group of p-adic integers. So, we show that the group of p-adic integers can be isometrically embedded into the metric space Aut(X*).

“On P-adic Integers And The Adding Machine Group” Metadata:

  • Title: ➤  On P-adic Integers And The Adding Machine Group
  • Authors:
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 3.20 Mbs, the file-s for this book were downloaded 209 times, the file-s went public at Sat Jul 20 2013.

Available formats:
Abbyy GZ - Animated GIF - Archive BitTorrent - DjVu - DjVuTXT - Djvu XML - Item Tile - Metadata - Scandata - Single Page Processed JP2 ZIP - Text PDF -

Related Links:

Online Marketplaces

Find On P-adic Integers And The Adding Machine Group at online marketplaces:


50Dalton Adding MacHine Co. V. Virginia Ex Rel. State Corporation Comm'n, 246 U.S. 498 (1918) (No. 176)

By

Case name: Dalton Adding MacHine Co. v. Virginia Ex Rel. State Corporation Comm'n Opinion filed: 1918-04-15 Docket No.: 176 Citations: • 246 U.S. 498 • 38 S. Ct. 361 • 62 L. Ed. 851 • 1918 U.S. LEXIS 1568

“Dalton Adding MacHine Co. V. Virginia Ex Rel. State Corporation Comm'n, 246 U.S. 498 (1918) (No. 176)” Metadata:

  • Title: ➤  Dalton Adding MacHine Co. V. Virginia Ex Rel. State Corporation Comm'n, 246 U.S. 498 (1918) (No. 176)
  • Author: ➤  
  • Language: English

Edition Identifiers:

Downloads Information:

The book is available for download in "texts" format, the size of the file-s is: 776.25 Mbs, the file-s for this book were downloaded 3 times, the file-s went public at Wed Jul 23 2025.

Available formats:
AVIF Thumbnails ZIP - Archive BitTorrent - DjVuTXT - Djvu XML - Item Image - Item Tile - Metadata - Micro Cards Data JSON - Micro Cards JP2 ZIP - OCR Page Index - OCR Search Text - Page Numbers JSON - Scandata - Single Page Processed JP2 ZIP - Text PDF - chOCR - hOCR -

Related Links:

Online Marketplaces

Find Dalton Adding MacHine Co. V. Virginia Ex Rel. State Corporation Comm'n, 246 U.S. 498 (1918) (No. 176) at online marketplaces:


Source: LibriVox

LibriVox Search Results

Available audio books for downloads from LibriVox

1Frithiof Saga

By

Book's cover

Iceland is the home of the Saga, a form of literature which includes the telling of the story of a hero’s life and adventures in a fixed, regular form, and which is usually intended for recitation, though the Saga is never set in the customary versified style of poetry. A large number of these Sagas, relating to Iceland, Greenland, North America, and the Norse countries, still remain, and among them the Frithiof Saga, narrating the stirring adventures of that hero of the Northland and Viking of its seas, is one of the most beautiful. Its subject is noble, heroic, and free from exaggerated description or overwrought sentiment. Frithiof is a splendid type of the old Norse hero, invincible in battle upon the land, fearless of Nature’s wrath as he sails the seas in his dragon ship, impulsive yet just, swift in punishment yet quick in forgiveness. The central motives of the Saga are his love for King Bele’s daughter, Ingeborg; the refusal of her brothers to sanction their marriage because the hero is not of royal birth; her unwilling marriage to the old King Ring; Frithiof’s exile, and his final union with Ingeborg after the death of her husband and reconciliation with her brother. Interwoven with the narrative itself, which is full of dramatic situations, are some of the old myths, than which none is more beautiful than the death of the gentle god Balder. The very breath of the North sweeps through the stately story which the German author has told with so much skill. Those who wish to come in closer contact with the Saga itself can do so by consulting Bishop Tegner’s masterly translation. - Summary by George Upton

“Frithiof Saga” Metadata:

  • Title: Frithiof Saga
  • Author:
  • Language: English
  • Publish Date:

Edition Specifications:

  • Format: Audio
  • Number of Sections: 21
  • Total Time: 02:12:59

Edition Identifiers:

Links and information:

  • LibriVox Link:
  • Text Source: - Download text file/s.
  • Number of Sections: 21 sections

Online Access

Download the Audio Book:

  • File Name: frithiof_saga_1910_librivox
  • File Format: zip
  • Total Time: 02:12:59
  • Download Link: Download link

Online Marketplaces

Find Frithiof Saga at online marketplaces:


2Gudrun

By

Book's cover

The charming story of “Gudrun” is a romance of the old heroic period, written by some unknown poet of Austria or Bavaria in the thirteenth century. Next to the "Nibelungen Lied," it is the most important of the German epic poems...The same elemental passions are depicted. The men are brave, vigorous heroes, rejoicing in battle and feats of prowess; the women are beautiful, constant, and courageous. There are many fine delineations of character in the original, as well as vigorous sketches of northern scenery. The figure of Gudrun stands out in bold relief among the maidens. There are few more beautiful characters, indeed, in the poems of the old heroic period...Gudrun’s name is always spoken by her people with reverence. "Her courage and constancy were extolled by them, and in after days her fame was as radiant as the stars in the heavens." (George P. Upton, Translator's Preface)

“Gudrun” Metadata:

  • Title: Gudrun
  • Author:
  • Language: English
  • Publish Date:

Edition Specifications:

  • Format: Audio
  • Number of Sections: 24
  • Total Time: 02:21:30

Edition Identifiers:

Links and information:

  • LibriVox Link:
  • Text Source: - Download text file/s.
  • Number of Sections: 24 sections

Online Access

Download the Audio Book:

  • File Name: gudrun_1912_librivox
  • File Format: zip
  • Total Time: 02:21:30
  • Download Link: Download link

Online Marketplaces

Find Gudrun at online marketplaces:


3George Washington

By

Book's cover

Among all the numerous life stories written by Ferdinand Schmidt for the delectation and education of German youth, none surpasses that of Washington. The author has condensed his material, drawn from the most authoritative sources, in a masterly manner, and presents it in a very attractive form. He has accompanied it by moralization which is pertinent, but never becomes tedious. It is questionable, indeed, whether any story of Washington’s life written for young people excels Schmidt’s in accuracy, conciseness, and general interest. As such this sketch of the Father of his Country from a German point of view is commended to American youth. -- Translator's Preface - Summary by George P. Upton

“George Washington” Metadata:

  • Title: George Washington
  • Author:
  • Language: English
  • Publish Date:

Edition Specifications:

  • Format: Audio
  • Number of Sections: 19
  • Total Time: 03:36:20

Edition Identifiers:

Links and information:

  • LibriVox Link:
  • Text Source: - Download text file/s.
  • Number of Sections: 19 sections

Online Access

Download the Audio Book:

  • File Name: george_washington_1912_librivox
  • File Format: zip
  • Total Time: 03:36:20
  • Download Link: Download link

Online Marketplaces

Find George Washington at online marketplaces:


Buy “Adding Machine” online:

Shop for “Adding Machine” on popular online marketplaces.