From 25369dcfcbc11d6e0f00514d24d30da48ff6c591 Mon Sep 17 00:00:00 2001 From: Razvan Deaconescu Date: Sat, 22 Mar 2025 12:40:59 +0200 Subject: [PATCH 1/4] README: Improve description of helloworld task Improve description of task to create Markdown file from PDF contents. Signed-off-by: Razvan Deaconescu --- README.md | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index bbbf366..260eb01 100644 --- a/README.md +++ b/README.md @@ -177,11 +177,17 @@ Create the `helloworld.md` file that will generate that precise GitHub view. Make sure you do the following: 1. Start by creating a branch where you do your work. + Use `helloworld` for the branch name: + + ```console + git checkoout -b helloworld + ``` + This will be the branch **from** where you will create a pull request. As usual, the future pull request will target your assigned branch in the [upstream repository](https://github.com/rosedu/workshop-markdown). 1. Copy-paste contents from the PDF file. - Do not write programs by hand. + Open the `helloworld-print.pdf` file in a PDF viewer, select text, copy in the `helloworld.md` file. 1. Use correct syntax items for typewriter format, links to sections, code snippet format, tables. See [the GitHub Markdown spec](https://github.github.com/gfm/). @@ -195,21 +201,18 @@ Make sure you do the following: After each push, check the GitHub view of the work branch in your fork of the GitHub repository. -1. After completing the task, submit the `helloworld.md` Markdown file as part of a pull request. - -Follow the instructions above to create the pull request. -Make sure you have good commit messages and a good pull request description. + Check the contents of the `helloworld.md` file on your GitHub fork and see if it is now rendered correctly. -Target the pull request **to** your assigned branch. +1. After completing the task, submit the `helloworld.md` Markdown file as part of a pull request. -Ask the instructors to review your pull request. -Make updates as required. -Have your pull request approved and merged on top of your assigned branch. + Follow the instructions above to create the pull request. + Make sure you have good commit messages and a good pull request description. -Check the GitHub web view of the [upstream repository](https://github.com/rosedu/workshop-markdown) for your assigned branch. -Click on the button with `main` (the branch button) and select your branch. + Target the pull request **to** your assigned branch. -Check the contents of the `helloworld.md` file and see if it is now rendered correctly. +1. Ask the instructors to review your pull request. + Make updates as required. + Have your pull request approved and merged on top of your assigned branch. ### Clean Up After Pull Request From 2ce97469fd9914232f2087b53082bb465cdfefd4 Mon Sep 17 00:00:00 2001 From: AntonieValentin Date: Fri, 24 Oct 2025 21:47:50 +0300 Subject: [PATCH 2/4] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 260eb01..6ab48c8 100644 --- a/README.md +++ b/README.md @@ -180,7 +180,7 @@ Make sure you do the following: Use `helloworld` for the branch name: ```console - git checkoout -b helloworld + git checkout -b helloworld ``` This will be the branch **from** where you will create a pull request. From 63b82f748e8a1d22820bf6329f079560aa46da51 Mon Sep 17 00:00:00 2001 From: andreeazdranc Date: Sat, 25 Oct 2025 11:25:44 +0300 Subject: [PATCH 3/4] [UPDATE] probleme rezolvate dynamic-linking.md --- dynamic-linking.ro.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dynamic-linking.ro.md b/dynamic-linking.ro.md index 3630d63..a12e85c 100644 --- a/dynamic-linking.ro.md +++ b/dynamic-linking.ro.md @@ -13,9 +13,9 @@ Diferența este că acum, folosim linkare dinamică în loc de linkare statică Pentru aceasta, am renunțat la argumentul `-static` folosit la linkare. Pentru acest exemplu, obținem un singur executabil `main`, din legarea statică cu biblioteca `libinc.a` și legarea dinamică cu biblioteca standard C. -Similar exemplului din directorul `05-static/, folosim comanda `make` pentru a obține executabilul `main`: +Similar exemplului din directorul `05-static/`, folosim comanda `make` pentru a obține executabilul `main`: -```console +```bash [..]/06-dynamic$ ls inc.c inc.h main.c Makefile @@ -39,15 +39,15 @@ main: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically link [..]/06-dynamic$ file ../05-static/main ../05-static/main: ELF 32-bit LSB executable, Intel 80386, version 1 (GNU/Linux), statically linked, for GNU/Linux 3.2.0, BuildID[sha1]=60adf8390374c898998c0b713a8b1ea0c255af38, not stripped -`` +``` Fișierul executabil `main` obținut prin linkare dinamică are un comportament identic fișierului executabil `main` obținut prin linkare statică. Observăm că dimensiunea sa este mult mai redusă: ocupă `7 KB` comparativ cu `600 KB` cât avea varianta sa statică. -De asemenea, folosind utilitarul `file`, aflăm că este executabil obținut prin linkare dinamică (*dynamically linked*), în vreme cel obținut în exemplul anterior este executabil obținut prin linkare statică (*statically linked). +De asemenea, folosind utilitarul `file`, aflăm că este executabil obținut prin linkare dinamică (*dynamically linked*), în vreme cel obținut în exemplul anterior este executabil obținut prin linkare statică (*statically linked*). Investigăm simbolurile executabilului: -```console +```bash [..]/06-dynamic$ nm main [...] 0804848c T increment @@ -66,7 +66,7 @@ Investigăm simbolurile executabilului: Simbolurile obținute din modulul obiect `main.o` și din biblioteca statică `libinc.o` sunt rezolvate și au adrese stabilite. Observăm că folosirea bibliotecii standard C a dus la existența simboblului `_start`, care este entry pointul programului. -Dar, simbolurile din biblioteca standard C, (`printf`, __libc_start_main`) sunt marcate ca nedefinite (`U`). +Dar, simbolurile din biblioteca standard C, (`printf`, `__libc_start_main`) sunt marcate ca nedefinite (U). Aceste simboluri nu sunt prezente în executabil: rezolvarea, stabilirea adreselor și relocarea lor se va realiza mai târziu, la încărcare (load time). La încărcare, o altă componentă software a sistemului, loaderul / linkerul dinamic, se va ocupa de: @@ -77,7 +77,7 @@ La încărcare, o altă componentă software a sistemului, loaderul / linkerul d Putem investiga bibliotecile dinamice folosite de un executabil prin intermediul utilitarului `ldd`: -``console +```bash [..]/06-dynamic$ ldd main linux-gate.so.1 (0xf7f97000) libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf7d8a000) @@ -112,7 +112,7 @@ Pentru aceasta, construim fișierul bibliotecă partajată `libinc.so`, în locu Similar exemplului din directorul `06-dynamic/`, folosim comanda `make` pentru a obține executabilul `main`: -```console +```bash [..]/07-dynlib$ ls inc.c inc.h main.c Makefile From 14b404547f41c60e772279214eab4030faa1c54f Mon Sep 17 00:00:00 2001 From: andreeazdranc Date: Sat, 25 Oct 2025 12:16:11 +0300 Subject: [PATCH 4/4] Add Hello World Markdown and image --- helloworld.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 helloworld.md diff --git a/helloworld.md b/helloworld.md new file mode 100644 index 0000000..e69de29